/** * NOTE: Have to be enabled with withErgonomicShortcuts * @return this builder */ public B withRestrictApiToFieldType() { config.setRestrictApiToFieldType(true); return getBuilder(); }
public B reservePrimaryKeyIndexForTypeWithPrimaryKey(boolean reservePrimaryKeyIndexForTypeWithPrimaryKey) { config.setReservePrimaryKeyIndexForTypeWithPrimaryKey(reservePrimaryKeyIndexForTypeWithPrimaryKey); return getBuilder(); }
public B withClassPostfix(String classPostfix) { config.setClassPostfix(classPostfix); return getBuilder(); }
@Test public void test() throws Exception { String apiClassName = "PrimitiveTypeTestAPI"; String packageName = "codegen.primitive.types"; runGenerator(apiClassName, packageName, Movie.class, builder -> builder .withErgonomicShortcuts().withPackageGrouping().withHollowPrimitiveTypes(true)); }
protected String hollowImplClassname(String typeName) { return HollowCodeGenerationUtils.hollowImplClassname(typeName, config.getClassPostfix(), config.isUseAggressiveSubstitutions(), config.isUseHollowPrimitiveTypes()); }
public B withGetterPrefix(String getterPrefix) { config.setGetterPrefix(getterPrefix); return getBuilder(); }
public B withAggressiveSubstitutions(boolean useAggressiveSubstitutions) { config.setUseAggressiveSubstitutions(useAggressiveSubstitutions); return getBuilder(); }
public B withBooleanFieldErgonomics(boolean useBooleanFieldErgonomics) { config.setUseBooleanFieldErgonomics(useBooleanFieldErgonomics); return getBuilder(); }
public B withVerboseToString(boolean useVerboseToString) { config.setUseVerboseToString(useVerboseToString); return getBuilder(); }
public B withPackageGrouping() { config.setUsePackageGrouping(true); return getBuilder(); }
public B withHollowPrimitiveTypes(boolean useHollowPrimitiveTypes) { config.setUseHollowPrimitiveTypes(useHollowPrimitiveTypes); return getBuilder(); }
/** * Use this method to specify to use sub packages in generated code instead of single package * * Defaults to false to be backwards compatible * * @param usePackageGrouping true if applied. */ public void setUsePackageGrouping(boolean usePackageGrouping) { config.setUsePackageGrouping(usePackageGrouping ); }
/** * If setRestrictApiToFieldType is true, api code only generates {@code get<FieldName>} with return type as per schema * * Defaults to false to be backwards compatible * * @param restrictApiToFieldType true if applied. */ public void setRestrictApiToFieldType(boolean restrictApiToFieldType) { config.setRestrictApiToFieldType(restrictApiToFieldType); }
/** * Use this method to override the default postfix "Hollow" for all generated Hollow object classes. * @param classPostfix the postfix for all generated Hollow object classes */ public void setClassPostfix(String classPostfix) { config.setClassPostfix(classPostfix); }
/** * Use this method to override generated classnames for type names corresponding to any class in the java.lang package. * * Defaults to false, which overrides only type names corresponding to a few select classes in java.lang. * * @param useAggressiveSubstitutions true if applied. */ public void setUseAggressiveSubstitutions(boolean useAggressiveSubstitutions) { config.setUseAggressiveSubstitutions(useAggressiveSubstitutions); }
/** * Use this method to specify to only generate PrimaryKeyIndex for Types that has PrimaryKey defined * * Defaults to false to be backwards compatible * * @param reservePrimaryKeyIndexForTypeWithPrimaryKey true if applied. */ public void reservePrimaryKeyIndexForTypeWithPrimaryKey(boolean reservePrimaryKeyIndexForTypeWithPrimaryKey) { config.setReservePrimaryKeyIndexForTypeWithPrimaryKey(reservePrimaryKeyIndexForTypeWithPrimaryKey); }
/** * Use this method to specify to use Hollow Primitive Types instead of generating them per project * * Defaults to false to be backwards compatible * * @param useHollowPrimitiveTypes true if applied. */ public void setUseHollowPrimitiveTypes(boolean useHollowPrimitiveTypes) { config.setUseHollowPrimitiveTypes(useHollowPrimitiveTypes); }
public HollowHashIndexGenerator(String packageName, String apiClassname, HollowDataset dataset, CodeGeneratorConfig config) { super(packageName, apiClassname, dataset, config); this.className = apiClassname + "HashIndex"; this.dataset = dataset; this.isListenToDataRefreah = config.isListenToDataRefresh(); }
/** * Use this method to specify to use new boolean field ergonomics for generated API * * Defaults to false to be backwards compatible * * @param useBooleanFieldErgonomics true if applied. */ public void setUseBooleanFieldErgonomics(boolean useBooleanFieldErgonomics) { config.setUseBooleanFieldErgonomics(useBooleanFieldErgonomics); }