URI::LDAP (Class)

In: uri/ldap.rb
Parent: Generic

LDAP URI SCHEMA (described in RFC2255) ldap://<host>/<dn>[?<attrs>[?<scope>[?<filter>[?<extensions>]]]]

Methods

attributes   attributes=   build   dn   dn=   extensions   extensions=   filter   filter=   new   scope   scope=  

Constants

DEFAULT_PORT = 389
COMPONENT = [ :scheme, :host, :port, :dn, :attributes, :scope, :filter, :extensions, ].freeze
SCOPE = [ SCOPE_ONE = 'one', SCOPE_SUB = 'sub', SCOPE_BASE = 'base', ].freeze

Public Class methods

[Source]

# File uri/ldap.rb, line 41
    def self.build(args)
      tmp = Util::make_components_hash(self, args)

      if tmp[:dn]
        tmp[:path] = tmp[:dn]
      end

      query = []
      [:extensions, :filter, :scope, :attributes].collect do |x|
        next if !tmp[x] && query.size == 0
        query.unshift(tmp[x])
      end

      tmp[:query] = query.join('?')

      return super(tmp)
    end

[Source]

# File uri/ldap.rb, line 59
    def initialize(*arg)
      super(*arg)

      if @fragment
        raise InvalidURIError, 'bad LDAP URL'
      end

      parse_dn
      parse_query
    end

Public Instance methods

[Source]

# File uri/ldap.rb, line 120
    def attributes
      @attributes
    end

[Source]

# File uri/ldap.rb, line 131
    def attributes=(val)
      set_attributes(val)
      val
    end

[Source]

# File uri/ldap.rb, line 104
    def dn
      @dn
    end

[Source]

# File uri/ldap.rb, line 115
    def dn=(val)
      set_dn(val)
      val
    end

[Source]

# File uri/ldap.rb, line 168
    def extensions
      @extensions
    end

[Source]

# File uri/ldap.rb, line 179
    def extensions=(val)
      set_extensions(val)
      val
    end

[Source]

# File uri/ldap.rb, line 152
    def filter
      @filter
    end

[Source]

# File uri/ldap.rb, line 163
    def filter=(val)
      set_filter(val)
      val
    end

[Source]

# File uri/ldap.rb, line 136
    def scope
      @scope
    end

[Source]

# File uri/ldap.rb, line 147
    def scope=(val)
      set_scope(val)
      val
    end

[Validate]