147 } else { 148 command.add(mainClass); 149 } 150 command.add(Arrays.stream(options).collect(Collectors.joining(SPACE))); 151 return command.toString().trim().split("[\\s]+"); 152 } 153 154 /** 155 * Generate ModuleDescriptor object for explicit/auto based client/Service 156 * modules type. 157 */ 158 public ModuleDescriptor generateModuleDescriptor(boolean isService, 159 MODULE_TYPE moduleType, String moduleName, String pkg, 160 String serviceInterface, String serviceImpl, 161 String serviceModuleName, List<String> requiredModules, 162 boolean depends) { 163 164 final Builder builder; 165 if (moduleType == MODULE_TYPE.EXPLICIT) { 166 System.out.format(" %nGenerating ModuleDescriptor object"); 167 builder = ModuleDescriptor.module(moduleName).exports(pkg); 168 if (isService && serviceInterface != null && serviceImpl != null) { 169 builder.provides(serviceInterface, serviceImpl); 170 } else { 171 if (serviceInterface != null) { 172 builder.uses(serviceInterface); 173 } 174 if (depends) { 175 builder.requires(serviceModuleName); 176 } 177 } 178 } else { 179 System.out.format(" %nModuleDescriptor object not required."); 180 return null; 181 } 182 requiredModules.stream().forEach(reqMod -> builder.requires(reqMod)); 183 return builder.build(); 184 } 185 186 /** 187 * Generates service descriptor inside META-INF folder. 188 */ 189 public boolean createMetaInfServiceDescriptor( | 147 } else { 148 command.add(mainClass); 149 } 150 command.add(Arrays.stream(options).collect(Collectors.joining(SPACE))); 151 return command.toString().trim().split("[\\s]+"); 152 } 153 154 /** 155 * Generate ModuleDescriptor object for explicit/auto based client/Service 156 * modules type. 157 */ 158 public ModuleDescriptor generateModuleDescriptor(boolean isService, 159 MODULE_TYPE moduleType, String moduleName, String pkg, 160 String serviceInterface, String serviceImpl, 161 String serviceModuleName, List<String> requiredModules, 162 boolean depends) { 163 164 final Builder builder; 165 if (moduleType == MODULE_TYPE.EXPLICIT) { 166 System.out.format(" %nGenerating ModuleDescriptor object"); 167 builder = ModuleDescriptor.newModule(moduleName).exports(pkg); 168 if (isService && serviceInterface != null && serviceImpl != null) { 169 builder.provides(serviceInterface, List.of(serviceImpl)); 170 } else { 171 if (serviceInterface != null) { 172 builder.uses(serviceInterface); 173 } 174 if (depends) { 175 builder.requires(serviceModuleName); 176 } 177 } 178 } else { 179 System.out.format(" %nModuleDescriptor object not required."); 180 return null; 181 } 182 requiredModules.stream().forEach(reqMod -> builder.requires(reqMod)); 183 return builder.build(); 184 } 185 186 /** 187 * Generates service descriptor inside META-INF folder. 188 */ 189 public boolean createMetaInfServiceDescriptor( |