private static void SetCommonProperties(UnifiedPolicyTrace trace, ConfigurablePropertyBag dataObject) { dataObject[UnifiedPolicyCommonSchema.OrganizationalUnitRootProperty] = trace.OrganizationalUnitRoot; dataObject[UnifiedPolicyCommonSchema.ObjectIdProperty] = trace.ObjectId; dataObject[UnifiedPolicyCommonSchema.DataSourceProperty] = trace.DataSource; dataObject[UnifiedPolicyCommonSchema.HashBucketProperty] = trace[UnifiedPolicyCommonSchema.HashBucketProperty]; }
protected void FixOrganizationalUnitRoot(IConfigurable configurable) { ADObject adobject = configurable as ADObject; if (adobject != null) { if (adobject.OrganizationalUnitRoot == null) { adobject[ADObjectSchema.OrganizationalUnitRoot] = this.TenantId; return; } } else { ConfigurablePropertyBag configurablePropertyBag = configurable as ConfigurablePropertyBag; if (configurablePropertyBag != null) { configurablePropertyBag[ADObjectSchema.OrganizationalUnitRoot] = this.TenantId; return; } ConfigurableObject configurableObject = configurable as ConfigurableObject; if (configurableObject != null) { configurableObject[ADObjectSchema.OrganizationalUnitRoot] = this.TenantId; } } }
protected void GenerateIdForObject(IConfigurable configurable) { ADObject adobject = configurable as ADObject; if (adobject != null) { if (adobject.Id != null && adobject.Id.ObjectGuid == Guid.Empty && !(adobject is ADConfigurationObject)) { adobject.SetId(new ADObjectId(adobject.Id.DistinguishedName, CombGuidGenerator.NewGuid())); } if ((adobject is TransportRule || adobject is Container) && adobject.Id != null && string.IsNullOrEmpty(adobject.Name)) { adobject.Name = (adobject.Id.Name ?? adobject.Id.ObjectGuid.ToString()); return; } } else { ConfigurablePropertyBag configurablePropertyBag = configurable as ConfigurablePropertyBag; if (configurablePropertyBag != null) { if (configurablePropertyBag is UserCertificate) { configurablePropertyBag[UserCertificate.UserCertificateIdProp] = CombGuidGenerator.NewGuid(); configurablePropertyBag[UserCertificate.CertificateIdProp] = CombGuidGenerator.NewGuid(); } if (configurablePropertyBag is PartnerCertificate) { configurablePropertyBag[PartnerCertificate.PartnerCertificateIdDef] = CombGuidGenerator.NewGuid(); configurablePropertyBag[PartnerCertificate.PartnerIdDef] = CombGuidGenerator.NewGuid(); configurablePropertyBag[PartnerCertificate.CertificateIdDef] = CombGuidGenerator.NewGuid(); return; } } else { ConfigurableObject configurableObject = configurable as ConfigurableObject; if (configurableObject != null) { return; } throw new ArgumentException("IConfigurable object must be driven from ADObject, ConfigurableObject, or ConfigurablePropertyBag"); } } }
public void SavePartnerCertificate(string certificateSubjectName) { if (string.IsNullOrEmpty(certificateSubjectName)) { throw new ArgumentNullException("certificateSubjectName"); } PartnerCertificate partnerCertificate = new PartnerCertificate(this.callerId, certificateSubjectName); if (string.IsNullOrEmpty(this.partnerName)) { partnerCertificate.PartnerName = this.partnerName; } ConfigurablePropertyBag configurablePropertyBag = partnerCertificate; if (configurablePropertyBag != null) { configurablePropertyBag[PartnerCertificate.PartnerCertificateIdDef] = this.GenerateNewGuid(); configurablePropertyBag[PartnerCertificate.PartnerIdDef] = this.GenerateNewGuid(); configurablePropertyBag[PartnerCertificate.CertificateIdDef] = this.GenerateNewGuid(); } PartnerConfigSession.dataProvider.Save(partnerCertificate); }
public static string ConvertToString(this ConfigurablePropertyBag configurableObj) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.AppendFormat("{0}- ", configurableObj.GetType().Name); foreach (PropertyDefinition propertyDefinition in configurableObj.GetPropertyDefinitions(false)) { if (propertyDefinition == DomainSchema.PropertiesAsId) { stringBuilder.Append("Properties(EntityId:PropertyId:PropertyValue)="); Dictionary <int, Dictionary <int, string> > dictionary = configurableObj[DomainSchema.PropertiesAsId] as Dictionary <int, Dictionary <int, string> >; if (dictionary != null) { stringBuilder.Append(dictionary.ConvertToString()); } } else { stringBuilder.AppendFormat("{0}={1}, ", propertyDefinition.Name, configurableObj[propertyDefinition]); } } return(stringBuilder.ToString()); }
private static void PopulateRow(DataRow row, HygienePropertyDefinition[] columns, ConfigurablePropertyBag dataSource) { if (columns == null) { throw new ArgumentNullException("columns"); } for (int i = 0; i < columns.Length; i++) { HygienePropertyDefinition hygienePropertyDefinition = columns[i]; if (hygienePropertyDefinition != null && !hygienePropertyDefinition.IsCalculated) { object obj = dataSource[hygienePropertyDefinition]; if (obj != hygienePropertyDefinition.DefaultValue) { row[i] = obj; } } } }