public PsDlpSensitiveInformationType(RuleDefinitionDetails ruleDefinitionDetails) { ArgumentValidator.ThrowIfNull("ruleDefinitionDetails", ruleDefinitionDetails); ArgumentValidator.ThrowIfCollectionNullOrEmpty <KeyValuePair <string, CLASSIFICATION_DEFINITION_DETAILS> >("LocalizableDetails", ruleDefinitionDetails.LocalizableDetails); this.Id = ruleDefinitionDetails.RuleId; this.Name = ruleDefinitionDetails.LocalizableDetails.Values.First <CLASSIFICATION_DEFINITION_DETAILS>().DefinitionName; this.Description = ruleDefinitionDetails.LocalizableDetails.Values.First <CLASSIFICATION_DEFINITION_DETAILS>().Description; this.Publisher = ruleDefinitionDetails.LocalizableDetails.Values.First <CLASSIFICATION_DEFINITION_DETAILS>().PublisherName; this.RecommendedConfidence = ruleDefinitionDetails.RecommendedConfidence; }
protected override void InternalProcessRecord() { base.InternalProcessRecord(); IClassificationRuleStore instance = InMemoryClassificationRuleStore.GetInstance(); string locale = CultureInfo.CurrentCulture.ToString().ToLower(); if (this.Identity != null) { RuleDefinitionDetails ruleDefinitionDetails = GetDlpSensitiveInformationType.GetRuleDefinitionDetails(instance, this.Identity, locale); base.WriteObject(new PsDlpSensitiveInformationType(ruleDefinitionDetails)); return; } RULE_PACKAGE_DETAILS[] rulePackageDetails = instance.GetRulePackageDetails(null); foreach (RULE_PACKAGE_DETAILS rule_PACKAGE_DETAILS in rulePackageDetails) { foreach (string identity in rule_PACKAGE_DETAILS.RuleIDs) { RuleDefinitionDetails ruleDefinitionDetails2 = GetDlpSensitiveInformationType.GetRuleDefinitionDetails(instance, identity, locale); base.WriteObject(new PsDlpSensitiveInformationType(ruleDefinitionDetails2)); } } }