コード例 #1
0
                /// <summary>
                /// Validate a call to the pipeline interface (a state transition)
                /// </summary>
                /// <param name="transition">The transition</param>
                /// <param name="validator">The validator instance</param>
                internal override void ValidateTransition(PipelineCall transition, NestedValidator validator)
                {
                    switch (transition)
                    {
                        case PipelineCall.SetCoordinateSystem:
                            return;
                        case PipelineCall.BeginPoint:
                            validator.Call(PointStart);
                            return;
                        case PipelineCall.BeginLineString:
                            validator.Call(LineStringStart);
                            return;
                        case PipelineCall.BeginPolygon:
                            validator.Call(PolygonStart);
                            return;
                        case PipelineCall.BeginMultiPoint:
                            validator.Call(MultiPoint);
                            return;
                        case PipelineCall.BeginMultiLineString:
                            validator.Call(MultiLineString);
                            return;
                        case PipelineCall.BeginMultiPolygon:
                            validator.Call(MultiPolygon);
                            return;
                        case PipelineCall.BeginCollection:
                            validator.Call(Collection);
                            return;
                        case PipelineCall.End:
                            validator.Return();
                            return;
                        case PipelineCall.BeginFullGlobe:
                            throw new FormatException(Strings.Validator_FullGlobeInCollection);
#if CURVE_SUPPORT
                case Transition.Begin_CircularString:
                    Call(CircularString);
                    return;

                case Transition.Begin_CompoundCurve:
                    Call(CompoundCurve);
                    return;

                case Transition.Begin_CurvePolygon:
                    Call(CurvePolygon);
                    return;
#endif
                        default:
                            ThrowExpected(PipelineCall.SetCoordinateSystem, PipelineCall.Begin, PipelineCall.End, transition);
                            return;
                    }
                }
コード例 #2
0
 /// <summary>
 /// Validate a call to the pipeline interface (a state transition)
 /// </summary>
 /// <param name="transition">The transition</param>
 /// <param name="validator">The validator instance</param>
 internal override void ValidateTransition(
     PipelineCall transition,
     NestedValidator validator)
 {
     switch (transition)
     {
         case PipelineCall.SetCoordinateSystem:
             validator.Call(BeginSpatial);
             return;
         default:
             ThrowExpected(PipelineCall.SetCoordinateSystem, transition);
             return;
     }
 }
コード例 #3
0
 /// <summary>
 /// Validate a call to the pipeline interface (a state transition)
 /// </summary>
 /// <param name="transition">The transition</param>
 /// <param name="validator">The validator instance</param>
 internal override void ValidateTransition(PipelineCall transition, NestedValidator validator)
 {
     switch (transition)
     {
         case PipelineCall.SetCoordinateSystem:
             return;
         case PipelineCall.BeginPolygon:
             validator.Call(PolygonStart);
             return;
         case PipelineCall.End:
             validator.Return();
             return;
         default:
             ThrowExpected(PipelineCall.SetCoordinateSystem, PipelineCall.BeginPolygon, PipelineCall.End, transition);
             return;
     }
 }