Rev 6914 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package com.erggroup.buildtool.escrow;import com.erggroup.buildtool.ripple.BuildFile;import com.erggroup.buildtool.ripple.BuildFile.BuildFileState;import com.erggroup.buildtool.ripple.ReleaseManager;import com.erggroup.buildtool.ripple.RippleEngine;import java.io.File;import java.io.FileWriter;import java.io.IOException;public class ESCROWBuild{/*** @aggregation shared*/protected ReleaseManager mReleaseManager;/*** @aggregation shared*/protected RippleEngine mRippleEngine;public static void main(String[] args){String usage =new String("Usage: java -jar escrowD.jar -c connectionString -u username -p password -b BOM id");String connectionString = new String();String username = new String();String password = new String();String bomID = new String();for (int optind = 0; optind < args.length; optind++){if (args[optind].equals("-c") && optind < (args.length - 1)){connectionString = args[++optind];}else if (args[optind].equals("-u") && optind < (args.length - 1)){username = args[++optind];}else if (args[optind].equals("-p") && optind < (args.length - 1)){password = args[++optind];}else if (args[optind].equals("-b") && optind < (args.length - 1)){bomID = args[++optind];}}if (connectionString.compareTo("") == 0 ||username.compareTo("") == 0 || password.compareTo("") == 0 ||bomID.compareTo("") == 0){System.out.println(usage);System.exit(1);}ReleaseManager releaseManager = new ReleaseManager(connectionString, username, password);RippleEngine rippleEngine = new RippleEngine(releaseManager, Integer.parseInt(bomID), false);generateEscrowFiles(rippleEngine, ".");}/** Generate the Escrow Files* Factored out to improve testability*/public static void generateEscrowFiles(RippleEngine rippleEngine, String basePath){try{rippleEngine.collectMetaData();rippleEngine.planRelease(false);}catch( Exception e ){System.out.println("ESCROWBuild::main caught Exception " + e.getMessage());}File cwd = new File( basePath );String buildFileName = new String();int buildFileNumber = 1;BuildFile buildFile;try{// Write out all the Escrow build<n>.xml filesbuildFile = rippleEngine.getFirstBuildFileContent();while (buildFile.state != BuildFileState.Empty){buildFileName = "build";buildFileName += buildFileNumber;buildFileName += ".xml";FileWriter buildFileWriter = new FileWriter(new File(cwd, buildFileName));buildFileWriter.write(buildFile.content);buildFileWriter.close();buildFileNumber++;buildFile = rippleEngine.getNextBuildFileContent();}// Write out the Escrow Set Up file{File f = new File(cwd, "escrow_set_up");FileWriter fw = new FileWriter(f);fw.write(rippleEngine.getEscrowSetUp());fw.close();}// Write out the Escrow Raw data as a CSV file{File f = new File(cwd, "raw_data.csv");FileWriter fw = new FileWriter(f);fw.write(rippleEngine.getRawData());fw.close();}}catch( IOException e ){System.out.println("ESCROWBuild::main caught IOException");}}}