/// <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; } }
/// <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; } }
/// <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; } }