protected HollowAPIGenerator(String apiClassname, String packageName, HollowDataset dataset, Set<String> parameterizedTypes, boolean parameterizeAllClassNames, boolean useErgonomicShortcuts, Path destinationPath) { this.apiClassname = apiClassname; this.packageName = packageName; this.dataset = dataset; this.hasCollectionsInDataSet = hasCollectionsInDataSet(dataset); this.parameterizedTypes = parameterizedTypes; this.parameterizeClassNames = parameterizeAllClassNames; this.ergonomicShortcuts = useErgonomicShortcuts ? new HollowErgonomicAPIShortcuts(dataset) : HollowErgonomicAPIShortcuts.NO_SHORTCUTS; if (destinationPath != null && packageName != null && !packageName.trim().isEmpty()) { Path packagePath = Paths.get(packageName.replace(".", File.separator)); if (!destinationPath.toAbsolutePath().endsWith(packagePath)) { destinationPath = destinationPath.resolve(packagePath); } } this.destinationPath = destinationPath; }