public QaLineConnectionFieldValues( [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineClasses))][NotNull] IList <IFeatureClass> lineClasses, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFields))][NotNull] IList <string> lineFields, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFieldValuesConstraint))] LineFieldValuesConstraint lineFieldValuesConstraint, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointClass))][NotNull] IFeatureClass pointClass, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointField))][CanBeNull] string pointField, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointFieldValuesConstraint))] PointFieldValuesConstraint pointFieldValuesConstraint, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_allowedPointsExpression))][CanBeNull] string allowedPointsExpression) : this(lineClasses, lineFields, lineFieldValuesConstraint, new[] { pointClass }, string.IsNullOrEmpty(pointField) ? null : new[] { pointField }, pointFieldValuesConstraint, string.IsNullOrEmpty(allowedPointsExpression) ? null : new[] { allowedPointsExpression }) { }
public QaLineConnectionFieldValues( [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineClasses))][NotNull] IList <IFeatureClass> lineClasses, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFields))][NotNull] IList <string> lineFields, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFieldValuesConstraint))] LineFieldValuesConstraint lineFieldValuesConstraint, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointClasses))][NotNull] IList <IFeatureClass> pointClasses, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointFields))][CanBeNull] IList <string> pointFields, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointFieldValuesConstraint))] PointFieldValuesConstraint pointFieldValuesConstraint, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_allowedPointsExpressions))][CanBeNull] IList <string> allowedPointsExpressions) : base(CastToTables(lineClasses, pointClasses), tolerance: 0, includeBorderNodes: false, nonNetworkClassIndexList: null) { Assert.ArgumentNotNull(lineClasses, nameof(lineClasses)); Assert.ArgumentNotNull(lineFields, nameof(lineFields)); Assert.ArgumentNotNull(pointClasses, nameof(pointClasses)); Assert.ArgumentCondition( lineFields.Count == 1 || lineFields.Count == lineClasses.Count, "lineFields must be either a single field that exists in all lineClasses, or one field per lineClass"); Assert.ArgumentCondition( pointFields == null || pointFields.Count == 0 || pointFields.Count == 1 || pointFields.Count == pointClasses.Count, "pointFields must be either null, a single field that exists in all pointClasses, or one field per pointClass"); Assert.ArgumentCondition( allowedPointsExpressions == null || allowedPointsExpressions.Count == 0 || allowedPointsExpressions.Count == 1 || allowedPointsExpressions.Count == pointClasses.Count, "allowedPointsExpressions must be either null, a single expression that exists in all pointClasses, or one expression per pointClass"); _lineFields = lineFields.ToList(); _lineFieldValuesConstraint = lineFieldValuesConstraint; _pointClasses = pointClasses; _pointFields = pointFields != null && pointFields.Count > 0 ? pointFields : null; _pointFieldValuesConstraint = pointFieldValuesConstraint; _allowedPointsExpressions = allowedPointsExpressions != null && allowedPointsExpressions.Count > 0 ? allowedPointsExpressions : null; _pointClassesMinIndex = lineClasses.Count; _pointClassesMaxIndex = _pointClassesMinIndex + pointClasses.Count; _usePointFields = _pointFields != null; }
public QaLineConnectionFieldValues( [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineClass))][NotNull] IFeatureClass lineClass, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineField))][NotNull] string lineField, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFieldValuesConstraint))] LineFieldValuesConstraint lineFieldValuesConstraint, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointClass))][NotNull] IFeatureClass pointClass, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointField))][CanBeNull] string pointField, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointFieldValuesConstraint))] PointFieldValuesConstraint pointFieldValuesConstraint) : this(new[] { lineClass }, new[] { lineField }, lineFieldValuesConstraint, pointClass, pointField, pointFieldValuesConstraint) { }
public QaLineConnectionFieldValues( [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineClasses))][NotNull] IList <IFeatureClass> lineClasses, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFields))][NotNull] IList <string> lineFields, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_lineFieldValuesConstraint))] LineFieldValuesConstraint lineFieldValuesConstraint, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointClass))][NotNull] IFeatureClass pointClass, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointField))][CanBeNull] string pointField, [Doc(nameof(DocStrings.QaLineConnectionFieldValues_pointFieldValuesConstraint))] PointFieldValuesConstraint pointFieldValuesConstraint) : this( lineClasses, lineFields, lineFieldValuesConstraint, pointClass, pointField, // ReSharper disable once IntroduceOptionalParameters.Global pointFieldValuesConstraint, null) { }