@Override
public ModuleOptionsMetadata resolve(ModuleDefinition moduleDefinition) {
List<ModuleOptionsMetadata> moms = new ArrayList<ModuleOptionsMetadata>();
ModuleType type = moduleDefinition.getType();
if (type == source || type == processor) {
moms.add(new PojoModuleOptionsMetadata(OutputOptionsMetadata.class, conversionService));
}
if (type == sink || type == processor) {
moms.add(new PojoModuleOptionsMetadata(InputOptionsMetadata.class, conversionService));
}
// Don't force deep layering if it's not needed
switch (moms.size()) {
case 0: