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.



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

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.



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

def always_in_partial_mode_list
  @always_in_partial_mode_list
end

#attribute_listObject (readonly)

Returns the value of attribute attribute_list.



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

def attribute_list
  @attribute_list
end

#default_full_modeObject

Returns the value of attribute default_full_mode.



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

def default_full_mode
  @default_full_mode
end

#parent_attribute_configObject

Returns the value of attribute parent_attribute_config.



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

def parent_attribute_config
  @parent_attribute_config
end

Instance Method Details

#add_attribute(attribute) ⇒ Object



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

def add_attribute(attribute)
  attribute_list << attribute
end

#all_attributesObject



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

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

#always_in_partial_mode(attribute) ⇒ Object



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

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

#attributesObject



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

def attributes
  attribute_list.to_a
end

#is_always_in_partial_mode?(attribute) ⇒ Boolean

Returns:

  • (Boolean)


493
494
495
# File 'lib/artirix_data_models/model.rb', line 493

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



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

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