Пример #1
0
        internal static DataClassificationPresentationObject Create(string ruleIdentifier, DataClassificationLocalizableDetails defaultRuleDetails, XElement ruleElement, XElement resourceElement, ClassificationRuleCollectionPresentationObject rulePackPresentationObject)
        {
            ArgumentValidator.ThrowIfNullOrEmpty("ruleIdentifier", ruleIdentifier);
            ArgumentValidator.ThrowIfNull("defaultRuleDetails", defaultRuleDetails);
            ArgumentValidator.ThrowIfNull("ruleElement", ruleElement);
            ArgumentValidator.ThrowIfNull("resourceElement", resourceElement);
            ArgumentValidator.ThrowIfNull("rulePackPresentationObject", rulePackPresentationObject);
            MultiValuedProperty <Fingerprint> multiValuedProperty = null;

            if (rulePackPresentationObject.IsFingerprintRuleCollection && ruleElement.Document != null)
            {
                multiValuedProperty = XmlProcessingUtils.ReadAllReferredFingerprints(ruleElement);
            }
            return(new DataClassificationPresentationObject
            {
                defaultDetails = defaultRuleDetails,
                localizedNames = XmlProcessingUtils.ReadAllRuleNames(resourceElement),
                localizedDescriptions = XmlProcessingUtils.ReadAllRuleDescriptions(resourceElement),
                fingerprints = multiValuedProperty,
                Identity = DataClassificationPresentationObject.CreateDataClassificationIdentifier(ruleIdentifier, rulePackPresentationObject),
                ClassificationType = (rulePackPresentationObject.IsFingerprintRuleCollection ? ClassificationTypeEnum.Fingerprint : DataClassificationPresentationObject.Parse(ruleElement.Name.LocalName)),
                ClassificationRuleCollection = rulePackPresentationObject,
                RecommendedConfidence = XmlProcessingUtils.ReadRuleRecommendedConfidence(ruleElement),
                MinEngineVersion = XmlProcessingUtils.GetRulePackElementVersion(ruleElement)
            });
        }
Пример #2
0
 internal static DataClassificationPresentationObject Create(ClassificationRuleCollectionPresentationObject rulePackPresentationObject)
 {
     return(new DataClassificationPresentationObject
     {
         defaultDetails = new DataClassificationLocalizableDetails(),
         localizedNames = new Dictionary <CultureInfo, string>(),
         localizedDescriptions = new Dictionary <CultureInfo, string>(),
         ClassificationRuleCollection = rulePackPresentationObject,
         Identity = DataClassificationPresentationObject.CreateDataClassificationIdentifier(Guid.NewGuid().ToString(), rulePackPresentationObject),
         ClassificationType = (rulePackPresentationObject.IsFingerprintRuleCollection ? ClassificationTypeEnum.Fingerprint : ClassificationTypeEnum.Affinity),
         RecommendedConfidence = new uint?(75U),
         MinEngineVersion = ClassificationDefinitionConstants.TextProcessorTypeToVersions[TextProcessorType.Fingerprint],
         IsDirty = true
     });
 }