Module: Adparlor::Facebook::GraphApi::Fields::FieldDecorator::ClassMethods
- Defined in:
- lib/adparlor/facebook/graph_api/fields/field_decorator.rb
Instance Method Summary collapse
- #field_attrs(fields) ⇒ Object
- #fields(*args) ⇒ Object
- #validate_initialize_fields(*args) ⇒ Object
- #validate_post_fields(*args, method) ⇒ Object
Instance Method Details
#field_attrs(fields) ⇒ Object
36 37 38 39 |
# File 'lib/adparlor/facebook/graph_api/fields/field_decorator.rb', line 36 def field_attrs(fields) @fields = fields @fields.each { |field| attr_accessor field } end |
#fields(*args) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/adparlor/facebook/graph_api/fields/field_decorator.rb', line 13 def fields(*args) if args.first == :all @fields.map(&:to_s).join(',') else invalid_fields = args.map(&:to_s) - @fields.map(&:to_s) invalid_fields_error(invalid_fields) if invalid_fields.any? (@fields & args).map(&:to_s).join(',') end end |
#validate_initialize_fields(*args) ⇒ Object
23 24 25 26 27 |
# File 'lib/adparlor/facebook/graph_api/fields/field_decorator.rb', line 23 def validate_initialize_fields(*args) create_fields = self.const_defined?('CREATE_FIELDS') ? const_get('CREATE_FIELDS') : [] invalid_fields = args.map(&:to_s) - ((@fields || []) + GLOBAL_FIELDS + create_fields).map(&:to_s) invalid_fields_error(invalid_fields) if invalid_fields.any? end |
#validate_post_fields(*args, method) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/adparlor/facebook/graph_api/fields/field_decorator.rb', line 29 def validate_post_fields(*args, method) valid_fields = self.const_defined?('CREATE_FIELDS') ? const_get('CREATE_FIELDS') : [] if method == 'CREATE' valid_fields = self.const_defined?('UPDATE_FIELDS') ? const_get('UPDATE_FIELDS') : [] if method == 'UPDATE' || method == 'DELETE' invalid_fields = args.map(&:to_s) - (@fields + GLOBAL_FIELDS + valid_fields).map(&:to_s) invalid_fields_error(invalid_fields) if invalid_fields.any? end |