Sha256: 82f61ccdd765c8b80321f1d2d2eba60181a2aa7943fead759d6856c4c80d827b

Contents?: true

Size: 1.23 KB

Versions: 2

Compression:

Stored size: 1.23 KB

Contents

module Adauth
    
    # Holds all of adauth config in attr_accessor values
    class Config
        attr_accessor   :domain, :port, :base, :server, :allowed_groups, :denied_groups, :ad_sv_attrs, :ad_mv_attrs, :allowed_ous, :denied_ous,
                        :admin_user, :admin_password, :ad_sv_group_attrs, :ad_mv_group_attrs
        
        # Creates a new instance of Adauth::Config
        #
        # Sets port, allowed_groups, denied_groups, ad_sv_attrs and ad_mv_attrs to default so they can be omitted from the config
        def initialize
           @port = 389
           @allowed_groups = []
           @denied_groups = []
           @ad_sv_attrs = {}
           @ad_mv_attrs = {}
           @allowed_ous = []
           @denied_ous = []
           @ad_sv_group_attrs = {}
           @ad_mv_group_attrs = {}
        end
        
        # Sets domain valiable
        #
        # Called as:
        #    Adauth::Config.domain=(s)
        #
        # Calculates both base string and server
        def domain=(s)
            @domain = s
            work_out_base(s)
            @server ||= s
        end
        
        private
        
        def work_out_base(s)
            @base ||= s.gsub(/\./,', dc=').gsub(/^/,"dc=")
        end
    end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
adauth-1.2.1 lib/adauth/config.rb
adauth-1.2.0 lib/adauth/config.rb