protected void InitializeADObjectSchemaProperties() { this.AddShadowPropertiesToAllPropertiesList(); this.InitializeAllPropertiesDictionary(); this.InitializeFilterOnlyPropertiesDictionary(); this.ldapAttributes = ADObjectSchema.ADPropertyCollectionToLdapAttributes(base.AllProperties, this.GetHashCode()); this.InitializeADObjectLinkProperties(); }
internal override void InitializeSchema() { base.InitializeSchema(); ADObjectSchema adobjectSchema = this.ObjectSchema as ADObjectSchema; if (adobjectSchema != null) { adobjectSchema.InitializeAutogeneratedConstraints(); } }
internal static string[] ADPropertyCollectionToLdapAttributes(IEnumerable <PropertyDefinition> schema, int id) { if (schema == null) { throw new ArgumentNullException("schema"); } List <string> list = new List <string>(); foreach (PropertyDefinition propertyDefinition in schema) { ADPropertyDefinition adpropertyDefinition = (ADPropertyDefinition)propertyDefinition; string ldapDisplayName = adpropertyDefinition.LdapDisplayName; ADObjectSchema.InternalAddSoftLinkAttribute(adpropertyDefinition, list, id); if (!string.IsNullOrEmpty(ldapDisplayName) && !adpropertyDefinition.IsCalculated && !list.Contains(ldapDisplayName)) { ExTraceGlobals.ADPropertyRequestTracer.TraceDebug <string>((long)id, "ADObjectSchema::ADPropertyCollectionToLdapAttributes: requesting {0}", ldapDisplayName); list.Add(ldapDisplayName); } if (adpropertyDefinition.IsCalculated) { string name = adpropertyDefinition.Name; foreach (ProviderPropertyDefinition providerPropertyDefinition in adpropertyDefinition.SupportingProperties) { ADPropertyDefinition adpropertyDefinition2 = (ADPropertyDefinition)providerPropertyDefinition; if (!adpropertyDefinition2.IsTaskPopulated) { ldapDisplayName = adpropertyDefinition2.LdapDisplayName; if (!list.Contains(ldapDisplayName)) { ExTraceGlobals.ADPropertyRequestTracer.TraceDebug <string, string>((long)id, "ADObjectSchema::ADPropertyCollectionToLdapAttributes: requesting supporting {0} for {1}", ldapDisplayName, name); list.Add(ldapDisplayName); } } } } } list.Add("lastKnownParent"); list.Add("isDeleted"); return(list.ToArray()); }