Forum Discussion
tstack
8 years agoFormer Employee
Your Snap needs to implement the InputSchemaProvider interface in order for the Mapper to show any target schema. An example implementation that should show two fields, ‘field1’ and ‘field2’, would be:
@Override
public void defineInputSchema(SchemaProvider provider) {
for (String inputViewName : provider.getRegisteredViewNames()) {
Schema field1Schema = provider.createSchema(SnapType.STRING, "field1");
Schema field2Schema = provider.createSchema(SnapType.STRING, "field2");
provider.getSchemaBuilder(inputViewName)
.withChildSchema(field1Schema)
.withChildSchema(field2Schema)
.build();
}
}