lib/netsuite/field_support.rb in netsuite-0.0.4 vs lib/netsuite/field_support.rb in netsuite-0.0.5
- old
+ new
@@ -1,35 +1,17 @@
module NetSuite
module FieldSupport
+ include AttributeSupport
def self.included(base)
base.send(:extend, ClassMethods)
end
- def initialize(attributes = {})
- attributes = attributes.inject({}) do |hash, (k,v)|
- if k.to_s.match(/@.+/)
- hash.store(k.to_s.delete('@').to_sym, attributes[k])
- else
- hash.store(k,v)
- end
- hash
- end
- Hash[attributes.select { |k,v| self.class.fields.include?(k) }].each do |k,v|
- send("#{k}=", v)
- end
- end
-
- def attributes
- @attributes ||= {}
- end
- private :attributes
-
module ClassMethods
def fields(*args)
if args.empty?
- @fields
+ @fields ||= {}
else
args.each do |arg|
field arg
end
end