Skip to content

Commit

Permalink
Merge pull request ManageIQ#373 from astrozzc/find_by
Browse files Browse the repository at this point in the history
Switch find_by_* to lookup_by_*
  • Loading branch information
gmcculloug committed Sep 30, 2019
2 parents 6acc3f3 + af8b61c commit b2b6596
Show file tree
Hide file tree
Showing 34 changed files with 188 additions and 187 deletions.
6 changes: 3 additions & 3 deletions app/models/miq_ae_class_copy.rb
Expand Up @@ -6,7 +6,7 @@ class MiqAeClassCopy
def initialize(class_fqname)
@class_fqname = class_fqname
@src_domain, @partial_ns, @ae_class = MiqAeClassCopy.split(@class_fqname, false)
@src_class = MiqAeClass.find_by_fqname(@class_fqname)
@src_class = MiqAeClass.lookup_by_fqname(@class_fqname)
raise "Source class not found #{@class_fqname}" unless @src_class
end

Expand Down Expand Up @@ -42,7 +42,7 @@ def self.copy_multiple(ids, domain, ns = nil, overwrite = false)

def target_ns(domain, ns)
return "#{domain}/#{@partial_ns}" if ns.nil?
ns_obj = MiqAeNamespace.find_by_fqname(ns, false)
ns_obj = MiqAeNamespace.lookup_by_fqname(ns, false)
ns_obj && !ns_obj.domain? ? ns : "#{domain}/#{ns}"
end

Expand Down Expand Up @@ -78,7 +78,7 @@ def add_fields
end

def validate
dest_class = MiqAeClass.find_by_fqname("#{@target_ns_fqname}/#{@target_name}")
dest_class = MiqAeClass.lookup_by_fqname("#{@target_ns_fqname}/#{@target_name}")
$log.info("Destination class: #{dest_class}")
if dest_class
$log.info("Overwrite flag: #{@overwrite}")
Expand Down
12 changes: 6 additions & 6 deletions app/models/miq_ae_datastore.rb
Expand Up @@ -124,18 +124,18 @@ def self.reset
end

def self.reset_default_namespace
ns = MiqAeNamespace.find_by_fqname(DEFAULT_OBJECT_NAMESPACE)
ns = MiqAeNamespace.lookup_by_fqname(DEFAULT_OBJECT_NAMESPACE)
ns.destroy if ns
seed_default_namespace
end

private_class_method def self.reset_domain(datastore_dir, domain_name, tenant)
_log.info("Resetting domain #{domain_name} from #{datastore_dir}")
ns = MiqAeDomain.find_by_fqname(domain_name)
ns = MiqAeDomain.lookup_by_fqname(domain_name)
ns.destroy if ns
import_yaml_dir(datastore_dir, domain_name, tenant)
if domain_name.downcase == MANAGEIQ_DOMAIN.downcase
ns = MiqAeDomain.find_by_fqname(MANAGEIQ_DOMAIN)
ns = MiqAeDomain.lookup_by_fqname(MANAGEIQ_DOMAIN)
ns.update!(:source => MiqAeDomain::SYSTEM_SOURCE, :enabled => true,
:priority => MANAGEIQ_PRIORITY) if ns
end
Expand Down Expand Up @@ -211,7 +211,7 @@ def self.default_domain_names
end

def self.seed
ns = MiqAeDomain.find_by_fqname(MANAGEIQ_DOMAIN)
ns = MiqAeDomain.lookup_by_fqname(MANAGEIQ_DOMAIN)
unless ns
_log.info("Seeding ManageIQ domain...")
begin
Expand Down Expand Up @@ -264,11 +264,11 @@ def self.preserved_attrs_for_domains
end

def self.restore_attrs_for_domains(hash)
hash.each { |dom, attrs| MiqAeDomain.find_by_fqname(dom, false).update(attrs) }
hash.each { |dom, attrs| MiqAeDomain.lookup_by_fqname(dom, false).update(attrs) }
end

def self.path_includes_domain?(path, options = {})
nsd, = ::MiqAeEngine::MiqAePath.split(path, options)
MiqAeNamespace.find_by_fqname(nsd, false) != nil
MiqAeNamespace.lookup_by_fqname(nsd, false) != nil
end
end
6 changes: 3 additions & 3 deletions app/models/miq_ae_datastore/xml_export.rb
Expand Up @@ -22,14 +22,14 @@ def self.class_to_xml(ns, class_name)
xml = Builder::XmlMarkup.new(:indent => 2)
xml.instruct!
xml.MiqAeDatastore(:version => '1.0') do
c = MiqAeClass.find_by_namespace_and_name(ns, class_name)
c = MiqAeClass.lookup_by_namespace_and_name(ns, class_name)
c.to_export_xml(:builder => xml, :skip_instruct => true, :indent => 2)
end
end

def self.export_sub_namespaces(ns, xml)
ns.ae_namespaces.each do |n|
sn = MiqAeNamespace.find_by_fqname(n.fqname)
sn = MiqAeNamespace.lookup_by_fqname(n.fqname)
export_all_classes_for_namespace(sn, xml)
export_sub_namespaces(sn, xml)
end
Expand All @@ -39,7 +39,7 @@ def self.namespace_to_xml(namespace)
_log.info("Exporting namespace: #{namespace} to XML")
xml = Builder::XmlMarkup.new(:indent => 2)
xml.instruct!
rec = MiqAeNamespace.find_by_fqname(namespace)
rec = MiqAeNamespace.lookup_by_fqname(namespace)
if rec.nil?
_log.info("Namespace: <#{namespace}> not found.")
return nil
Expand Down
2 changes: 1 addition & 1 deletion app/models/miq_ae_datastore/xml_import.rb
Expand Up @@ -153,7 +153,7 @@ def self.load_xml(f, domain_name = nil)
end

def self.create_domain(domain)
MiqAeDomain.find_by_fqname(domain) ||
MiqAeDomain.lookup_by_fqname(domain) ||
MiqAeDomain.create!(:enabled => true, :priority => 100, :tenant => Tenant.root_tenant, :name => domain)
end

Expand Down
2 changes: 1 addition & 1 deletion app/models/miq_ae_datastore/xml_yaml_converter.rb
Expand Up @@ -8,7 +8,7 @@ def self.convert(xml, domain_name, export_options)
export_options['export_as'] = domain_name
MiqAeExport.new(temp_domain, export_options).export
ensure
ns = MiqAeDomain.find_by_fqname(temp_domain)
ns = MiqAeDomain.lookup_by_fqname(temp_domain)
ns.destroy if ns
end
end
Expand Down
4 changes: 2 additions & 2 deletions app/models/miq_ae_instance_copy.rb
Expand Up @@ -7,7 +7,7 @@ class MiqAeInstanceCopy
def initialize(instance_fqname, validate_schema = true)
@src_domain, @partial_ns, @ae_class, @instance_name = MiqAeInstanceCopy.split(instance_fqname, true)
@class_fqname = "#{@src_domain}/#{@partial_ns}/#{@ae_class}"
@src_class = MiqAeClass.find_by_fqname("#{@src_domain}/#{@partial_ns}/#{@ae_class}")
@src_class = MiqAeClass.lookup_by_fqname("#{@src_domain}/#{@partial_ns}/#{@ae_class}")
raise "Source class not found #{@class_fqname}" unless @src_class
@src_instance = MiqAeInstance.find_by(:name => @instance_name, :class_id => @src_class.id)
raise "Source instance #{@instance_name} not found #{@class_fqname}" unless @src_instance
Expand Down Expand Up @@ -51,7 +51,7 @@ def self.copy_multiple(ids, domain, ns = nil, overwrite = false)
private

def find_or_create_class
@dest_class = MiqAeClass.find_by_fqname("#{@target_domain}/#{@target_ns}/#{@target_class_name}")
@dest_class = MiqAeClass.lookup_by_fqname("#{@target_domain}/#{@target_ns}/#{@target_class_name}")
return unless @dest_class.nil?
@dest_class = MiqAeClassCopy.new(@class_fqname).to_domain(@target_domain, @target_ns)
end
Expand Down
6 changes: 3 additions & 3 deletions app/models/miq_ae_method_copy.rb
Expand Up @@ -6,7 +6,7 @@ class MiqAeMethodCopy
def initialize(method_fqname)
@src_domain, @partial_ns, @ae_class, @method_name = MiqAeMethodCopy.split(method_fqname, true)
@class_fqname = "#{@src_domain}/#{@partial_ns}/#{@ae_class}"
@src_class = MiqAeClass.find_by_fqname("#{@src_domain}/#{@partial_ns}/#{@ae_class}")
@src_class = MiqAeClass.lookup_by_fqname("#{@src_domain}/#{@partial_ns}/#{@ae_class}")
raise "Source class not found #{@class_fqname}" unless @src_class
@src_method = MiqAeMethod.find_by(:name => @method_name, :class_id => @src_class.id)
raise "Source method #{@method_name} not found #{@class_fqname}" unless @src_method
Expand Down Expand Up @@ -46,7 +46,7 @@ def self.copy_multiple(ids, domain, ns = nil, overwrite = false)
private

def find_or_create_class
@dest_class = MiqAeClass.find_by_fqname("#{@target_domain}/#{@target_ns}/#{@target_class_name}")
@dest_class = MiqAeClass.lookup_by_fqname("#{@target_domain}/#{@target_ns}/#{@target_class_name}")
return unless @dest_class.nil?
@dest_class = MiqAeClassCopy.new(@class_fqname).to_domain(@target_domain, @target_ns)
end
Expand All @@ -68,7 +68,7 @@ def add_inputs
end

def create_method
@dest_method = MiqAeMethod.find_by_class_id_and_name(@dest_class.id, @target_name)
@dest_method = MiqAeMethod.lookup_by_class_id_and_name(@dest_class.id, @target_name)
if @dest_method
@dest_method.destroy if @overwrite
raise "Instance #{@target_name} exists in #{@target_ns_fqname} class #{@target_class_name}" unless @overwrite
Expand Down
4 changes: 2 additions & 2 deletions app/models/miq_ae_yaml_export.rb
Expand Up @@ -256,7 +256,7 @@ def reset_manifest

def domain_object
raise MiqAeException::DomainNotAccessible, "Domain [#{@domain}] not accessible" unless domain_accessible?
MiqAeDomain.find_by_fqname(@domain).tap do |dom|
MiqAeDomain.lookup_by_fqname(@domain).tap do |dom|
if dom.nil?
_log.error("Domain: <#{@domain}> not found.")
raise MiqAeException::DomainNotFound, "Domain [#{@domain}] not found in MiqAeDatastore"
Expand All @@ -267,7 +267,7 @@ def domain_object

def get_namespace_object(namespace)
fqname = File.join(@domain, namespace)
MiqAeNamespace.find_by_fqname(fqname) || begin
MiqAeNamespace.lookup_by_fqname(fqname) || begin
_log.error("Namespace: <#{fqname}> not found.")
raise MiqAeException::NamespaceNotFound, "Namespace: [#{fqname}] not found in MiqAeDatastore"
end
Expand Down
8 changes: 4 additions & 4 deletions app/models/miq_ae_yaml_import.rb
Expand Up @@ -80,7 +80,7 @@ def sorted_domain_files
def import_domain(domain_folder, domain_name)
domain_yaml = domain_properties(domain_folder, domain_name)
domain_name = domain_yaml.fetch_path('object', 'attributes', 'name')
domain_obj = MiqAeDomain.find_by_fqname(domain_name, false)
domain_obj = MiqAeDomain.lookup_by_fqname(domain_name, false)
track_stats('domain', domain_obj)
MiqAeDomain.transaction do
if domain_obj && !@preview && @options['overwrite']
Expand Down Expand Up @@ -158,7 +158,7 @@ def process_namespace(domain_obj, namespace_folder, namespace_yaml, domain_name)
"#{domain_name}#{namespace_folder.sub(domain_folder(@domain_name), '')}"
end
_log.info("Importing namespace: <#{fqname}>")
namespace_obj = MiqAeNamespace.find_by_fqname(fqname, false)
namespace_obj = MiqAeNamespace.lookup_by_fqname(fqname, false)
track_stats('namespace', namespace_obj)
namespace_obj ||= add_namespace(fqname) unless @preview
attrs = namespace_yaml.fetch_path('object', 'attributes').slice('display_name', 'description')
Expand Down Expand Up @@ -205,7 +205,7 @@ def process_class_schema(namespace_obj, class_yaml)

def existing_class_object(ns_obj, class_yaml)
class_attrs = class_yaml.fetch_path('object', 'attributes')
class_obj = MiqAeClass.find_by_namespace_id_and_name(ns_obj.id, class_attrs['name']) unless ns_obj.nil?
class_obj = MiqAeClass.lookup_by_namespace_id_and_name(ns_obj.id, class_attrs['name']) unless ns_obj.nil?
track_stats('class', class_obj)
class_obj
end
Expand Down Expand Up @@ -303,7 +303,7 @@ def track_stats(level, object)
def new_domain_name_valid?
return true if @options['overwrite']

domain_obj = MiqAeDomain.find_by_fqname(@options['import_as'], false)
domain_obj = MiqAeDomain.lookup_by_fqname(@options['import_as'], false)
if domain_obj
_log.info("Cannot import - A domain exists with new domain name: #{@options['import_as']}.")
return false
Expand Down
Expand Up @@ -34,7 +34,7 @@ def get_alternate_domain_method(scheme, uri, ns, klass, method)

def search(uri, ns, klass, instance, method)
unless @partial_ns.include?(ns)
fqns = MiqAeNamespace.find_by_fqname(ns, false)
fqns = MiqAeNamespace.lookup_by_fqname(ns, false)
if fqns && !fqns.domain?
@fqns_id_cache[ns] = fqns.id
return ns
Expand Down Expand Up @@ -79,7 +79,7 @@ def find_fqns_id(fqns_parts)
fqname = fqns_parts.join('/')
return @fqns_id_cache[fqname] if @fqns_id_cache.key?(fqname)

ns = MiqAeNamespace.find_by_fqname(fqname, false)
ns = MiqAeNamespace.lookup_by_fqname(fqname, false)
@fqns_id_cache[fqname] = ns.id if ns
end

Expand Down
Expand Up @@ -276,7 +276,7 @@ def self.embedded_methods(workspace, method_obj, current_items, top)
method_obj.embedded_methods.each do |name|
method_name, klass, ns = embedded_method_name(name)
match_ns = workspace.overlay_method(ns, klass, method_name)
cls = ::MiqAeClass.find_by_fqname("#{match_ns}/#{klass}")
cls = ::MiqAeClass.lookup_by_fqname("#{match_ns}/#{klass}")
aem = ::MiqAeMethod.find_by(:class_id => cls.id, :name => method_name) if cls
raise MiqAeException::MethodNotFound, "Embedded method #{name} not found" unless aem
fqname = "/#{match_ns}/#{klass}/#{method_name}"
Expand Down
Expand Up @@ -152,7 +152,7 @@ def fetch_namespace(ns = @namespace)
Benchmark.current_realtime[:fetch_namespace_count] += 1
Benchmark.realtime_block(:fetch_namespace_time) do
@workspace.datastore(ns.downcase, :namespace) do
MiqAeNamespace.find_by_fqname(ns)
MiqAeNamespace.lookup_by_fqname(ns)
end
end.first
end
Expand Down Expand Up @@ -515,8 +515,8 @@ def method_override(namespace, klass, method_name, aem)
ns.shift
updated_ns = @workspace.overlay_method(ns.join('/'), klass, method_name)
if updated_ns != namespace
cls = ::MiqAeClass.find_by_fqname("#{updated_ns}/#{klass}")
aem = ::MiqAeMethod.find_by_class_id_and_name(cls.id, method_name) if cls
cls = ::MiqAeClass.lookup_by_fqname("#{updated_ns}/#{klass}")
aem = ::MiqAeMethod.lookup_by_class_id_and_name(cls.id, method_name) if cls
end
aem
end
Expand Down
Expand Up @@ -269,7 +269,7 @@ def instance_create(path, values_hash = {})
ns, klass, instance = MiqAeEngine::MiqAePath.split(path)
$log.info("Instance Create for ns: #{ns} class #{klass} instance: #{instance}")

aec = MiqAeClass.find_by_namespace_and_name(ns, klass)
aec = MiqAeClass.lookup_by_namespace_and_name(ns, klass)
return false if aec.nil?

aei = aec.ae_instances.detect { |i| instance.casecmp(i.name).zero? }
Expand Down Expand Up @@ -312,7 +312,7 @@ def instance_find(path, options = {})
result = {}

ns, klass, instance = MiqAeEngine::MiqAePath.split(path)
aec = MiqAeClass.find_by_namespace_and_name(ns, klass)
aec = MiqAeClass.lookup_by_namespace_and_name(ns, klass)
unless aec.nil?
instance.gsub!(".", '\.')
instance.gsub!("*", ".*")
Expand Down Expand Up @@ -355,7 +355,7 @@ def __find_instance_from_path(path)
dom, ns, klass, instance = MiqAeEngine::MiqAePath.get_domain_ns_klass_inst(path)
return false unless visible_domain?(dom)

aec = MiqAeClass.find_by_namespace_and_name("#{dom}/#{ns}", klass)
aec = MiqAeClass.lookup_by_namespace_and_name("#{dom}/#{ns}", klass)
return nil if aec.nil?

aec.ae_instances.detect { |i| instance.casecmp(i.name).zero? }
Expand All @@ -370,7 +370,7 @@ def service_object
def editable_instance?(path)
dom, = MiqAeEngine::MiqAePath.get_domain_ns_klass_inst(path)
return false unless owned_domain?(dom)
domain = MiqAeDomain.find_by_fqname(dom, false)
domain = MiqAeDomain.lookup_by_fqname(dom, false)
return false unless domain
$log.warn "path=#{path.inspect} : is not editable" unless domain.editable?(@workspace.ae_user)
domain.editable?(@workspace.ae_user)
Expand Down
Expand Up @@ -67,7 +67,7 @@ def self.vm_templates

def self.category_exists?(category)
ar_method do
Classification.find_by_name(category).present?
Classification.lookup_by_name(category).present?
end
end

Expand All @@ -82,7 +82,7 @@ def self.category_create(options = {})

def self.category_delete!(category)
ar_method do
cat = Classification.find_by_name(category)
cat = Classification.lookup_by_name(category)
raise "Category <#{category}> does not exist" if cat.nil?

if cat.entries.any? { |ent| AssignmentMixin.all_assignments(ent.tag.name).present? }
Expand All @@ -102,14 +102,14 @@ def self.category_delete(category)

def self.tag_exists?(category, entry)
ar_method do
cat = Classification.find_by_name(category)
cat = Classification.lookup_by_name(category)
cat.present? && cat.find_entry_by_name(entry).present?
end
end

def self.tag_create(category, options = {})
ar_method do
cat = Classification.find_by_name(category)
cat = Classification.lookup_by_name(category)
raise "Category <#{category}> does not exist" if cat.nil?

ar_options = {}
Expand All @@ -121,7 +121,7 @@ def self.tag_create(category, options = {})

def self.tag_delete!(category, entry)
ar_method do
cat = Classification.find_by_name(category)
cat = Classification.lookup_by_name(category)
raise "Category <#{category}> does not exist" if cat.nil?

ent = cat.find_entry_by_name(entry)
Expand All @@ -144,12 +144,12 @@ def self.create_provision_request(*args)
# Need to add the username into the array of params
# TODO: This code should pass a real username, similar to how the web-service
# passes the name of the user that logged into the web-service.
args.insert(1, User.find_by_userid("admin")) if args.kind_of?(Array)
args.insert(1, User.lookup_by_userid("admin")) if args.kind_of?(Array)
MiqAeServiceModelBase.wrap_results(MiqProvisionVirtWorkflow.from_ws(*args))
end

def self.create_automation_request(options, userid = "admin", auto_approve = false)
user = User.find_by_userid!(userid)
user = User.lookup_by_userid!(userid)
MiqAeServiceModelBase.wrap_results(AutomationRequest.create_request(options, user, auto_approve))
end

Expand Down
Expand Up @@ -26,7 +26,8 @@ def self.respond_to_missing?(method_name, include_private = false)

def self.allowed_find_method?(m)
return false if m.starts_with?('find_or_create') || m.starts_with?('find_or_initialize')
m.starts_with?('find')

m.starts_with?('find', 'lookup_by')
end

# Expose the ActiveRecord find, all, count, and first
Expand Down

0 comments on commit b2b6596

Please sign in to comment.