public static String delegateInterfaceName(HollowSchema schema) { if(schema instanceof HollowObjectSchema) return delegateInterfaceName(schema.getName()); if(schema instanceof HollowListSchema) return HollowListDelegate.class.getSimpleName(); if(schema instanceof HollowSetSchema) return HollowSetDelegate.class.getSimpleName(); if(schema instanceof HollowMapSchema) return HollowMapDelegate.class.getSimpleName(); throw new UnsupportedOperationException("What kind of schema is a " + schema.getClass().getSimpleName() + "?"); }
private void appendDelegateAccessor(StringBuilder classBuilder) { classBuilder.append(" protected ").append(delegateInterfaceName(schema.getName())).append(" delegate() {\n"); classBuilder.append(" return (").append(delegateInterfaceName(schema.getName())).append(")delegate;\n"); classBuilder.append(" }\n\n"); }
private void appendConstructor(StringBuilder classBuilder) { classBuilder.append(" public " + className + "(" + delegateInterfaceName(schema.getName()) + " delegate, int ordinal) {\n"); classBuilder.append(" super(delegate, ordinal);\n"); classBuilder.append(" }\n\n"); }
public HollowObjectDelegateInterfaceGenerator(String packageName, HollowObjectSchema schema, HollowErgonomicAPIShortcuts ergonomicShortcuts, HollowDataset dataset, CodeGeneratorConfig config) { super(packageName, schema, ergonomicShortcuts, dataset, config); this.className = delegateInterfaceName(schema.getName()); }
builder.append("public class ").append(className).append(" extends HollowObjectAbstractDelegate implements ").append(delegateInterfaceName(schema.getName())).append(" {\n\n");
builder.append("public class ").append(className).append(" extends HollowObjectAbstractDelegate implements HollowCachedDelegate, ").append(delegateInterfaceName(schema.getName())).append(" {\n\n");