Class: Fog::Compute::Ecloud::InternetServices
- Inherits:
-
Ecloud::Collection
- Object
- Array
- Fog::Collection
- Ecloud::Collection
- Fog::Compute::Ecloud::InternetServices
- Defined in:
- lib/rackspace-fog/ecloud/models/compute/internet_services.rb
Instance Attribute Summary
Attributes inherited from Fog::Collection
Instance Method Summary collapse
Methods inherited from Ecloud::Collection
Methods inherited from Fog::Collection
#clear, #destroy, #initialize, #inspect, #load, model, #model, #new, #reload, #table, #to_json
Methods included from Attributes::ClassMethods
#_load, #aliases, #attribute, #attributes, #identity, #ignore_attributes, #ignored_attributes
Methods included from Attributes::InstanceMethods
#_dump, #attributes, #dup, #identity, #identity=, #merge_attributes, #new_record?, #requires, #requires_one
Constructor Details
This class inherits a constructor from Fog::Collection
Instance Method Details
#all ⇒ Object
12 13 14 15 16 17 18 19 |
# File 'lib/rackspace-fog/ecloud/models/compute/internet_services.rb', line 12 def all data = connection.get_internet_services(href).body[:InternetServices] if data.is_a?(Hash) load(data[:InternetService]) elsif data.is_a?(String) && data.empty? load([]) end end |
#create(options) ⇒ Object
29 30 31 32 33 34 35 36 37 38 |
# File 'lib/rackspace-fog/ecloud/models/compute/internet_services.rb', line 29 def create() [:uri] = "/cloudapi/ecloud/internetServices/publicIps/#{public_ip_id}/action/createInternetService" [:protocol] ||= "TCP" [:enabled] ||= true [:description] ||= "" [:persistence] ||= {} [:persistence][:type] ||= "None" data = connection.internet_service_create().body object = new(data) end |
#get(uri) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/rackspace-fog/ecloud/models/compute/internet_services.rb', line 21 def get(uri) if data = connection.get_internet_service(uri) new(data.body) end rescue Fog::Errors::NotFound nil end |
#public_ip_id ⇒ Object
40 41 42 |
# File 'lib/rackspace-fog/ecloud/models/compute/internet_services.rb', line 40 def public_ip_id href.scan(/\d+/)[0] end |