/// <summary> /// Add incremental partition trait "is.partition.incremental" and supplied arguments to the given data partition pattern. /// </summary> /// <param name="patternDef"> The data partition pattern. </param> /// <param name="type"> The CdmIncrementalPartitionType, this is a required argument for the incremental trait. </param> /// <param name="fullDataPartitionPatternName"> The name of the full data partition pattern name, this is optional. </param> private static void AddIncrementalPartitionTrait(CdmDataPartitionPatternDefinition patternDef, CdmIncrementalPartitionType type, string fullDataPartitionPatternName = null) { var typeTuple = new Tuple <string, dynamic>("type", type.ToString()); var arguments = new List <Tuple <string, dynamic> >() { typeTuple }; if (!string.IsNullOrEmpty(fullDataPartitionPatternName)) { arguments.Add(new Tuple <string, dynamic>("fullDataPartitionPatternName", fullDataPartitionPatternName)); } patternDef.ExhibitsTraits.Add("is.partition.incremental", arguments); }
public static DataPartitionPattern ToData(CdmDataPartitionPatternDefinition instance, ResolveOptions resOpt, CopyOptions options) { var result = new DataPartitionPattern { Name = instance.Name, LastFileStatusCheckTime = TimeUtils.GetFormattedDateString(instance.LastFileStatusCheckTime), LastFileModifiedTime = TimeUtils.GetFormattedDateString(instance.LastFileModifiedTime), Explanation = instance.Explanation, RootLocation = instance.RootLocation, RegularExpression = instance.RegularExpression.ToString(), Parameters = instance.Parameters, SpecializedSchema = instance.SpecializedSchema, ExhibitsTraits = CopyDataUtils.ListCopyData(resOpt, instance.ExhibitsTraits, options) }; return(result); }
private static void ErrorMessage(CdmCorpusContext ctx, string methodName, string corpusPath, CdmDataPartitionPatternDefinition obj, bool isIncremental) { if (isIncremental) { Logger.Error(ctx, Tag, methodName, corpusPath, CdmLogCode.ErrPersistIncrementalConversionError, obj.Name, Constants.IncrementalTraitName, nameof(CdmLocalEntityDeclarationDefinition.DataPartitionPatterns)); } else { Logger.Error(ctx, Tag, methodName, corpusPath, CdmLogCode.ErrPersistNonIncrementalConversionError, obj.Name, Constants.IncrementalTraitName, nameof(CdmLocalEntityDeclarationDefinition.IncrementalPartitionPatterns)); } }