Module ActiveLdap::Association::HasManyUtils
In: lib/active_ldap/association/has_many_utils.rb
Error AttributeAssignmentError AdapterNotSpecified OperationNotPermitted RequiredObjectClassMissed ConnectionError RequiredAttributeMissed LdifInvalid LdapError DistinguishedNameNotSetError EntryNotFound SaveError StrongAuthenticationRequired NotImplemented AdapterNotFound TimeoutError AuthenticationError AttributeValueInvalid EntryNotSaved DistinguishedNameInputInvalid EntryAlreadyExist ObjectClassError UnknownAttribute EntryInvalid DeleteError ConfigurationError ConnectionNotSetup DistinguishedNameInvalid Schema\n[lib/active_ldap/schema.rb\nlib/active_ldap/schema/syntaxes.rb] Base DistinguishedName Reloadable::Deprecated Reloadable::Subclasses Enumerable Ldif Collection EntryAttribute StandardError Children HasMany HasManyWrap BelongsToMany Proxy BelongsTo Normalizable Common Find LDIF Delete Update GetText Parser ActiveRecord::Callbacks ActiveRecord::Validations Base\n[lib/active_ldap/adapter/base.rb\nlib/active_ldap/adapter/jndi.rb\nlib/active_ldap/adapter/ldap.rb\nlib/active_ldap/adapter/net_ldap.rb] Jndi Ldap NetLdap GetTextSupport Xml JndiConnection lib/active_ldap/distinguished_name.rb lib/active_ldap/base.rb lib/active_ldap/xml.rb lib/active_ldap/schema.rb lib/active_ldap/entry_attribute.rb lib/active_ldap/ldif.rb lib/active_ldap/ldap_error.rb LdapBenchmarking ActionController ClassMethods Associations Compatible ClassMethods Tree Acts lib/active_ldap/association/has_many_wrap.rb lib/active_ldap/association/children.rb lib/active_ldap/association/collection.rb lib/active_ldap/association/proxy.rb lib/active_ldap/association/belongs_to_many.rb lib/active_ldap/association/belongs_to.rb lib/active_ldap/association/has_many.rb HasManyUtils Association Populate Command ClassMethods Normalizable Attributes Escape GetTextSupport Update Common ModifyNameRecordLoadable AddOperationModifiable DeleteOperationModifiable ReplaceOperationModifiable ModifyRecordLoadable DeleteRecordLoadable AddRecordLoadable ContentRecordLoadable LDIF Delete Find Operations ClassMethods Configuration lib/active_ldap/get_text/parser.rb GetText ClassMethods Callbacks ClassMethods ObjectClass Validations lib/active_ldap/adapter/jndi_connection.rb lib/active_ldap/adapter/net_ldap.rb lib/active_ldap/adapter/ldap.rb lib/active_ldap/adapter/base.rb lib/active_ldap/adapter/jndi.rb Adapter Helper GetTextFallback ClassMethods HumanReadable Salt UserPassword ClassMethods Connection ActiveLdap dot/m_45_0.png

Methods

Private Instance methods

[Source]

    # File lib/active_ldap/association/has_many_utils.rb, line 5
 5:       def collect_targets(requested_target_key, need_requested_targets=false)
 6:         _foreign_key = foreign_key
 7:         return [] if _foreign_key.nil?
 8: 
 9:         requested_targets = @owner[requested_target_key, true]
10:         requested_targets = requested_targets.reject(&:nil?)
11:         if requested_targets.empty?
12:           targets = []
13:         elsif _foreign_key == "dn"
14:           requested_targets = requested_targets.collect do |target|
15:             if target.is_a?(DN)
16:               target
17:             else
18:               DN.parse(target)
19:             end
20:           end
21:           targets = []
22:           requested_targets.each do |target|
23:             begin
24:               targets << foreign_class.find(target, find_options)
25:             rescue EntryNotFound
26:             end
27:           end
28:         else
29:           components = requested_targets.collect do |value|
30:             [_foreign_key, value]
31:           end
32:           options = find_options(:filter => [:or, *components])
33:           targets = foreign_class.find(:all, options)
34:         end
35: 
36:         if need_requested_targets
37:           [targets, requested_targets]
38:         else
39:           targets
40:         end
41:       end

[Validate]