protected void generateSourceFile(HollowJavaFileGenerator generator) throws IOException { this.generateFile(destinationPath.toFile(), generator); }
/** * Generate files under the specified directory * * @param directory the directory under which to generate files * @throws IOException if the files cannot be generated * @deprecated construct {@code HollowAPIGenerator} with a {@code destinationPath} then call {@link #generateSourceFiles()} */ public void generateFiles(File directory) throws IOException { if (packageName != null && !packageName.trim().isEmpty()) { String packageDir = packageName.replace(".", File.separator); if (!directory.getAbsolutePath().endsWith(packageDir)) { directory = new File(directory, packageDir); } } directory.mkdirs(); HollowAPIClassJavaGenerator apiClassGenerator = new HollowAPIClassJavaGenerator(packageName, apiClassname, dataset, parameterizeClassNames, config); HollowAPIFactoryJavaGenerator apiFactoryGenerator = new HollowAPIFactoryJavaGenerator(packageName, apiClassname, dataset, config); HollowHashIndexGenerator hashIndexGenerator = new HollowHashIndexGenerator(packageName, apiClassname, dataset, config); generateFile(directory, apiClassGenerator); generateFile(directory, apiFactoryGenerator); generateFile(directory, hashIndexGenerator); generateFilesForHollowSchemas(directory); }
if (config.isUseHollowPrimitiveTypes() && HollowCodeGenerationUtils.isPrimitiveType(type)) continue; // skip if using hollow primitive type generateFile(directory, getStaticAPIGenerator(schema)); generateFile(directory, getHollowObjectGenerator(schema)); generateFile(directory, getHollowFactoryGenerator(schema)); generateFile(directory, new HollowObjectDelegateInterfaceGenerator(packageName, objSchema, ergonomicShortcuts, dataset, config)); generateFile(directory, new HollowObjectDelegateCachedImplGenerator(packageName, objSchema, ergonomicShortcuts, dataset, config)); generateFile(directory, new HollowObjectDelegateLookupImplGenerator(packageName, objSchema, ergonomicShortcuts, dataset, config)); generateFile(directory, new HollowDataAccessorGenerator(packageName, apiClassname, objSchema, dataset, config)); if (!config.isReservePrimaryKeyIndexForTypeWithPrimaryKey()) { generateFile(directory, new LegacyHollowPrimaryKeyIndexGenerator(packageName, apiClassname, objSchema, dataset, config)); } else if ((objSchema).getPrimaryKey() != null) { generateFile(directory, new HollowPrimaryKeyIndexGenerator(dataset, packageName, apiClassname, objSchema, config)); generateFile(directory, new HollowUniqueKeyIndexGenerator(packageName, apiClassname, objSchema, dataset, config));