Sha256: 3198372d7edc82b2ce5611356c90019f43dc0cfea35dd7849ef666013bbbc2b4

Contents?: true

Size: 1023 Bytes

Versions: 3

Compression:

Stored size: 1023 Bytes

Contents

module Fog
  module Compute
    class Cloudstack

      class Real
        # Lists all public ip addresses
        #
        # {CloudStack API Reference}[http://cloudstack.apache.org/docs/api/apidocs-4.4/root_admin/listPublicIpAddresses.html]
        def list_public_ip_addresses(*args)
          options = {}
          if args[0].is_a? Hash
            options = args[0]
            options.merge!('command' => 'listPublicIpAddresses')
          else
            options.merge!('command' => 'listPublicIpAddresses')
          end

          # add project id if we have one
          @cloudstack_project_id ? options.merge!('projectid' => @cloudstack_project_id) : nil

          request(options)
        end
      end

      class Mock
        def list_public_ip_addresses(*arg)
          public_ip_addresses = self.data[:public_ip_addresses]
          { "listpublicipaddressesresponse" => { "count"=> public_ip_addresses.count, "publicipaddress"=> public_ip_addresses.values } }
        end
      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fog-1.29.0 lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb
fog-1.28.0 lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb
fog-1.27.0 lib/fog/cloudstack/requests/compute/list_public_ip_addresses.rb