Class: KalibroClient::Entities::Configurations::MetricConfiguration

Inherits:
Base
  • Object
show all
Defined in:
lib/kalibro_client/entities/configurations/metric_configuration.rb

Instance Attribute Summary collapse

Attributes included from DateAttributes

#created_at, #updated_at

Attributes inherited from Base

#kalibro_errors, #persisted

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

address

Methods inherited from Base

#==, create, create_array_from_hash, create_objects_array_from_hash, #destroy, #initialize, request, #save, #save!, to_object, to_objects_array, #update

Methods included from RequestMethods::ClassMethods

#exists_action, #find_action, #id_params

Methods included from HashConverters

#convert_to_hash, #date_with_milliseconds, #field_to_hash

Methods included from XMLConverters

#get_xml, #xml_instance_class_name

Methods included from RequestMethods

#destroy_action, #destroy_params, #destroy_prefix, #save_action, #save_prefix, #update_params, #update_prefix

Constructor Details

This class inherits a constructor from KalibroClient::Entities::Base

Instance Attribute Details

#aggregation_formObject

Returns the value of attribute aggregation_form.



22
23
24
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 22

def aggregation_form
  @aggregation_form
end

#idObject

Returns the value of attribute id.



22
23
24
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 22

def id
  @id
end

#kalibro_configuration_idObject

Returns the value of attribute kalibro_configuration_id.



22
23
24
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 22

def kalibro_configuration_id
  @kalibro_configuration_id
end

#metricObject

Returns the value of attribute metric.



22
23
24
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 22

def metric
  @metric
end

#reading_group_idObject

Returns the value of attribute reading_group_id.



22
23
24
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 22

def reading_group_id
  @reading_group_id
end

#weightObject

Returns the value of attribute weight.



22
23
24
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 22

def weight
  @weight
end

Class Method Details

.exists?(id) ⇒ Boolean

Returns:

  • (Boolean)


81
82
83
84
85
86
87
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 81

def self.exists?(id)
  begin
    return true unless find(id).nil?
  rescue KalibroClient::Errors::RecordNotFound
    return false
  end
end

.find(id) ⇒ Object



71
72
73
74
75
76
77
78
79
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 71

def self.find(id)
  begin
    metric_configuration = request(':id', {id: id}, :get)
    return new(metric_configuration['metric_configuration'], true)
  #FIXME Temporary until KalibroProcessor returns proper http statuses
  rescue KalibroClient::Errors::RequestError
    raise KalibroClient::Errors::RecordNotFound
  end
end

.metric_configurations_of(configuration_id) ⇒ Object



67
68
69
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 67

def self.metric_configurations_of(configuration_id)
  create_objects_array_from_hash(request('', {}, :get, "kalibro_configurations/#{configuration_id}"))
end

Instance Method Details

#kalibro_rangesObject



89
90
91
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 89

def kalibro_ranges
  KalibroClient::Entities::Configurations::KalibroRange.create_objects_array_from_hash(self.class.request(':id/kalibro_ranges', {id: id}, :get))
end

#to_hashObject



63
64
65
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 63

def to_hash
  super :except => [:configuration_id]
end

#update_attributes(attributes = {}) ⇒ Object



58
59
60
61
# File 'lib/kalibro_client/entities/configurations/metric_configuration.rb', line 58

def update_attributes(attributes={})
  attributes.each { |field, value| send("#{field}=", value) if self.class.is_valid?(field) }
  save
end