Example usage for org.apache.commons.cli MissingOptionException printStackTrace

List of usage examples for org.apache.commons.cli MissingOptionException printStackTrace

Introduction

In this page you can find the example usage for org.apache.commons.cli MissingOptionException printStackTrace.

Prototype

public void printStackTrace() 

Source Link

Document

Prints this throwable and its backtrace to the standard error stream.

Usage

From source file:com.aguin.stock.recommender.UserOptions.java

public static void main(String[] args) {
    options = new Options();
    Option optU = OptionBuilder.hasArg().withArgName("uid").isRequired(true).withType(String.class)
            .withDescription(/*from  w  w w  . j av  a  2 s  .c o  m*/
                    "User ID : must be a valid email address which serves as the unique identity of the portfolio")
            .create("u");

    Option optI = OptionBuilder.hasOptionalArgs().withArgName("item").withType(String.class).isRequired(false)
            .withDescription(
                    "Stock(s) in your portfolio: Print all stocks selected by this option and preferences against them")
            .create("i");

    Option optP = OptionBuilder.hasOptionalArgs().withArgName("pref").isRequired(false).withType(Long.class)
            .withDescription(
                    "Preference(s) against stocks in portfolio : Print all preferences specified in option and all stocks listed against that preference. Multiple preferences may be specified to draw on the many-many relationship between stocks and preferences matrices")
            .create("p");

    Option optIP = OptionBuilder.hasArg().withArgName("itempref").withValueSeparator(':').isRequired(false)
            .withDescription(
                    "Enter stock and preferences over command line. Any new stock will be registered as a new entry along with preference. Each new preference for an already existing stock will overwrite the existing preference(so be careful!)")
            .create("ip");

    Option optF = OptionBuilder.hasArg().withArgName("itempreffile").withType(String.class)
            .withDescription("File to read stock preference data from").isRequired(false).create("f");

    Option optH = OptionBuilder.hasArg(false).withArgName("help").withType(String.class)
            .withDescription("Display usage").isRequired(false).create("h");

    options.addOption(optU);
    options.addOption(optI);
    options.addOption(optP);
    options.addOption(optIP);
    options.addOption(optF);
    options.addOption(optH);

    parser = new BasicParser();
    CommandLine line = null;

    try {
        line = parser.parse(options, args);
    } catch (MissingOptionException e) {
        System.out.println("Missing options");
        printUsage();
    } catch (ParseException e) {
        e.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
    }

    if (line.hasOption("help")) {
        printUsage();
    }
    UserArgumentEmailType uEmailId = new UserArgumentEmailType(line.getOptionValue("u"));
    String uEmailIdStr = uEmailId.toString();

    if (MongoDBUserModel.registered(uEmailIdStr)) {
        System.out.format("Already registered user %s\n", uEmailIdStr);
    } else {
        System.out.format("+--Starting transaction for user %s --+\n", uEmailIdStr);
    }

    if (line.hasOption("f")) {
        System.out.println("Query::UpdateDB: itempreffile(s)\n");
        String[] uItemPrefFiles = line.getOptionValues("f");
        for (String it : uItemPrefFiles) {
            System.out.format("Updating db with user file %s\n", it);
            UserItemPrefFile uItemPrefFile = new UserItemPrefFile(uEmailIdStr, it);
            uItemPrefFile.writeToDB();
        }
    }
    if (line.hasOption("i")) {
        System.out.println("Query::ReadDB: item(s)\n");
        String[] uItems = line.getOptionValues("i");
        for (String it : uItems) {
            System.out.format("Searching for item %s in db\n", it);
            UserItem uItem = new UserItem(uEmailIdStr, it);
            uItem.readFromDB();
        }
    }
    if (line.hasOption("p")) {
        System.out.println("Query::ReadDB: preference(s)");
        String[] uPrefs = line.getOptionValues("p");
        for (String it : uPrefs) {
            System.out.format("Searching for preference %s in db\n", it);
            UserPreference uPref = new UserPreference(uEmailIdStr, it);
            uPref.readFromDB();
        }
    }
    if (line.hasOption("ip")) {
        System.out.println("Query::UpdateDB: itempref(s)\n");
        String[] uItemPrefs = line.getOptionValues("ip");
        for (String it : uItemPrefs) {
            System.out.format("Updating item:preference pair %s\n", it);
            String[] pair = it.split(":");
            System.out.format("%s:%s:%s", uEmailIdStr, pair[0], pair[1]);
            UserItemPreference uItemPref = new UserItemPreference(uEmailIdStr, pair[0], pair[1]);
            uItemPref.writeToDB();
        }
    }
    System.out.format("+-- Ending transaction for user %s --+\n", uEmailIdStr);

}

From source file:net.kahowell.xsd.fuzzer.XmlGenerator.java

/**
 * Drives the application, parsing command-line arguments to determine
 * options.//from  ww w. j av a2 s . c o  m
 * 
 * @param args command line args
 */
public static void main(String[] args) {
    try {
        setupLog4j();
        CommandLine commandLine = parser.parse(ConsoleOptions.OPTIONS, args);
        if (commandLine.hasOption("d")) {
            Logger.getLogger("net.kahowell.xsd.fuzzer").setLevel(Level.DEBUG);
        }
        for (Option option : commandLine.getOptions()) {
            if (option.getValue() != null) {
                log.debug("Using " + option.getDescription() + ": " + option.getValue());
            } else {
                log.debug("Using " + option.getDescription());
            }
        }

        Injector injector = Guice.createInjector(
                Modules.override(Modules.combine(new DefaultGeneratorsModule(), new DefaultOptionsModule()))
                        .with(new CommandLineArgumentsModule(commandLine)));

        log.debug(injector.getBindings());

        XsdParser xsdParser = injector.getInstance(XsdParser.class);
        XmlOptions xmlOptions = injector
                .getInstance(Key.get(XmlOptions.class, Names.named("xml save options")));
        XmlGenerator xmlGenerator = injector.getInstance(XmlGenerator.class);
        XmlGenerationOptions xmlGenerationOptions = injector.getInstance(XmlGenerationOptions.class);

        doPostModuleConfig(commandLine, xmlGenerationOptions, injector);

        ByteArrayOutputStream stream = new ByteArrayOutputStream();
        XmlObject generatedXml = xsdParser.generateXml(commandLine.getOptionValue("root"));
        generatedXml.save(stream, xmlOptions);
        if (commandLine.hasOption("v")) {
            if (xsdParser.validate(stream)) {
                log.info("Valid XML file produced.");
            } else {
                log.info("Invalid XML file produced.");
                System.exit(4);
            }
        }
        xmlGenerator.showOrSave(stream);
    } catch (MissingOptionException e) {
        if (e.getMissingOptions().size() != 0) {
            System.err.println("Missing argument(s): " + Arrays.toString(e.getMissingOptions().toArray()));
        }
        helpFormatter.printHelp(XmlGenerator.class.getSimpleName(), ConsoleOptions.OPTIONS);
        System.exit(1);
    } catch (ParseException e) {
        helpFormatter.printHelp(XmlGenerator.class.getSimpleName(), ConsoleOptions.OPTIONS);
        System.exit(2);
    } catch (Exception e) {
        e.printStackTrace();
        System.exit(3);
    }
}

From source file:main.ReportGenerator.java

/**
 * Creates the options for the given arguments
 * @param args//  ww w. j  a  v a 2  s.c om
 * @return the CommandLine with the options
 */
@SuppressWarnings("static-access")
public static CommandLine createOptions(String[] args) {
    CommandLine cmd = null;
    //create the options
    Options options = new Options();
    options.addOption("h", "help", false, "prints the help content");
    options.addOption(OptionBuilder.withArgName("json-file").hasArg()
            .withDescription("input file with the JSON").withLongOpt("input").create("i"));
    options.addOption(OptionBuilder.withArgName("file").hasArg()
            .withDescription("output directory (Default: ./)").withLongOpt("output").create("o"));
    options.addOption(OptionBuilder.withArgName("name").hasArg()
            .withDescription("output file name (witout extension)").withLongOpt("name").create("n"));
    options.addOption(OptionBuilder.withArgName("file").hasArg().isRequired().withDescription("template file")
            .withLongOpt("template").create("t"));
    options.addOption(new Option("pdf", "generate output in pdf format"));
    options.addOption(
            new Option("doc", "generate output in doc format (.odt or .docx, depend of the template format)"));
    options.addOption(new Option("html", "generate output in html format"));
    options.addOption(new Option("a", "all", false, "generate output in all format (default)"));

    //parse it
    try {
        CommandLineParser parser = new GnuParser();
        cmd = parser.parse(options, args);
    } catch (MissingOptionException e) {
        displayHelp(options);
        System.exit(1);
    } catch (MissingArgumentException e) {
        displayHelp(options);
        System.exit(1);
    } catch (ParseException e) {
        System.err.println("Error while parsing the command line: " + e.getMessage());
        System.exit(1);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return cmd;
}

From source file:ctrus.pa.bow.DefaultBagOfWords.java

public void setup(BOWOptions options) {
    // Setup options
    this._options = options;

    // Prepare the output directory
    setupOutputDir();/*from  ww  w. ja v  a2 s .c om*/
    CtrusHelper.printToConsole("Output folder - " + _outputDir.getAbsolutePath());

    // Prepare the single output file
    _singleFileOut = hasOption(DefaultOptions.OUTPUT_SINGLE_FILE);
    if (_singleFileOut) {
        String singleOutputFileName;
        try {
            singleOutputFileName = getOption(DefaultOptions.OUTPUT_SINGLE_FILE);
        } catch (MissingOptionException e) {
            singleOutputFileName = DEFAULT_OUTPUT_FILE;
        }
        try {
            _out = new FileOutputStream(new File(_outputDir, singleOutputFileName));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }

    // perform additional setup
    setup();
}

From source file:org.nmrml.converter.Converter.java

public static void main(String[] args) {

    /* Containers of Acquisition/Processing Parameters  */
    Acqu acq = null;//from  w  w w.j av a2s.c om
    Proc proc = null;
    String Vendor = "bruker";

    /* HashMap for Source Files */
    HashMap<String, SourceFileType> hSourceFileObj = new HashMap<String, SourceFileType>();
    HashMap<String, BinaryData> hBinaryDataObj = new HashMap<String, BinaryData>();

    Options options = new Options();
    options.addOption("h", "help", false, "prints the help content");
    options.addOption("v", "version", false, "prints the version");
    options.addOption("d", "binary-data", false, "include binary data such as fid and spectrum values");
    options.addOption("z", "compress", false, "compress binary data");
    options.addOption(null, "only-fid", false,
            "exclude all spectrum processing parameters and corresponding binary data");
    options.addOption(OptionBuilder.withArgName("vendor").hasArg().withDescription("type")
            .withLongOpt("vendortype").create("t"));
    options.addOption(OptionBuilder.withArgName("directory").hasArg().isRequired()
            .withDescription("input directory").withLongOpt("inputdir").create("i"));
    options.addOption(OptionBuilder.withArgName("file").hasArg().withDescription("output file")
            .withLongOpt("outputfile").create("o"));

    try {
        CommandLineParser parser = new GnuParser();
        CommandLine cmd = parser.parse(options, args);

        String inputFolder = cmd.getOptionValue("i");
        inputFolder = (inputFolder.lastIndexOf("/") == inputFolder.length()) ? inputFolder
                : inputFolder.concat("/");

        /* Properties object */
        Properties prop = new Properties();
        prop.load(Converter.class.getClassLoader().getResourceAsStream("resources/config.properties"));
        String onto_ini = prop.getProperty("onto_ini_file");
        String schemaLocation = prop.getProperty("schemaLocation");

        /* CVLoader object */
        CVLoader cvLoader = (new File(onto_ini)).isFile()
                ? new CVLoader(Converter.class.getClassLoader().getResourceAsStream(onto_ini))
                : new CVLoader();

        if (cmd.hasOption("t")) {
            Vendor = cmd.getOptionValue("t").toLowerCase();
        }
        String Vendor_Label = Vendor.toUpperCase();
        String vendor_ini = prop.getProperty(Vendor);
        Vendor_Type vendor_type = Vendor_Type.valueOf(Vendor);

        /* Vendor terms file */
        SpectrometerMapper vendorMapper = new SpectrometerMapper(vendor_ini);

        /* Get Acquisition & Processing Parameters depending on the vendor type */
        switch (vendor_type) {
        case bruker:
            BrukerReader brukerValues = new BrukerReader(inputFolder, vendorMapper);
            acq = brukerValues.acq;
            proc = brukerValues.proc;
            break;
        case varian:
            VarianReader varianValues = new VarianReader(inputFolder, vendorMapper);
            acq = varianValues.acq;
            proc = varianValues.proc;
            break;
        }

        /* NmrMLType object */
        ObjectFactory objFactory = new ObjectFactory();
        NmrMLType nmrMLtype = objFactory.createNmrMLType();

        nmrMLtype.setVersion(nmrMLVersion);

        /* ACQUISITION PARAMETERS */

        /* CV List : used as references for all CV in the document */
        int cvCount = 0;
        CVListType cvList = objFactory.createCVListType();
        for (String cvKey : cvLoader.getCVOntologySet()) {
            CVType cv = cvLoader.fetchCVType(cvKey);
            cvList.getCv().add(cv);
            cvCount = cvCount + 1;
        }
        nmrMLtype.setCvList(cvList);

        /* FileDescription */
        FileDescriptionType filedesc = objFactory.createFileDescriptionType();
        ParamGroupType paramgrp = objFactory.createParamGroupType();
        paramgrp.getCvParam().add(cvLoader.fetchCVParam("NMRCV", "ONE_DIM_NMR"));
        filedesc.setFileContent(paramgrp);
        nmrMLtype.setFileDescription(filedesc);

        /* Contact List */
        ContactListType contactlist = objFactory.createContactListType();
        ContactType contact1 = objFactory.createContactType();
        contact1.setId(getNewIdentifier());
        contact1.setFullname(acq.getOwner());
        contact1.setEmail(acq.getEmail());
        contactlist.getContact().add(contact1);
        nmrMLtype.setContactList(contactlist);

        /* Contact Ref List */
        ContactRefListType contactRefList = objFactory.createContactRefListType();
        ContactRefType contactRef = objFactory.createContactRefType();
        contactRef.setRef(contact1);
        contactRefList.getContactRef().add(contactRef);

        /* SourceFile List */
        int sourceFileCount = 0;
        SourceFileListType srcfilelist = objFactory.createSourceFileListType();
        for (String sourceName : vendorMapper.getSection("FILES").keySet()) {
            File sourceFile = new File(inputFolder + vendorMapper.getTerm("FILES", sourceName));
            if (sourceFile.isFile() & sourceFile.canRead()) {
                SourceFileType srcfile = objFactory.createSourceFileType();
                srcfile.setId(getNewIdentifier());
                srcfile.setName(sourceFile.getName());
                srcfile.setLocation(sourceFile.toURI().toString());
                srcfile.getCvParam().add(cvLoader.fetchCVParam("NMRCV", acq.getSoftware()));
                srcfile.getCvParam().add(cvLoader.fetchCVParam("NMRCV", sourceName));
                hSourceFileObj.put(sourceName, srcfile);
                boolean doBinData = false;
                for (BinaryFile_Type choice : BinaryFile_Type.values())
                    if (choice.name().equals(sourceName))
                        doBinData = true;
                if (doBinData) {
                    boolean bComplexData = false;
                    if (BinaryFile_Type.FID_FILE.name().equals(sourceName)) {
                        bComplexData = true;
                    }
                    BinaryData binaryData = new BinaryData(sourceFile, acq, bComplexData, cmd.hasOption("z"));
                    hBinaryDataObj.put(sourceName, binaryData);
                    if (binaryData.isExists()) {
                        srcfile.setSha1(binaryData.getSha1());
                    }
                }
                srcfilelist.getSourceFile().add(srcfile);
                sourceFileCount = sourceFileCount + 1;
            }
        }
        nmrMLtype.setSourceFileList(srcfilelist);

        /* Software List */
        SoftwareListType softwareList = objFactory.createSoftwareListType();
        SoftwareType software1 = objFactory.createSoftwareType();
        CVTermType softterm1 = cvLoader.fetchCVTerm("NMRCV", acq.getSoftware());
        software1.setCvRef(softterm1.getCvRef());
        software1.setAccession(softterm1.getAccession());
        software1.setId(getNewIdentifier());
        software1.setName(acq.getSoftware());
        software1.setVersion(acq.getSoftVersion());
        softwareList.getSoftware().add(software1);
        nmrMLtype.setSoftwareList(softwareList);

        /* Software Ref List */
        SoftwareRefListType softwareRefList = objFactory.createSoftwareRefListType();
        SoftwareRefType softref1 = objFactory.createSoftwareRefType();
        softref1.setRef(software1);
        softwareRefList.getSoftwareRef().add(softref1);

        /* InstrumentConfiguration List */
        InstrumentConfigurationListType instrumentConfList = objFactory.createInstrumentConfigurationListType();
        InstrumentConfigurationType instrumentConf = objFactory.createInstrumentConfigurationType();
        instrumentConf.getSoftwareRef().add(softref1);
        instrumentConf.setId(getNewIdentifier());
        instrumentConf.getCvParam().add(cvLoader.fetchCVParam("NMRCV", Vendor_Label));
        UserParamType probeParam = objFactory.createUserParamType();
        probeParam.setName("ProbeHead");
        probeParam.setValue(acq.getProbehead());
        instrumentConf.getUserParam().add(probeParam);
        instrumentConfList.getInstrumentConfiguration().add(instrumentConf);
        nmrMLtype.setInstrumentConfigurationList(instrumentConfList);

        /* Acquition */

        /* CV Units */
        CVTermType cvUnitNone = cvLoader.fetchCVTerm("UO", "NONE");
        CVTermType cvUnitPpm = cvLoader.fetchCVTerm("UO", "PPM");
        CVTermType cvUnitHz = cvLoader.fetchCVTerm("UO", "HERTZ");
        CVTermType cvUnitmHz = cvLoader.fetchCVTerm("UO", "MEGAHERTZ");
        CVTermType cvUnitT = cvLoader.fetchCVTerm("UO", "TESLA");
        CVTermType cvUnitK = cvLoader.fetchCVTerm("UO", "KELVIN");
        CVTermType cvUnitDeg = cvLoader.fetchCVTerm("UO", "DEGREE");
        CVTermType cvUnitSec = cvLoader.fetchCVTerm("UO", "SECOND");
        CVTermType cvUnitmSec = cvLoader.fetchCVTerm("UO", "MICROSECOND");

        /* AcquisitionParameterSet1D object */
        AcquisitionParameterSet1DType acqparam = objFactory.createAcquisitionParameterSet1DType();
        acqparam.setNumberOfScans(acq.getNumberOfScans());
        acqparam.setNumberOfSteadyStateScans(acq.getNumberOfSteadyStateScans());
        /* sample container */
        acqparam.setSampleContainer(cvLoader.fetchCVTerm("NMRCV", "TUBE"));

        /* sample temperature */
        ValueWithUnitType temperature = objFactory.createValueWithUnitType();
        temperature.setValue(String.format("%f", acq.getTemperature()));
        temperature.setUnitCvRef(cvUnitK.getCvRef());
        temperature.setUnitAccession(cvUnitK.getAccession());
        temperature.setUnitName(cvUnitK.getName());
        acqparam.setSampleAcquisitionTemperature(temperature);

        /* Relaxation Delay */
        ValueWithUnitType relaxationDelay = objFactory.createValueWithUnitType();
        relaxationDelay.setValue(String.format("%f", acq.getRelaxationDelay()));
        relaxationDelay.setUnitCvRef(cvUnitSec.getCvRef());
        relaxationDelay.setUnitAccession(cvUnitSec.getAccession());
        relaxationDelay.setUnitName(cvUnitSec.getName());
        acqparam.setRelaxationDelay(relaxationDelay);

        /* Spinning Rate */
        ValueWithUnitType spinningRate = objFactory.createValueWithUnitType();
        spinningRate.setValue("0");
        spinningRate.setUnitCvRef(cvUnitNone.getCvRef());
        spinningRate.setUnitAccession(cvUnitNone.getAccession());
        spinningRate.setUnitName(cvUnitNone.getName());
        acqparam.setSpinningRate(spinningRate);

        /* PulseSequenceType object */
        PulseSequenceType.PulseSequenceFileRefList pulseFileRefList = objFactory
                .createPulseSequenceTypePulseSequenceFileRefList();
        SourceFileRefType pulseFileRef = objFactory.createSourceFileRefType();
        pulseFileRef.setRef(hSourceFileObj.get("PULSEPROGRAM_FILE"));
        pulseFileRefList.getSourceFileRef().add(pulseFileRef);
        PulseSequenceType pulse_sequence = objFactory.createPulseSequenceType();
        pulse_sequence.setPulseSequenceFileRefList(pulseFileRefList);
        UserParamType pulseParam = objFactory.createUserParamType();
        pulseParam.setName("Pulse Program");
        pulseParam.setValue(acq.getPulseProgram());
        pulse_sequence.getUserParam().add(pulseParam);
        acqparam.setPulseSequence(pulse_sequence);

        /* DirectDimensionParameterSet object */
        AcquisitionDimensionParameterSetType acqdimparam = objFactory
                .createAcquisitionDimensionParameterSetType();
        acqdimparam.setNumberOfDataPoints(getBigInteger(acq.getAquiredPoints()));
        acqdimparam.setAcquisitionNucleus(cvLoader.fetchCVTerm("CHEBI", acq.getObservedNucleus()));
        // Spectral Width (Hz)
        ValueWithUnitType SweepWidth = objFactory.createValueWithUnitType();
        SweepWidth.setValue(String.format("%f", acq.getSpectralWidthHz()));
        SweepWidth.setUnitCvRef(cvUnitHz.getCvRef());
        SweepWidth.setUnitAccession(cvUnitHz.getAccession());
        SweepWidth.setUnitName(cvUnitHz.getName());
        acqdimparam.setSweepWidth(SweepWidth);
        // Irradiation Frequency (Hz)
        ValueWithUnitType IrradiationFrequency = objFactory.createValueWithUnitType();
        IrradiationFrequency.setValue(String.format("%f", acq.getTransmiterFreq()));
        IrradiationFrequency.setUnitCvRef(cvUnitmHz.getCvRef());
        IrradiationFrequency.setUnitAccession(cvUnitmHz.getAccession());
        IrradiationFrequency.setUnitName(cvUnitmHz.getName());
        acqdimparam.setIrradiationFrequency(IrradiationFrequency);
        // setEffectiveExcitationField (Hz)
        ValueWithUnitType effectiveExcitationField = objFactory.createValueWithUnitType();
        effectiveExcitationField.setValue(String.format("%f", acq.getSpectralFrequency()));
        effectiveExcitationField.setUnitCvRef(cvUnitmHz.getCvRef());
        effectiveExcitationField.setUnitAccession(cvUnitmHz.getAccession());
        effectiveExcitationField.setUnitName(cvUnitmHz.getName());
        acqdimparam.setEffectiveExcitationField(effectiveExcitationField);
        /* Pulse Width */
        ValueWithUnitType pulseWidth = objFactory.createValueWithUnitType();
        pulseWidth.setValue(String.format("%f", acq.getPulseWidth()));
        pulseWidth.setUnitCvRef(cvUnitmSec.getCvRef());
        pulseWidth.setUnitAccession(cvUnitmSec.getAccession());
        pulseWidth.setUnitName(cvUnitmSec.getName());
        acqdimparam.setPulseWidth(pulseWidth);
        /* decouplingNucleus */
        CVTermType cvDecoupledNucleus = null;
        if (acq.getDecoupledNucleus().equals("off")) {
            acqdimparam.setDecoupled(false);
            cvDecoupledNucleus = cvLoader.fetchCVTerm("NMRCV", "OFF_DECOUPLE");
        } else {
            acqdimparam.setDecoupled(true);
            cvDecoupledNucleus = cvLoader.fetchCVTerm("CHEBI", acq.getDecoupledNucleus());
        }
        acqdimparam.setDecouplingNucleus(cvDecoupledNucleus);
        /* TODO: samplingStrategy */
        acqdimparam.setSamplingStrategy(cvLoader.fetchCVTerm("NMRCV", "UNIFORM_SAMPLING"));

        acqparam.setDirectDimensionParameterSet(acqdimparam);

        /* AcquisitionParameterFileRefList object */
        SourceFileRefListType acqFileRefList = objFactory.createSourceFileRefListType();
        SourceFileRefType acqFileRef = objFactory.createSourceFileRefType();
        acqFileRef.setRef(hSourceFileObj.get("ACQUISITION_FILE"));
        acqFileRefList.getSourceFileRef().add(acqFileRef);
        SourceFileRefType fidFileRef = objFactory.createSourceFileRefType();
        fidFileRef.setRef(hSourceFileObj.get("FID_FILE"));
        acqFileRefList.getSourceFileRef().add(fidFileRef);
        acqparam.setAcquisitionParameterFileRefList(acqFileRefList);

        /* Acquisition1D object */
        Acquisition1DType acq1Dtype = objFactory.createAcquisition1DType();
        acq1Dtype.setAcquisitionParameterSet(acqparam);

        /* fidData object */
        if (hBinaryDataObj.containsKey("FID_FILE") && hBinaryDataObj.get("FID_FILE").isExists()) {
            BinaryDataArrayType fidData = objFactory.createBinaryDataArrayType();
            fidData.setEncodedLength(hBinaryDataObj.get("FID_FILE").getEncodedLength());
            //fidData.setByteFormat(vendorMapper.getTerm("BYTEFORMAT","FID_FILE"));
            fidData.setByteFormat(hBinaryDataObj.get("FID_FILE").getByteFormat());
            fidData.setCompressed(hBinaryDataObj.get("FID_FILE").isCompressed());
            if (cmd.hasOption("d")) {
                fidData.setValue(hBinaryDataObj.get("FID_FILE").getData());
            }
            acq1Dtype.setFidData(fidData);
        }

        /* Acquisition oject */
        AcquisitionType acqtype = objFactory.createAcquisitionType();
        acqtype.setAcquisition1D(acq1Dtype);
        nmrMLtype.setAcquisition(acqtype);

        /* PROCESSING PARAMETERS */
        if (!cmd.hasOption("only-fid") && hBinaryDataObj.containsKey("REAL_DATA_FILE")) {

            /* DataProcessing List */

            DataProcessingListType dataproclist = objFactory.createDataProcessingListType();
            DataProcessingType dataproc = objFactory.createDataProcessingType();
            ProcessingMethodType procmethod = objFactory.createProcessingMethodType();
            procmethod.setOrder(getBigInteger(1));
            procmethod.setSoftwareRef(software1);
            procmethod.getCvParam().add(cvLoader.fetchCVParam("NMRCV", "DATA_TRANSFORM"));
            dataproc.getProcessingMethod().add(procmethod);
            dataproc.setId(getNewIdentifier());
            dataproclist.getDataProcessing().add(dataproc);
            nmrMLtype.setDataProcessingList(dataproclist);

            /* Spectrum List */
            SpectrumListType spectrumList = objFactory.createSpectrumListType();
            spectrumList.setDefaultDataProcessingRef(dataproc);
            Spectrum1DType spectrum1D = objFactory.createSpectrum1DType();

            /* Spectrum1D - FirstDimensionProcessingParameterSet object */
            FirstDimensionProcessingParameterSetType ProcParam1D = objFactory
                    .createFirstDimensionProcessingParameterSetType();

            /* Spectrum1D - WindowFunction */
            FirstDimensionProcessingParameterSetType.WindowFunction windowFunction = objFactory
                    .createFirstDimensionProcessingParameterSetTypeWindowFunction();

            CVTermType cvWinFunc = cvLoader.fetchCVTerm("NMRCV",
                    vendorMapper.getTerm("WDW", String.format("%d", proc.getWindowFunctionType())));
            windowFunction.setWindowFunctionMethod(cvWinFunc);
            CVParamType cvWinParam = cvLoader.fetchCVParam("NMRCV", "LINE_BROADENING");
            cvWinParam.setValue(String.format("%f", proc.getLineBroadening()));
            windowFunction.getWindowFunctionParameter().add(cvWinParam);
            ProcParam1D.getWindowFunction().add(windowFunction);
            ProcParam1D.setNoOfDataPoints(getBigInteger(proc.getTransformSize()));

            /* Spectrum1D - Phasing */
            ValueWithUnitType zeroOrderPhaseCorrection = objFactory.createValueWithUnitType();
            zeroOrderPhaseCorrection.setValue(String.format("%f", proc.getZeroOrderPhase()));
            zeroOrderPhaseCorrection.setUnitCvRef(cvUnitDeg.getCvRef());
            zeroOrderPhaseCorrection.setUnitAccession(cvUnitDeg.getAccession());
            zeroOrderPhaseCorrection.setUnitName(cvUnitDeg.getName());
            ProcParam1D.setZeroOrderPhaseCorrection(zeroOrderPhaseCorrection);
            ValueWithUnitType firstOrderPhaseCorrection = objFactory.createValueWithUnitType();
            firstOrderPhaseCorrection.setValue(String.format("%f", proc.getFirstOrderPhase()));
            firstOrderPhaseCorrection.setUnitCvRef(cvUnitDeg.getCvRef());
            firstOrderPhaseCorrection.setUnitAccession(cvUnitDeg.getAccession());
            firstOrderPhaseCorrection.setUnitName(cvUnitDeg.getName());
            ProcParam1D.setFirstOrderPhaseCorrection(firstOrderPhaseCorrection);

            /* Calibration Reference Shift */
            ValueWithUnitType calibrationReferenceShift = objFactory.createValueWithUnitType();
            calibrationReferenceShift.setValue("undefined");
            calibrationReferenceShift.setUnitCvRef(cvUnitNone.getCvRef());
            calibrationReferenceShift.setUnitAccession(cvUnitNone.getAccession());
            calibrationReferenceShift.setUnitName(cvUnitNone.getName());
            ProcParam1D.setCalibrationReferenceShift(calibrationReferenceShift);

            /* spectralDenoisingMethod */
            ProcParam1D.setSpectralDenoisingMethod(cvLoader.fetchCVTerm("NCIThesaurus", "UNDEFINED"));
            /* baselineCorrectionMethod */
            ProcParam1D.setBaselineCorrectionMethod(cvLoader.fetchCVTerm("NCIThesaurus", "UNDEFINED"));

            /* Spectrum1D - Source File Ref */
            SourceFileRefType procFileRef = objFactory.createSourceFileRefType();
            procFileRef.setRef(hSourceFileObj.get("PROCESSING_FILE"));
            ProcParam1D.setParameterFileRef(procFileRef);
            spectrum1D.setFirstDimensionProcessingParameterSet(ProcParam1D);

            /* SpectrumType - X Axis */
            AxisWithUnitType Xaxis = objFactory.createAxisWithUnitType();
            Xaxis.setUnitCvRef(cvUnitPpm.getCvRef());
            Xaxis.setUnitAccession(cvUnitPpm.getAccession());
            Xaxis.setUnitName(cvUnitPpm.getName());
            Xaxis.setStartValue(String.format("%f", proc.getMaxPpm()));
            Xaxis.setEndValue(String.format("%f",
                    proc.getMaxPpm() - acq.getSpectralWidthHz() / acq.getSpectralFrequency()));
            spectrum1D.setXAxis(Xaxis);

            /* SpectrumType - Y Axis */
            spectrum1D.setYAxisType(cvUnitNone);

            /* SpectrumType - Software, Contact Ref List */
            spectrum1D.getProcessingSoftwareRefList().add(softwareRefList);
            spectrum1D.setProcessingContactRefList(contactRefList);

            /* SpectrumType - ProcessingParameterSet */
            SpectrumType.ProcessingParameterSet procParamSet = objFactory
                    .createSpectrumTypeProcessingParameterSet();
            procParamSet.setDataTransformationMethod(cvLoader.fetchCVTerm("NMRCV", "FFT_TRANSFORM"));
            procParamSet.setPostAcquisitionSolventSuppressionMethod(
                    cvLoader.fetchCVTerm("NCIThesaurus", "UNDEFINED"));
            procParamSet.setCalibrationCompound(cvLoader.fetchCVTerm("NCIThesaurus", "UNDEFINED"));
            spectrum1D.setProcessingParameterSet(procParamSet);

            /* SpectrumDataArray object */
            if (hBinaryDataObj.containsKey("REAL_DATA_FILE")
                    && hBinaryDataObj.get("REAL_DATA_FILE").isExists()) {
                BinaryDataArrayType RealData = objFactory.createBinaryDataArrayType();
                RealData.setEncodedLength(hBinaryDataObj.get("REAL_DATA_FILE").getEncodedLength());
                RealData.setByteFormat(vendorMapper.getTerm("BYTEFORMAT", "REAL_DATA_FILE"));
                RealData.setCompressed(hBinaryDataObj.get("REAL_DATA_FILE").isCompressed());
                if (cmd.hasOption("d")) {
                    RealData.setValue(hBinaryDataObj.get("REAL_DATA_FILE").getData());
                }
                spectrum1D.setSpectrumDataArray(RealData);
            }
            spectrum1D.setNumberOfDataPoints(getBigInteger(proc.getTransformSize()));
            spectrumList.getSpectrum1D().add(spectrum1D);
            nmrMLtype.setSpectrumList(spectrumList);
        }

        /* Generate XML */
        JAXBElement<NmrMLType> nmrML = (JAXBElement<NmrMLType>) objFactory.createNmrML(nmrMLtype);

        // create a JAXBContext capable of handling classes generated into the org.nmrml.schema package
        JAXBContext jc = JAXBContext.newInstance(NmrMLType.class);

        // create a Marshaller and marshal to a file / stdout
        Marshaller m = jc.createMarshaller();
        m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
        m.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, schemaLocation);
        if (cmd.hasOption("o")) {
            m.marshal(nmrML, new File(cmd.getOptionValue("o", "output.nmrML")));
        } else {
            m.marshal(nmrML, System.out);
        }
    } catch (MissingOptionException e) {
        boolean help = false;
        boolean version = false;
        try {
            Options helpOptions = new Options();
            helpOptions.addOption("h", "help", false, "prints the help content");
            helpOptions.addOption("v", "version", false, "prints the version");
            CommandLineParser parser = new PosixParser();
            CommandLine line = parser.parse(helpOptions, args);
            if (line.hasOption("h"))
                help = true;
            if (line.hasOption("v"))
                version = true;
        } catch (Exception ex) {
        }
        if (!help && !version)
            System.err.println(e.getMessage());
        if (help) {
            HelpFormatter formatter = new HelpFormatter();
            formatter.printHelp("converter", options);
        }
        if (version) {
            System.out.println("nmrML Converter version = " + Version);
        }
        System.exit(1);
    } catch (MissingArgumentException e) {
        System.err.println(e.getMessage());
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp("App", options);
        System.exit(1);
    } catch (ParseException e) {
        System.err.println("Error while parsing the command line: " + e.getMessage());
        System.exit(1);
    } catch (JAXBException je) {
        je.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
    }

}

From source file:org.nmrml.reader.Reader.java

public static void main(String[] args) {

    Options options = new Options();
    options.addOption("h", "help", false, "prints the help content");
    options.addOption("v", "version", false, "prints the version");
    options.addOption(OptionBuilder.withArgName("nmrML file").hasArg().isRequired()
            .withDescription("input  nmrML file").withLongOpt("input").create("i"));
    options.addOption(OptionBuilder.withArgName("output text file").hasArg()
            .withDescription("extract FID data onto a text file").withLongOpt("fid").create());
    options.addOption(OptionBuilder.withArgName("output text file").hasArg()
            .withDescription("extract Real Spectrum data onto a text file").withLongOpt("real-spectrum")
            .create());/*from  w w  w. j  av a  2  s .c  o  m*/

    try {
        Locale.setDefault(new Locale("en", "US"));

        String current_dir = new java.io.File(".").getCanonicalPath();

        CommandLineParser parser = new GnuParser();
        CommandLine cmd = parser.parse(options, args);

        String inputFile = cmd.getOptionValue("i");

        /* Read nmrML file */
        NmrMLReader nmrML = new NmrMLReader(new File(inputFile), cmd.hasOption("fid"),
                cmd.hasOption("real-spectrum"));
        System.out.println("nmrML version = " + nmrML.getNmrMLVersion());

        /* ACQUISITION PARAMETERS */
        System.out.println("ACQU NumberOfSteadyStateScans = " + nmrML.acq.getNumberOfSteadyStateScans());
        System.out.println("ACQU NumberOfScans = " + nmrML.acq.getNumberOfScans());
        System.out.println(String.format("ACQU RelaxationDelay (%s) = %f",
                nmrML.acq.getRelaxationDelayUnitName(), nmrML.acq.getRelaxationDelay()));
        System.out.println(String.format("ACQU SampleAcquisitionTemperature (%s) = %f",
                nmrML.acq.getTemperatureUnitName(), nmrML.acq.getTemperature()));
        System.out.println(String.format("ACQU SweepWidth (%s) = %f", nmrML.acq.getSweepWidthUnitName(),
                nmrML.acq.getSpectralWidthHz()));
        System.out.println(String.format("ACQU IrradiationFrequency (%s) = %f",
                nmrML.acq.getTransmiterFreqUnitName(), nmrML.acq.getTransmiterFreq()));
        System.out.println(String.format("ACQU EffectiveExcitationField (%s) = %f",
                nmrML.acq.getSpectralFrequencyUnitName(), nmrML.acq.getSpectralFrequency()));
        // ... 

        /* Read FID data */
        if (cmd.hasOption("fid")) {
            String fileFile = cmd.getOptionValue("fid");
            BufferedWriter outfid = new BufferedWriter(new FileWriter(fileFile));
            for (int i = 0; i < nmrML.fidData.getNumberOfDataPoints(); i++) {
                for (int j = 0; j < nmrML.fidData.getYdimension(); j++) {
                    if (j > 0) {
                        outfid.write("\t");
                    }
                    outfid.write(String.format("%f", nmrML.fidData.getYvalues()[j][i]));
                }
                outfid.newLine();
            }
            outfid.close();
            System.out.println(
                    String.format("ACQU FID Number of DataPoints = %d", nmrML.fidData.getNumberOfDataPoints()));
            System.out.println(String.format("ACQU FID Dimension = %d", nmrML.fidData.getYdimension()));
        }

        /* PROCESSING PARAMETERS */
        if (nmrML.proc != null) {
            if (cmd.hasOption("real-spectrum")) {
                System.out.println(String.format("PROC Real Spectrum Number of DataPoints = %d",
                        nmrML.realSpectrum.getNumberOfDataPoints()));
                System.out.println(
                        String.format("PROC Real Spectrum Dimension = %d", nmrML.realSpectrum.getYdimension()));
                System.out.println(String.format("PROC PPM Start (ppm) = %f", nmrML.proc.getMaxPpm()));
                System.out.println(String.format("PROC PPM End (ppm) = %f", nmrML.proc.getMinPpm()));
                // ... 
                String spectrumFile = cmd.getOptionValue("real-spectrum");
                BufferedWriter out1r = new BufferedWriter(new FileWriter(spectrumFile));
                for (int i = 0; i < nmrML.realSpectrum.getNumberOfDataPoints(); i++) {
                    out1r.write(String.format("%f\t", nmrML.realSpectrum.getXvalues()[i]));
                    for (int j = 0; j < nmrML.realSpectrum.getYdimension(); j++) {
                        if (j > 0) {
                            out1r.write("\t");
                        }
                        out1r.write(String.format("%f", nmrML.realSpectrum.getYvalues()[j][i]));
                    }
                    out1r.newLine();
                }
                out1r.close();
            }
        }

    } catch (MissingOptionException e) {
        boolean help = false;
        boolean version = false;
        try {
            Options helpOptions = new Options();
            helpOptions.addOption("h", "help", false, "prints the help content");
            helpOptions.addOption("v", "version", false, "prints the version");
            CommandLineParser parser = new PosixParser();
            CommandLine line = parser.parse(helpOptions, args);
            if (line.hasOption("h"))
                help = true;
            if (line.hasOption("v"))
                version = true;
        } catch (Exception ex) {
        }
        if (!help && !version)
            System.err.println(e.getMessage());
        if (help) {
            HelpFormatter formatter = new HelpFormatter();
            formatter.printHelp("reader", options);
        }
        if (version) {
            System.out.println("nmrML Reader version = " + Version);
        }
        System.exit(1);
    } catch (MissingArgumentException e) {
        System.err.println(e.getMessage());
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp("App", options);
        System.exit(1);
    } catch (ParseException e) {
        System.err.println("Error while parsing the command line: " + e.getMessage());
        System.exit(1);
    } catch (NullPointerException e) {
        System.err.println("Error while parsing the XML file: " + e.getMessage());
        System.exit(1);
    } catch (Exception e) {
        e.printStackTrace();
    }

}

From source file:org.onebusaway.gtfs_merge.GtfsMergerMain.java

/*****************************************************************************
 * {@link Runnable} Interface/*w  w w  .j  a v  a  2  s  .  c  o  m*/
 ****************************************************************************/

public void run(String[] args) throws IOException {

    if (needsHelp(args)) {
        printHelp();
        System.exit(0);
    }

    try {
        CommandLine cli = _parser.parse(_options, args, true);
        runApplication(cli, args);
    } catch (MissingOptionException ex) {
        System.err.println("Missing argument: " + ex.getMessage());
        printHelp();
    } catch (MissingArgumentException ex) {
        System.err.println("Missing argument: " + ex.getMessage());
        printHelp();
    } catch (UnrecognizedOptionException ex) {
        System.err.println("Unknown argument: " + ex.getMessage());
        printHelp();
    } catch (AlreadySelectedException ex) {
        System.err.println("Argument already selected: " + ex.getMessage());
        printHelp();
    } catch (ParseException ex) {
        System.err.println(ex.getMessage());
        printHelp();
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:org.onebusaway.gtfs_transformer.GtfsTransformerMain.java

/*****************************************************************************
 * {@link Runnable} Interface//from   w  ww.ja  v  a 2 s.com
 ****************************************************************************/

public void run(String[] args) throws IOException {

    if (needsHelp(args)) {
        printHelp();
        System.exit(0);
    }

    try {
        CommandLine cli = _parser.parse(_options, args, true);
        runApplication(cli, args);
    } catch (MissingOptionException ex) {
        System.err.println("Missing argument: " + ex.getMessage());
        printHelp();
        System.exit(-2);
    } catch (MissingArgumentException ex) {
        System.err.println("Missing argument: " + ex.getMessage());
        printHelp();
        System.exit(-2);
    } catch (UnrecognizedOptionException ex) {
        System.err.println("Unknown argument: " + ex.getMessage());
        printHelp();
        System.exit(-2);
    } catch (AlreadySelectedException ex) {
        System.err.println("Argument already selected: " + ex.getMessage());
        printHelp();
        System.exit(-2);
    } catch (ParseException ex) {
        System.err.println(ex.getMessage());
        printHelp();
        System.exit(-2);
    } catch (TransformSpecificationException ex) {
        System.err.println("error with transform line: " + ex.getLine());
        System.err.println(ex.getMessage());
        System.exit(-1);
    } catch (Exception ex) {
        ex.printStackTrace();
        System.exit(-1);
    }
}

From source file:org.onebusaway.vdv452.Vdv452ToGtfsConverterMain.java

public void run(String[] args) {
    if (needsHelp(args)) {
        printHelp();//from   w  w  w  .  ja  v a2  s.c om
        System.exit(0);
    }

    try {
        buildOptions();
        CommandLine cli = _parser.parse(_options, args, true);
        runApplication(cli);
        System.exit(0);
    } catch (MissingOptionException ex) {
        System.err.println("Missing option: " + ex.getMessage());
        printHelp();
    } catch (MissingArgumentException ex) {
        System.err.println("Missing option argument: " + ex.getMessage());
        printHelp();
    } catch (UnrecognizedOptionException ex) {
        System.err.println("Unknown option: " + ex.getMessage());
        printHelp();
    } catch (AlreadySelectedException ex) {
        System.err.println("Option already selected: " + ex.getMessage());
        printHelp();
    } catch (ParseException ex) {
        System.err.println(ex.getMessage());
        printHelp();
    } catch (Exception ex) {
        ex.printStackTrace();
    }
    System.exit(-1);
}