class OTRS::GeneralCatalog

Attributes

change_by[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

change_time[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

comment[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

create_by[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

create_time[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

item_id[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

name[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

valid_id[RW]

Really recommend reading OTRS API Documentation for the GeneralCatalog

Public Class Methods

class_list(name='') click to toggle source

Name variable filters the full classlist down so you can get just what you wanted

# File lib/otrs_connector/otrs/general_catalog.rb, line 74
def self.class_list(name='')
  data = { }
  params = { :object => 'GeneralCatalogObject', :method => 'ClassList', :data => data }
  items = connect(params).first
  items.collect{ |i| i if i[name] }.compact
end
find(id) click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 32
def self.find(id)
  data = { 'ItemID' => id }
  params = { :object => 'GeneralCatalogObject', :method => 'ItemGet', :data => data }
  a = connect(params)
  unless a.first.nil?
    a = a.first.except('Class') ## Class field is causing issues in Rails
  end
  self.new(a)
end
item_list(name) click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 42
def self.item_list(name)
  data = { :Class => name, :Valid => 1 }
  params = { :object => 'GeneralCatalogObject', :method => 'ItemList', :data => data }
  a = connect(params).first
  #b = []
  #unless a.nil?
  #  a.each do |key,value|
  #    b << self.find(key)
  #  end
  #  self.superclass::Relation.new(b)
  #end
end
item_list_fast(name) click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 55
def self.item_list_fast(name)
  data = { :Class => name, :Valid => 1 }
  params = { :object => 'GeneralCatalogObject', :method => 'ItemList', :data => data }
  a = connect(params).first
end
new(attributes = {}) click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 13
def initialize(attributes = {})
  attributes.each do |name, value|
    self.class.set_accessor(name.to_s.underscore)
    send("#{name.to_s.underscore.to_sym}=", value)
  end
end
set_accessor(key) click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 5
def self.set_accessor(key)
  attr_accessor key.to_sym
end

Public Instance Methods

attributes() click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 20
def attributes
  attributes = {}
  self.instance_variables.each do |v|
    attributes[v.to_s.gsub('@','').to_sym] = self.instance_variable_get(v)
  end
  attributes
end
item_list() click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 61
def item_list
  data = { :Class => self.name }
  params = { :object => 'GeneralCatalogObject', :method => 'ItemList', :data => data }
  a = connect(params)
  unless a.nil? then a = a.first end
  b = []
  a.each do |key,value|
    b << self.find(key)
  end
  self.superclass::Relation.new(b)
end
persisted?() click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 9
def persisted?
  false
end
save() click to toggle source
# File lib/otrs_connector/otrs/general_catalog.rb, line 28
def save
  self.create(self.attributes)
end