Method: CFoundry::V1::Client#services

Defined in:
lib/cfoundry/v1/client.rb

#services(options = {}) ⇒ Object

Retrieve available services.



117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# File 'lib/cfoundry/v1/client.rb', line 117

def services(options = {})
  services = []

  @base.system_services.each do |type, vendors|
    vendors.each do |vendor, providers|
      providers.each do |provider, properties|
        properties.each do |_, meta|
          meta[:supported_versions].each do |ver|
            state = meta[:version_aliases].find { |k, v| v == ver }

            services <<
              Service.new(vendor.to_s, ver.to_s, meta[:description],
                          type.to_s, provider.to_s, state && state.first,
                          generate_plans(meta))
          end
        end
      end
    end
  end

  services
end