private static void HandleObjectType( ITypeCompletionContext completionContext, ObjectTypeDefinition definition, ISpatialConvention convention) { foreach (var field in definition.Fields) { foreach (var arg in field.Arguments) { if (completionContext.IsNamedType <IGeoJsonInputType>(arg.Type)) { arg.Formatters.Add( new GeometryTransformerInputFormatter( convention.TransformerFactory, convention.DefaultSrid)); } } if (completionContext.IsNamedType <IGeoJsonObjectType>(field.Type)) { var argument = ArgumentDescriptor.New( completionContext.DescriptorContext, CrsFieldName); argument .Type <IntType>() .Description(Transformation_Argument_Crs_Description); field.Arguments.Add(argument.CreateDefinition()); field.MiddlewareComponents.Insert(0, FieldClassMiddlewareFactory.Create <GeometryTransformationMiddleware>( (typeof(IGeometryTransformerFactory), convention.TransformerFactory), (typeof(int), convention.DefaultSrid))); } } }
private static void HandleDirectiveType( ITypeCompletionContext completionContext, DirectiveTypeDefinition definition, ISpatialConvention convention) { foreach (var arg in definition.Arguments) { if (completionContext.IsNamedType <IGeoJsonInputType>(arg.Type)) { arg.Formatters.Add( new GeometryTransformerInputFormatter( convention.TransformerFactory, convention.DefaultSrid)); } } }
private static void HandleInputObjectType( ITypeCompletionContext completionContext, InputObjectTypeDefinition definition, ISpatialConvention convention) { foreach (var field in definition.Fields) { if (completionContext.IsNamedType <IGeoJsonInputType>(field.Type)) { field.Formatters.Add( new GeometryTransformerInputFormatter( convention.TransformerFactory, convention.DefaultSrid)); } } }