Class: ArtirixDataModels::Model::AttributeConfig

Inherits:
Object
  • Object
show all
Defined in:
lib/artirix_data_models/model.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeAttributeConfig

Returns a new instance of AttributeConfig.



462
463
464
465
466
467
# File 'lib/artirix_data_models/model.rb', line 462

def initialize
  @attribute_list              = Set.new
  @always_in_partial_mode_list = Set.new
  @parent_attribute_config     = nil
  @default_full_mode           = false
end

Instance Attribute Details

#always_in_partial_mode_listObject (readonly)

Returns the value of attribute always_in_partial_mode_list.



459
460
461
# File 'lib/artirix_data_models/model.rb', line 459

def always_in_partial_mode_list
  @always_in_partial_mode_list
end

#attribute_listObject (readonly)

Returns the value of attribute attribute_list.



459
460
461
# File 'lib/artirix_data_models/model.rb', line 459

def attribute_list
  @attribute_list
end

#default_full_modeObject

Returns the value of attribute default_full_mode.



460
461
462
# File 'lib/artirix_data_models/model.rb', line 460

def default_full_mode
  @default_full_mode
end

#parent_attribute_configObject

Returns the value of attribute parent_attribute_config.



460
461
462
# File 'lib/artirix_data_models/model.rb', line 460

def parent_attribute_config
  @parent_attribute_config
end

Instance Method Details

#add_attribute(attribute) ⇒ Object



477
478
479
# File 'lib/artirix_data_models/model.rb', line 477

def add_attribute(attribute)
  attribute_list << attribute
end

#all_attributesObject



473
474
475
# File 'lib/artirix_data_models/model.rb', line 473

def all_attributes
  Array(parent_attribute_config.try(:attributes)) + attributes
end

#always_in_partial_mode(attribute) ⇒ Object



481
482
483
# File 'lib/artirix_data_models/model.rb', line 481

def always_in_partial_mode(attribute)
  @always_in_partial_mode_list << (attribute.to_s)
end

#attributesObject



469
470
471
# File 'lib/artirix_data_models/model.rb', line 469

def attributes
  attribute_list.to_a
end

#is_always_in_partial_mode?(attribute) ⇒ Boolean

Returns:

  • (Boolean)


489
490
491
# File 'lib/artirix_data_models/model.rb', line 489

def is_always_in_partial_mode?(attribute)
  @always_in_partial_mode_list.include?(attribute.to_s) || parent_attribute_config.try(:is_always_in_partial_mode?, attribute)
end

#remove_always_in_partial_mode(attribute) ⇒ Object



485
486
487
# File 'lib/artirix_data_models/model.rb', line 485

def remove_always_in_partial_mode(attribute)
  @always_in_partial_mode_list.delete attribute.to_s
end