72: def initialize(*args)
73: raise(Puppet::DevError, "No LDAP Configuration defined for %s" % self.class) unless self.class.manager
74: raise(Puppet::DevError, "Invalid LDAP Configuration defined for %s" % self.class) unless self.class.manager.valid?
75: super
76:
77: @property_hash = @property_hash.inject({}) do |result, ary|
78: param, values = ary
79:
80:
81: next result unless self.class.resource_type.validattr?(param)
82:
83: paramclass = self.class.resource_type.attrclass(param)
84:
85: unless values.is_a?(Array)
86: result[param] = values
87: next result
88: end
89:
90:
91:
92: if paramclass.superclass == Puppet::Parameter or paramclass.array_matching == :first
93: result[param] = values[0]
94: else
95: result[param] = values
96: end
97: result
98: end
99:
100:
101:
102: @ldap_properties = @property_hash.dup
103: end