@Override public void itemsFormat(JsonFormatVisitable visitable, JavaType type) throws JsonMappingException { VisitorFormatWrapperImpl wrapper = new VisitorFormatWrapperImpl(_schemas, getProvider()); visitable.acceptJsonFormatVisitor(wrapper, type); _elementSchema = wrapper.getAvroSchema(); }
/** Visit recursively the type, or return a cached response */ public static AbstractType getTSTypeForHandler(ABaseTSJsonFormatVisitor<?> baseVisitor, JsonFormatVisitable handler, JavaType typeHint, Configuration conf) throws JsonMappingException { AbstractType computedType = baseVisitor.getComputedTypes().get(typeHint); if (computedType != null) { return computedType; } TSJsonFormatVisitorWrapper visitor = new TSJsonFormatVisitorWrapper(baseVisitor, conf); handler.acceptJsonFormatVisitor(visitor, typeHint); baseVisitor.getComputedTypes().put(typeHint, visitor.getType()); return visitor.getType(); }
@Override public void valueFormat(JsonFormatVisitable handler, JavaType valueType) throws JsonMappingException { VisitorFormatWrapperImpl wrapper = new VisitorFormatWrapperImpl(_schemas, getProvider()); handler.acceptJsonFormatVisitor(wrapper, valueType); _valueSchema = wrapper.getAvroSchema(); } }
@Override public void itemsFormat(JsonFormatVisitable handler, JavaType elementType) throws JsonMappingException { TSJsonFormatVisitorWrapper visitorWrapper = new TSJsonFormatVisitorWrapper(this, conf); handler.acceptJsonFormatVisitor(visitorWrapper, elementType); type.setItemType(visitorWrapper.getType()); }
@Override public void property(String name, JsonFormatVisitable handler, JavaType type) throws JsonMappingException { VisitorFormatWrapperImpl wrapper = new VisitorFormatWrapperImpl(_schemas, getProvider()); handler.acceptJsonFormatVisitor(wrapper, type); Schema schema = wrapper.getAvroSchema(); _fields.add(new Schema.Field(name, schema, null, null)); }
@Override public void optionalProperty(String name, JsonFormatVisitable handler, JavaType type) throws JsonMappingException { VisitorFormatWrapperImpl wrapper = new VisitorFormatWrapperImpl(_schemas, getProvider()); handler.acceptJsonFormatVisitor(wrapper, type); Schema schema = wrapper.getAvroSchema(); if (!type.isPrimitive()) { schema = AvroSchemaHelper.unionWithNull(schema); } _fields.add(new Schema.Field(name, schema, null, null)); }
protected JsonSchema propertySchema(JsonFormatVisitable handler, JavaType propertyTypeHint) throws JsonMappingException { // check if we've seen this sub-schema already and return a reference-schema if we have if (visitorContext != null) { String seenSchemaUri = visitorContext.getSeenSchemaUri(propertyTypeHint); if (seenSchemaUri != null) { return new ReferenceSchema(seenSchemaUri); } } SchemaFactoryWrapper visitor = wrapperFactory.getWrapper(getProvider(), visitorContext); handler.acceptJsonFormatVisitor(visitor, propertyTypeHint); return visitor.finalSchema(); }
protected JsonSchema propertySchema(JsonFormatVisitable handler, JavaType propertyTypeHint) throws JsonMappingException { // check if we've seen this sub-schema already and return a reference-schema if we have if (visitorContext != null) { String seenSchemaUri = visitorContext.getSeenSchemaUri(propertyTypeHint); if (seenSchemaUri != null) { return new ReferenceSchema(seenSchemaUri); } } SchemaFactoryWrapper visitor = wrapperFactory.getWrapper(getProvider(), visitorContext); handler.acceptJsonFormatVisitor(visitor, propertyTypeHint); return visitor.finalSchema(); }
protected JsonSchema propertySchema(JsonFormatVisitable handler, JavaType propertyTypeHint) throws JsonMappingException { // check if we've seen this argument's sub-schema already and return a reference-schema if we have if (visitorContext != null) { String seenSchemaUri = visitorContext.getSeenSchemaUri(propertyTypeHint); if (seenSchemaUri != null) { return new ReferenceSchema(seenSchemaUri); } } SchemaFactoryWrapper visitor = wrapperFactory.getWrapper(getProvider(), visitorContext); handler.acceptJsonFormatVisitor(visitor, propertyTypeHint); return visitor.finalSchema(); }
protected JsonSchema propertySchema(JsonFormatVisitable handler, JavaType propertyTypeHint) throws JsonMappingException { // check if we've seen this argument's sub-schema already and return a reference-schema if we have if (visitorContext != null) { String seenSchemaUri = visitorContext.getSeenSchemaUri(propertyTypeHint); if (seenSchemaUri != null) { return new ReferenceSchema(seenSchemaUri); } } SchemaFactoryWrapper visitor = wrapperFactory.getWrapper(getProvider(), visitorContext); handler.acceptJsonFormatVisitor(visitor, propertyTypeHint); return visitor.finalSchema(); }
@Override public void itemsFormat(JsonFormatVisitable handler, JavaType contentType) throws JsonMappingException { // An array of object matches any values, thus we leave the schema empty. if (contentType.getRawClass() != Object.class) { // check if we've seen this sub-schema already and return a reference-schema if we have if (visitorContext != null) { String seenSchemaUri = visitorContext.getSeenSchemaUri(contentType); if (seenSchemaUri != null) { schema.setItemsSchema(new ReferenceSchema(seenSchemaUri)); return; } } SchemaFactoryWrapper visitor = wrapperFactory.getWrapper(getProvider(), visitorContext); handler.acceptJsonFormatVisitor(visitor, contentType); schema.setItemsSchema(visitor.finalSchema()); } }
@Override public void itemsFormat(JsonFormatVisitable handler, JavaType contentType) throws JsonMappingException { // An array of object matches any values, thus we leave the schema empty. if (contentType.getRawClass() != Object.class) { // check if we've seen this sub-schema already and return a reference-schema if we have if (visitorContext != null) { String seenSchemaUri = visitorContext.getSeenSchemaUri(contentType); if (seenSchemaUri != null) { schema.setItemsSchema(new ReferenceSchema(seenSchemaUri)); return; } } SchemaFactoryWrapper visitor = wrapperFactory.getWrapper(getProvider(), visitorContext); handler.acceptJsonFormatVisitor(visitor, contentType); schema.setItemsSchema(visitor.finalSchema()); } }