public static String getSchemaTypeAsSqlType(final Schema.Type type) { final String sqlType = TYPE_MAP.get(type.name()); if (sqlType == null) { throw new IllegalArgumentException("Unknown schema type: " + type); } return sqlType; }
assertThat(keySchema.getString("type")).isEqualToIgnoringCase(Schema.Type.STRUCT.name()); assertThat(keySchema.getBoolean("optional")).isEqualTo(false); Array keySchemaFields = keySchema.getArray("fields"); assertThat(valueSchema.getString("type")).isEqualToIgnoringCase(Schema.Type.STRUCT.name()); assertThat(valueSchema.getBoolean("optional")).isEqualTo(false); Array valueSchemaFields = valueSchema.getArray("fields");
Type() { this.name = this.name().toLowerCase(Locale.ROOT); }
assertThat(keySchema.getString("type")).isEqualToIgnoringCase(Schema.Type.STRUCT.name()); assertThat(keySchema.getBoolean("optional")).isEqualTo(false); Array keySchemaFields = keySchema.getArray("fields"); assertThat(valueSchema.getString("type")).isEqualToIgnoringCase(Schema.Type.STRUCT.name()); assertThat(valueSchema.getBoolean("optional")).isEqualTo(false); Array valueSchemaFields = valueSchema.getArray("fields");
protected void assertFieldSchema(Document doc, String fieldName, Schema.Type type, boolean optional) { assertThat(doc.getString("field")).isEqualTo(fieldName); assertThat(doc.getString("type")).isEqualToIgnoringCase(type.name()); assertThat(doc.getBoolean("optional")).isEqualTo(optional); }
private static org.apache.avro.Schema getAvroSchemaForField( final String namespace, final String fieldName, final Schema fieldSchema ) { switch (fieldSchema.type()) { case STRING: return unionWithNull(create(org.apache.avro.Schema.Type.STRING)); case BOOLEAN: return unionWithNull(create(org.apache.avro.Schema.Type.BOOLEAN)); case INT32: return unionWithNull(create(org.apache.avro.Schema.Type.INT)); case INT64: return unionWithNull(create(org.apache.avro.Schema.Type.LONG)); case FLOAT64: return unionWithNull(create(org.apache.avro.Schema.Type.DOUBLE)); case ARRAY: return unionWithNull(createArray( getAvroSchemaForField(namespace, fieldName, fieldSchema.valueSchema()))); case MAP: return unionWithNull(createMap( getAvroSchemaForField(namespace, fieldName, fieldSchema.valueSchema()))); case STRUCT: return unionWithNull(buildAvroSchema(namespace, fieldName, fieldSchema)); default: throw new KsqlException("Unsupported AVRO type: " + fieldSchema.type().name()); } }
protected void assertFieldSchema(Document doc, String fieldName, Schema.Type type, boolean optional) { assertThat(doc.getString("field")).isEqualTo(fieldName); assertThat(doc.getString("type")).isEqualToIgnoringCase(type.name()); assertThat(doc.getBoolean("optional")).isEqualTo(optional); }