package betsy.bpel.engines; import java.nio.file.Path; import betsy.bpel.model.BPELProcess; import betsy.common.config.Configuration; import betsy.common.tasks.FileTasks; import betsy.common.tasks.ZipTasks; import org.apache.log4j.Logger; public class BPELEnginePackageBuilder { private static final Logger log = Logger.getLogger(BPELEnginePackageBuilder.class); public void createFolderAndCopyProcessFilesToTarget(BPELProcess process) { // engine independent package steps FileTasks.mkdirs(process.getTargetPath()); FileTasks.mkdirs(process.getTargetProcessPath()); log.info("Copying BPEL, WSDL and additional files to target directory"); FileTasks.copyFileIntoFolder(process.getProcess(), process.getTargetProcessPath()); FileTasks.replaceTokenInFile(process.getTargetProcessFilePath(), "../", ""); for (Path wsdlPath : process.getWsdlPaths()) { FileTasks.copyFileIntoFolder(wsdlPath, process.getTargetProcessPath()); } for (Path additionalPath : process.getAdditionalFilePaths()) { FileTasks.copyFileIntoFolder(additionalPath, process.getTargetProcessPath()); } } public void bpelFolderToZipFile(BPELProcess process) { FileTasks.mkdirs(process.getTargetPackagePath()); ZipTasks.zipFolder(process.getTargetPackageFilePath(), process.getTargetProcessPath()); } public void replaceEndpointTokenWithValue(final BPELProcess process) { log.info("Setting WSDL endpoint to " + process.getEndpoint()); FileTasks.replaceTokenInFile(process.getTargetProcessPath().resolve("TestInterface.wsdl"), "ENDPOINT_URL", process.getEndpoint()); } public void replacePartnerTokenWithValue(BPELProcess process) { log.info("Setting Partner Address to " + Configuration.get("partner.ipAndPort")); FileTasks.replaceTokensInFolder(process.getTargetProcessPath(), "PARTNER_IP_AND_PORT", Configuration.get("partner.ipAndPort")); } }