class Occi::Core::Categories

Attributes

model[RW]

Public Class Methods

new(categories=[]) click to toggle source
Calls superclass method
# File lib/occi/core/categories.rb, line 10
def initialize(categories=[])
  categories.collect! { |category| convert category } if categories
  super categories
end

Public Instance Methods

<<(category) click to toggle source
Calls superclass method
# File lib/occi/core/categories.rb, line 15
def <<(category)
  category = convert(category)
  category.model = @model if @model && !category.kind_of?(String)

  super(category)
end
as_json(options={}) click to toggle source

@param [Hash] options @return [Hashie::Mash] json representation

# File lib/occi/core/categories.rb, line 44
def as_json(options={})
  self.to_a.as_json
end
check() click to toggle source
# File lib/occi/core/categories.rb, line 48
def check
  each { |category| category.check }
end
join(separator) click to toggle source
# File lib/occi/core/categories.rb, line 22
def join(separator)
  self.to_a.join(separator)
end
model=(model) click to toggle source

@param [Occi::Model] model @return [Occi::Model]

# File lib/occi/core/categories.rb, line 36
def model=(model)
  @model = model
  each { |category| category.model = model }
  collect! { |category| model.get_by_id(category.to_s) || category }
end

Private Instance Methods

convert(category) click to toggle source
# File lib/occi/core/categories.rb, line 54
def convert(category)
  if category.kind_of?(String) && @model
    @model.get_by_id(category) || category
  else
    category
  end
end