lib/cfoundry/v2/model.rb in cfoundry-0.3.6 vs lib/cfoundry/v2/model.rb in cfoundry-0.3.7

- old
+ new

@@ -41,11 +41,11 @@ define_method(:"#{name}=") { |x| @manifest ||= {} @manifest[:entity] ||= {} @manifest[:entity][:"#{name}_guid"] = - @diff[:"#{name}_guid"] = x.id + @diff[:"#{name}_guid"] = x.guid } end def to_many(plural, opts = {}) singular = plural.to_s.sub(/s$/, "").to_sym @@ -72,46 +72,46 @@ # TODO: these are hacky define_method(:"add_#{singular}") { |x| @client.base.request_path( :put, - ["v2", "#{object_name}s", @id, plural, x.id], + ["v2", "#{object_name}s", @guid, plural, x.guid], nil => :json) } define_method(:"remove_#{singular}") { @client.base.request_path( :delete, - ["v2", "#{object_name}s", @id, plural, x.id], + ["v2", "#{object_name}s", @guid, plural, x.guid], nil => :json) } define_method(:"#{plural}=") { |xs| @manifest ||= {} @manifest[:entity] ||= {} @manifest[:entity][:"#{singular}_guids"] = - @diff[:"#{singular}_guids"] = xs.collect(&:id) + @diff[:"#{singular}_guids"] = xs.collect(&:guid) } end end - attr_reader :id + attr_reader :guid - def initialize(id, client, manifest = nil) - @id = id + def initialize(guid, client, manifest = nil) + @guid = guid @client = client @manifest = manifest @diff = {} end def manifest # inline depth of 2 for fewer requests - @manifest ||= @client.base.send(object_name, @id, 2) + @manifest ||= @client.base.send(object_name, @guid, 2) end def inspect - "\#<#{self.class.name} '#@id'>" + "\#<#{self.class.name} '#@guid'>" end def object_name @object_name ||= self.class.name.split("::").last.gsub( @@ -123,36 +123,36 @@ @manifest = @client.base.send( :"create_#{object_name}", self.class.defaults.merge(@manifest[:entity])) - @id = @manifest[:metadata][:guid] + @guid = @manifest[:metadata][:guid] true end def update!(diff = @diff) - @client.base.send(:"update_#{object_name}", @id, diff) + @client.base.send(:"update_#{object_name}", @guid, diff) @manifest = nil end def delete! - @client.base.send(:"delete_#{object_name}", @id) + @client.base.send(:"delete_#{object_name}", @guid) if @manifest @manifest.delete :metadata end end def exists? - @client.base.send(object_name, @id) + @client.base.send(object_name, @guid) true rescue CFoundry::APIError # TODO: NotFound would be better false end def ==(other) - other.is_a?(self.class) && @id == other.id + other.is_a?(self.class) && @guid == other.guid end end end