示例#1
0
 public static FileError ToPositionOutOfRange(this IDbaseFileRecordProblemBuilder builder, double value)
 {
     return(builder
            .Error(nameof(ToPositionOutOfRange))
            .WithParameter(new ProblemParameter("Actual", value.ToString(Provider)))
            .Build());
 }
示例#2
0
        // width

        public static FileError WidthOutOfRange(this IDbaseFileRecordProblemBuilder builder, int count)
        {
            return(builder
                   .Error(nameof(WidthOutOfRange))
                   .WithParameter(new ProblemParameter("Actual", count.ToString()))
                   .Build());
        }
示例#3
0
 public static FileError EndRoadNodeIdOutOfRange(this IDbaseFileRecordProblemBuilder builder, int value)
 {
     return(builder
            .Error(nameof(EndRoadNodeIdOutOfRange))
            .WithParameter(new ProblemParameter("Actual", value.ToString()))
            .Build());
 }
示例#4
0
 public static FileError OrganizationIdOutOfRange(this IDbaseFileRecordProblemBuilder builder, string value)
 {
     return(builder
            .Error(nameof(OrganizationIdOutOfRange))
            .WithParameter(new ProblemParameter("Actual", value))
            .Build());
 }
示例#5
0
        // record

        public static FileError HasDbaseRecordFormatError(this IDbaseFileRecordProblemBuilder builder, Exception exception)
        {
            if (exception == null)
            {
                throw new ArgumentNullException(nameof(exception));
            }

            return(builder
                   .Error(nameof(HasDbaseRecordFormatError))
                   .WithParameter(new ProblemParameter("Exception", exception.ToString()))
                   .Build());
        }
示例#6
0
        // road segment

        public static FileError IdentifierNotUnique(this IDbaseFileRecordProblemBuilder builder,
                                                    RoadSegmentId identifier,
                                                    RecordNumber takenByRecordNumber)
        {
            return(builder
                   .Error(nameof(IdentifierNotUnique))
                   .WithParameters(
                       new ProblemParameter("Identifier", identifier.ToString()),
                       new ProblemParameter("TakenByRecordNumber", takenByRecordNumber.ToString())
                       )
                   .Build());
        }
示例#7
0
        // numbered road

        public static FileError NotNumberedRoadNumber(this IDbaseFileRecordProblemBuilder builder, string number)
        {
            if (number == null)
            {
                throw new ArgumentNullException(nameof(number));
            }

            return(builder
                   .Error(nameof(NotNumberedRoadNumber))
                   .WithParameter(new ProblemParameter("Number", number.ToUpperInvariant()))
                   .Build());
        }
示例#8
0
        public static FileError RequiredFieldIsNull(this IDbaseFileRecordProblemBuilder builder, DbaseField field)
        {
            if (field == null)
            {
                throw new ArgumentNullException(nameof(field));
            }

            return(builder
                   .Error(nameof(RequiredFieldIsNull))
                   .WithParameter(new ProblemParameter("Field", field.Name.ToString()))
                   .Build());
        }
示例#9
0
        // surface

        public static FileError SurfaceTypeMismatch(this IDbaseFileRecordProblemBuilder builder, int actual)
        {
            return(builder
                   .Error(nameof(SurfaceTypeMismatch))
                   .WithParameter(
                       new ProblemParameter(
                           "ExpectedOneOf",
                           string.Join(",", RoadSegmentSurfaceType.ByIdentifier.Keys.Select(key => key.ToString()))
                           )
                       )
                   .WithParameter(new ProblemParameter("Actual", actual.ToString()))
                   .Build());
        }
示例#10
0
 public static FileError RoadSegmentCategoryMismatch(this IDbaseFileRecordProblemBuilder builder, string actual)
 {
     return(builder
            .Error(nameof(RoadSegmentCategoryMismatch))
            .WithParameter(
                new ProblemParameter(
                    "ExpectedOneOf",
                    string.Join(",", RoadSegmentCategory.ByIdentifier.Keys.Select(key => key))
                    )
                )
            .WithParameter(new ProblemParameter("Actual", actual))
            .Build());
 }
示例#11
0
 public static FileError GradeSeparatedJunctionTypeMismatch(this IDbaseFileRecordProblemBuilder builder, int value)
 {
     return(builder
            .Error(nameof(GradeSeparatedJunctionTypeMismatch))
            .WithParameter(
                new ProblemParameter(
                    "ExpectedOneOf",
                    string.Join(",", GradeSeparatedJunctionType.ByIdentifier.Keys.Select(key => key.ToString()))
                    )
                )
            .WithParameter(new ProblemParameter("Actual", value.ToString()))
            .Build());
 }
示例#12
0
 public static FileError IdentifierZero(this IDbaseFileRecordProblemBuilder builder)
 {
     return(builder.Error(nameof(IdentifierZero)).Build());
 }