Sha256: a68334d58ff684b2023f64c6c887a6c1dd05c9b9745910bbd67eb816bbdb771a
Contents?: true
Size: 1.08 KB
Versions: 1
Compression:
Stored size: 1.08 KB
Contents
module Economic class EntityProxy class << self # Returns the class this Proxy is a proxy for def entity_class Entity end end include Enumerable attr_reader :owner, :items def initialize(owner) @owner = owner @items = [] end def session owner.session end # Returns a new, unpersisted Economic::Entity def build(properties = {}) entity = self.class.entity_class.new(:session => session) entity.update_properties(properties) entity.partial = false entity end # Gets data for Entity from the API def find(number) entity_hash = session.request self.class.entity_class.soap_action(:get_data) do soap.body = { 'entityHandle' => { 'Number' => number } } end entity = build(entity_hash) entity.persisted = true entity end # Add item to proxy def <<(item) items << item end def each items.each { |i| yield i } end def empty? items.empty? end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rconomic-0.1.0 | lib/economic/proxies/entity_proxy.rb |