Module: Rudy::Metadata::ClassMethods
Overview
These methods are common to all plural metadata classes: Rudy::Machines, Rudy::Disks, Rudy::Backups, etc…
Instance Method Summary
collapse
Methods included from Huxtable
config, config_dirname, create_domain, current_group_name, current_machine_address, current_machine_bucket, current_machine_count, current_machine_group, current_machine_hostname, current_machine_image, current_machine_name, current_machine_os, current_machine_size, current_machine_user, current_user_keypairname, current_user_keypairpath, defined_keypairpath, domain, domain_exists?, global, keypair_path_to_name, known_machine_group?, ld, ld, le, le, li, li, logger, reset_config, reset_global, root_keypairname, root_keypairpath, update_config, update_global, update_logger, user_keypairname, user_keypairpath
Instance Method Details
#any?(fields = {}, less = []) ⇒ Boolean
139
140
141
|
# File 'lib/rudy/metadata.rb', line 139
def any?(fields={}, less=[])
!list(fields, less).nil?
end
|
#list(fields = {}, less = [], &block) ⇒ Object
117
118
119
120
121
122
123
124
125
126
|
# File 'lib/rudy/metadata.rb', line 117
def list(fields={}, less=[], &block)
fields = Rudy::Metadata.build_criteria self::RTYPE, fields, less
records_raw, records = Rudy::Metadata.select(fields), []
return nil if records_raw.nil? || records_raw.empty?
records_raw.each_pair do |p, r|
obj = self.from_hash r
records << obj
end
records.sort { |a,b| a.name <=> b.name }
end
|
#list_as_hash(fields = {}, less = [], &block) ⇒ Object
128
129
130
131
132
133
134
135
136
137
|
# File 'lib/rudy/metadata.rb', line 128
def list_as_hash(fields={}, less=[], &block)
fields = Rudy::Metadata.build_criteria self::RTYPE, fields, less
records_raw, records = Rudy::Metadata.select(fields), {}
return nil if records_raw.nil? || records_raw.empty?
records_raw.each_pair do |p, r|
obj = self.from_hash r
records[p] = obj
end
records
end
|