Example usage for java.lang Boolean toString

List of usage examples for java.lang Boolean toString

Introduction

In this page you can find the example usage for java.lang Boolean toString.

Prototype

public static String toString(boolean b) 

Source Link

Document

Returns a String object representing the specified boolean.

Usage

From source file:com.aurel.track.lucene.util.poi.XLSTextStripper.java

public XLSTextStripper(FileInputStream fis, String fileExtension) {
    try {/*from   ww  w .ja  va 2 s  .co m*/
        StringBuffer sb = new StringBuffer();
        Workbook workbook = null;
        if (LuceneFileExtractor.INDEXABLE_EXTENSIONS.XLS.equalsIgnoreCase(fileExtension)) {
            workbook = new HSSFWorkbook(fis);
        } else {
            if (LuceneFileExtractor.INDEXABLE_EXTENSIONS.XLSX.equalsIgnoreCase(fileExtension)) {
                workbook = new XSSFWorkbook(fis);
            }
        }
        if (workbook != null) {
            int numOfSheets = workbook.getNumberOfSheets();
            for (int i = 0; i < numOfSheets; i++) {
                Sheet sheet = workbook.getSheetAt(i);
                Iterator<Row> rowIterator = sheet.rowIterator();
                while (rowIterator.hasNext()) {
                    Row row = rowIterator.next();
                    Iterator<Cell> cellIterator = row.cellIterator();
                    while (cellIterator.hasNext()) {
                        Cell cell = cellIterator.next();
                        String cellStringValue = null;
                        if (cell.getCellType() == Cell.CELL_TYPE_BOOLEAN) {
                            boolean booleanValue = cell.getBooleanCellValue();
                            cellStringValue = Boolean.toString(booleanValue);
                        } else if (cell.getCellType() == Cell.CELL_TYPE_NUMERIC) {
                            double doubleValue = cell.getNumericCellValue();
                            cellStringValue = Double.toString(doubleValue);
                        } else if (cell.getCellType() == Cell.CELL_TYPE_STRING) {
                            cellStringValue = cell.getStringCellValue();
                        }
                        if (cellStringValue != null) {
                            sb.append(cellStringValue);
                            sb.append("\t");
                        }
                    }
                    sb.append("\n");
                }
            }
        }
        _text = sb.toString();
    } catch (Exception e) {
        LOGGER.error(ExceptionUtils.getStackTrace(e));
    }
}

From source file:gov.nih.nci.calims2.taglib.form.SingleSelectTag.java

/**
 * {@inheritDoc}//from w w  w .ja  va  2 s. c o  m
 */
protected Tag createTag() {
    propertyMap = SingleSelectHelper.getPropertyMap(properties);
    if (useDataStore) {
        Tag divTag = new CompositeTag(HtmlElement.DIV);
        addScript(divTag);
        Tag tag = divTag.addChild(new CompositeTag(HtmlElement.DIV));
        addAttributes(tag);
        tag.addAttribute("dojoType", DojoType.DIJIT_FORM_FILTERINGSELECT.getTypeName());
        tag.addAttribute("searchAttr", "label");
        tag.addAttribute("required", Boolean.toString(isRequired()));
        tag.addAttribute("store", getId() + "Store");
        tag.addAttribute("value", getSelectedId());
        addMessages(tag);
        return divTag;
    }
    Tag tag = new CompositeTag(HtmlElement.SELECT);
    addAttributes(tag);
    tag.addAttribute("dojoType", DojoType.DIJIT_FORM_FILTERINGSELECT.getTypeName());
    tag.addAttribute("required", Boolean.toString(isRequired()));
    tag.addAttribute("value", getSelectedId());
    addMessages(tag);
    addOptions(tag);
    return tag;
}

From source file:gov.nih.nci.calims2.taglib.form.NumberTag.java

/**
 * {@inheritDoc}/*from  www  . ja  va  2s  . c  o  m*/
 */
protected void addConstraints(Tag tag) {
    if (getConstraints() != null) {
        tag.addAttribute("constraints", getConstraints());
    } else {
        List<String> constraints = new ArrayList<String>();
        if (min != null) {
            constraints.add("min:" + min);
        }
        if (max != null) {
            constraints.add("max:" + max);
        }
        if (getPattern() != null) {
            constraints.add("pattern:'" + getPattern() + "'");
        }
        if (places != null) {
            constraints.add("places:" + places);
        }
        //      if (numberType != null) {
        //        constraints.add("type:" + numberType);
        //      }
        if (!constraints.isEmpty()) {
            StringBuilder constraint = new StringBuilder("{");
            for (int i = 0; i < constraints.size(); i++) {
                if (i > 0) {
                    constraint.append(", ");
                }
                constraint.append(constraints.get(i));
            }
            constraint.append("}");
            tag.addAttribute("constraints", constraint.toString());
        }
    }
    tag.addAttribute("required", Boolean.toString(isRequired()));
    if (getMaxLength() != null) {
        tag.addAttribute("maxLength", getMaxLength().toString());
    }
}

From source file:org.javelin.sws.ext.bind.internal.BuiltInMappings.java

/**
 * @param patterns//from w ww.  ja  va 2  s  .c o  m
 */
public static <T> void initialize(Map<Class<?>, TypedPattern<?>> patterns,
        Map<QName, TypedPattern<?>> patternsForTypeQNames) {
    // see: com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl<T> and inner
    // com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl.StringImpl<T> implementations

    // we have two places where XSD -> Java mapping is defined:
    // - JAX-RPC 1.1, section 4.2.1 Simple Types
    // - JAXB 2, section 6.2.2 Atomic Datatype

    // XML Schema (1.0) Part 2: Datatypes Second Edition, or/and
    // W3C XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes

    // conversion of primitive types should be base on "Lexical Mapping" of simple types defined in XSD part 2

    // 3.2 Special Built-in Datatypes (#special-datatypes)
    // 3.2.1 anySimpleType (#anySimpleType)
    // 3.2.2 anyAtomicType (#anyAtomicType)

    // 3.3 Primitive Datatypes (#built-in-primitive-datatypes)

    // 3.3.1 string (#string)
    {
        SimpleContentPattern<String> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_STRING,
                String.class);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
    }

    // 3.3.2 boolean (#boolean)
    {
        SimpleContentPattern<Boolean> pattern = SimpleContentPattern
                .newValuePattern(SweJaxbConstants.XSD_BOOLEAN, Boolean.class);
        patterns.put(Boolean.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Boolean>() {
            @Override
            public String print(Boolean object, Locale locale) {
                return Boolean.toString(object);
            }

            @Override
            public Boolean parse(String text, Locale locale) throws ParseException {
                // TODO: should allow "true", "false", "1", "0"
                return Boolean.parseBoolean(text);
            }
        });
    }

    // 3.3.3 decimal (#decimal)
    {
        SimpleContentPattern<BigDecimal> pattern = SimpleContentPattern
                .newValuePattern(SweJaxbConstants.XSD_DECIMAL, BigDecimal.class);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<BigDecimal>() {
            @Override
            public String print(BigDecimal object, Locale locale) {
                return object.toPlainString();
            }

            @Override
            public BigDecimal parse(String text, Locale locale) throws ParseException {
                // TODO: should allow (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)
                return new BigDecimal(text);
            }
        });
    }

    // 3.3.4 float (#float)
    {
        SimpleContentPattern<Float> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_FLOAT,
                Float.class);
        patterns.put(Float.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Float>() {
            @Override
            public String print(Float object, Locale locale) {
                return Float.toString(object);
            }

            @Override
            public Float parse(String text, Locale locale) throws ParseException {
                // TODO: should allow (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)([Ee](\+|-)?[0-9]+)?|(\+|-)?INF|NaN
                return Float.parseFloat(text);
            }
        });
    }

    // 3.3.5 double (#double)
    {
        SimpleContentPattern<Double> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_DOUBLE,
                Double.class);
        patterns.put(Double.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Double>() {
            @Override
            public String print(Double object, Locale locale) {
                return Double.toString(object);
            }

            @Override
            public Double parse(String text, Locale locale) throws ParseException {
                // TODO: should allow (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)([Ee](\+|-)?[0-9]+)?|(\+|-)?INF|NaN
                return Double.parseDouble(text);
            }
        });
    }

    // 3.3.6 duration (#duration)
    // 3.3.7 dateTime (#dateTime)
    {
        SimpleContentPattern<DateTime> pattern = SimpleContentPattern
                .newValuePattern(SweJaxbConstants.XSD_DATETIME, DateTime.class);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<DateTime>() {
            private final DateTimeFormatter DTMS = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZZ");
            private final DateTimeFormatter DT = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ssZZ");
            private final DateTimeFormatter DTZMS = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
            private final DateTimeFormatter DTZ = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss'Z'");

            @Override
            public DateTime parse(String text, Locale locale) throws ParseException {
                return null;
            }

            @Override
            public String print(DateTime object, Locale locale) {
                if (object.getMillisOfSecond() == 0) {
                    return object.getZone() == DateTimeZone.UTC ? DTZ.print(object) : DT.print(object);
                } else {
                    return object.getZone() == DateTimeZone.UTC ? DTZMS.print(object) : DTMS.print(object);
                }
            }
        });
    }
    // 3.3.8 time (#time)
    {
        SimpleContentPattern<DateTime> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_TIME,
                DateTime.class);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<DateTime>() {
            private final DateTimeFormatter TMS = DateTimeFormat.forPattern("HH:mm:ss.SSS");
            private final DateTimeFormatter T = DateTimeFormat.forPattern("HH:mm:ss");

            @Override
            public DateTime parse(String text, Locale locale) throws ParseException {
                return null;
            }

            @Override
            public String print(DateTime object, Locale locale) {
                // TODO: should allow (([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\.[0-9]+)?|(24:00:00(\.0+)?))(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00))?
                if (object.getMillisOfSecond() == 0)
                    return T.print(object);
                else
                    return TMS.print(object);
            }
        });
    }
    // 3.3.9 date (#date)
    {
        SimpleContentPattern<DateTime> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_DATE,
                DateTime.class);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<DateTime>() {
            private final DateTimeFormatter DT = DateTimeFormat.forPattern("yyyy-MM-ddZZ");
            private final DateTimeFormatter DTZ = DateTimeFormat.forPattern("yyyy-MM-dd'Z'");

            @Override
            public DateTime parse(String text, Locale locale) throws ParseException {
                return null;
            }

            @Override
            public String print(DateTime object, Locale locale) {
                return object.getZone() == DateTimeZone.UTC ? DTZ.print(object) : DT.print(object);
            }
        });
    }
    // 3.3.10 gYearMonth (#gYearMonth)
    // 3.3.11 gYear (#gYear)
    // 3.3.12 gMonthDay (#gMonthDay)
    // 3.3.13 gDay (#gDay)
    // 3.3.14 gMonth (#gMonth)
    // 3.3.15 hexBinary (#hexBinary)
    // 3.3.16 base64Binary (#base64Binary)
    // 3.3.17 anyURI (#anyURI)
    // 3.3.18 QName (#QName)
    // 3.3.19 NOTATION (#NOTATION)

    // 3.4 Other Built-in Datatypes (#ordinary-built-ins)

    // 3.4.1 normalizedString (#normalizedString)
    // 3.4.2 token (#token)
    // 3.4.3 language (#language)
    // 3.4.4 NMTOKEN (#NMTOKEN)
    // 3.4.5 NMTOKENS (#NMTOKENS)
    // 3.4.6 Name (#Name)
    // 3.4.7 NCName (#NCName)
    // 3.4.8 ID (#ID)
    // 3.4.9 IDREF (#IDREF)
    // 3.4.10 IDREFS (#IDREFS)
    // 3.4.11 ENTITY (#ENTITY)
    // 3.4.12 ENTITIES (#ENTITIES)
    // 3.4.13 integer (#integer)
    // 3.4.14 nonPositiveInteger (#nonPositiveInteger)
    // 3.4.15 negativeInteger (#negativeInteger)
    // 3.4.16 long (#long)
    {
        SimpleContentPattern<Long> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_LONG,
                Long.class);
        patterns.put(Long.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Long>() {
            @Override
            public String print(Long object, Locale locale) {
                return Long.toString(object);
            }

            @Override
            public Long parse(String text, Locale locale) throws ParseException {
                return Long.parseLong(text);
            }
        });
    }
    // 3.4.17 int (#int)
    {
        SimpleContentPattern<Integer> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_INT,
                Integer.class);
        patterns.put(Integer.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Integer>() {
            @Override
            public String print(Integer object, Locale locale) {
                return Integer.toString(object);
            }

            @Override
            public Integer parse(String text, Locale locale) throws ParseException {
                return Integer.parseInt(text);
            }
        });
    }
    // 3.4.18 short (#short)
    {
        SimpleContentPattern<Short> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_SHORT,
                Short.class);
        patterns.put(Short.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Short>() {
            @Override
            public String print(Short object, Locale locale) {
                return Short.toString(object);
            }

            @Override
            public Short parse(String text, Locale locale) throws ParseException {
                return Short.parseShort(text);
            }
        });
    }
    // 3.4.19 byte (#byte)
    {
        SimpleContentPattern<Byte> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_BYTE,
                Byte.class);
        patterns.put(Byte.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Byte>() {
            @Override
            public String print(Byte object, Locale locale) {
                return Byte.toString(object);
            }

            @Override
            public Byte parse(String text, Locale locale) throws ParseException {
                return Byte.parseByte(text);
            }
        });
    }
    // 3.4.20 nonNegativeInteger (#nonNegativeInteger)
    // 3.4.21 unsignedLong (#unsignedLong)
    // 3.4.22 unsignedInt (#unsignedInt)
    // 3.4.23 unsignedShort (#unsignedShort)
    // 3.4.24 unsignedByte (#unsignedByte)
    // 3.4.25 positiveInteger (#positiveInteger)
    // 3.4.26 yearMonthDuration (#yearMonthDuration)
    // 3.4.27 dayTimeDuration (#dayTimeDuration)
    // 3.4.28 dateTimeStamp (#dateTimeStamp)

    // other simple types
    // JAXB2 (static):
    /*
       class [B
       class char
       class java.awt.Image
       class java.io.File
       class java.lang.Character
       class java.lang.Class
       class java.lang.Void
       class java.math.BigDecimal
       class java.math.BigInteger
       class java.net.URI
       class java.net.URL
       class java.util.Calendar
       class java.util.Date
       class java.util.GregorianCalendar
       class java.util.UUID
       class javax.activation.DataHandler
       class javax.xml.datatype.Duration
       class javax.xml.datatype.XMLGregorianCalendar
       class javax.xml.namespace.QName
       interface javax.xml.transform.Source
       class void
     */
    // JAXB2 (additional mappings available at runtime):
    /*
     * class com.sun.xml.bind.api.CompositeStructure
     * class java.lang.Object
     * class javax.xml.bind.JAXBElement
     */
}

From source file:com.cognifide.maven.plugins.crx.CrxPackageUploadMojo.java

protected List<Part> createUploadParameters(File file) throws IOException {
    List<Part> partList = new ArrayList<Part>();
    if (file != null) {
        partList.add(new FilePart("package", new FilePartSource(file.getName(), file)));
    }//from  w ww. jav a  2s.c  o m

    partList.add(new StringPart("force", Boolean.toString(this.force)));
    return partList;
}

From source file:com.github.totyumengr.minicubes.cluster.BootTimeSeriesMiniCubeController.java

@RequestMapping(value = "/mode", method = RequestMethod.GET)
public @ResponseBody String mode(@NotBlank @RequestParam String timeSeries,
        @NotBlank @RequestParam boolean mode) {

    manager.aggs(timeSeries).setMode(mode);

    LOGGER.info("Success to set mode {} to {}", mode, timeSeries);

    return Boolean.toString(mode);
}

From source file:com.wso2telco.proxy.attributeshare.AttributeShare.java

/**
 * Identifying the availability of attribute sharing scopes in the request
 *
 * @param scopeName//from  ww w.  ja  va 2 s  .c o m
 * @param operatorName
 * @param clientId
 * @param loginHintMsisdn
 * @param msisdn
 * @return Map containing details about scopes
 * @throws AuthenticationFailedException
 */
public static Map<String, String> attributeShareScopesValidation(String scopeName, String operatorName,
        String clientId, String loginHintMsisdn, String msisdn) throws AuthenticationFailedException {

    String trustedStatus = null;
    boolean isAttributeShare = false;
    String attShareType = null;
    Map<String, String> attShareScopeDetails = new HashMap<>();
    try {

        if (scopeName == null || scopeName.isEmpty()) {
            log.error("Scope Name list is null");
            throw new AuthenticationFailedException("Scope Name list is null or empty");
        } else {
            List<String> scopeList = new ArrayList(Arrays.asList(scopeName.split(" ")));

            if (!scopeTypes.isEmpty()) {
                for (String scope : scopeList) {
                    attShareType = scopeTypes.get(scope);
                    if (attShareType != null) {
                        isAttributeShare = true;
                        AttributeSharable attributeShare = ScopeFactory.getAttributeSharable(attShareType);
                        if (attributeShare != null) {
                            trustedStatus = attributeShare.getAttributeShareDetails(operatorName, clientId,
                                    loginHintMsisdn, msisdn);
                        }
                        break;
                    }
                }
            }
        }

    } catch (AuthenticationFailedException e) {
        log.error("Authentication Exception in validateAttributeShareScopes : " + e.getMessage());
        throw new AuthenticationFailedException(e.getMessage(), e);
    }
    attShareScopeDetails.put(AuthProxyConstants.ATTR_SHARE_SCOPE, Boolean.toString(isAttributeShare));
    attShareScopeDetails.put(AuthProxyConstants.TRUSTED_STATUS, trustedStatus);
    attShareScopeDetails.put(AuthProxyConstants.ATTR_SHARE_SCOPE_TYPE, attShareType);

    return attShareScopeDetails;
}

From source file:com.galenframework.reports.GalenTestInfo.java

private static String convertArgumentToString(Object argument) {
    if (argument == null) {
        return "null";
    } else if (argument instanceof String) {
        return "\"" + StringEscapeUtils.escapeJava(argument.toString()) + "\"";
    } else if (argument instanceof Boolean) {
        return Boolean.toString((Boolean) argument);
    } else {//from   www  .  j  a va  2  s  .  co m
        return argument.toString();
    }
}

From source file:io.wcm.config.core.management.util.TypeConversion.java

/**
 * Converts a typed value to it's string representation.
 * @param value Typed value/*  w  ww.ja va  2  s .  co m*/
 * @return String value
 */
public static String objectToString(Object value) {
    if (value == null) {
        return null;
    }
    if (value instanceof String) {
        return (String) value;
    }
    if (value instanceof String[]) {
        return StringUtils.join((String[]) value, ARRAY_DELIMITER);
    } else if (value instanceof Integer) {
        return Integer.toString((Integer) value);
    } else if (value instanceof Long) {
        return Long.toString((Long) value);
    } else if (value instanceof Double) {
        return Double.toString((Double) value);
    } else if (value instanceof Boolean) {
        return Boolean.toString((Boolean) value);
    } else if (value instanceof Map) {
        Map<?, ?> map = (Map<?, ?>) value;
        StringBuilder stringValue = new StringBuilder();
        Map.Entry<?, ?>[] entries = Iterators.toArray(map.entrySet().iterator(), Map.Entry.class);
        for (int i = 0; i < entries.length; i++) {
            Map.Entry<?, ?> entry = entries[i];
            String entryKey = Objects.toString(entry.getKey(), "");
            String entryValue = Objects.toString(entry.getValue(), "");
            stringValue.append(entryKey).append(KEY_VALUE_DELIMITER).append(entryValue);
            if (i < entries.length - 1) {
                stringValue.append(ARRAY_DELIMITER);
            }
        }
        return stringValue.toString();
    }
    throw new IllegalArgumentException("Unsupported type: " + value.getClass().getName());
}

From source file:net.es.nsi.topology.translator.Options.java

/**
 * Process any command line arguments and set up associated system
 * properties for runtime components./*from  ww w  .j  a va  2s.  c om*/
 *
 * @param args
 * @throws ParseException
 * @throws IOException
 */
public Options(String[] args) throws ParseException, IOException {
    // Process each option and assign normalized value to corresponding
    // system parameters.
    org.apache.commons.cli.Options options = getOptions();
    try {
        // Parse the command line options.
        CommandLineParser parser = new GnuParser();
        CommandLine cmd = parser.parse(options, args);

        // Get the application base directory.
        basedir = getBasedir(cmd);
        System.setProperty(Properties.SYSTEM_PROPERTY_BASEDIR, basedir);

        // Now for the configuration directory path.
        configdir = getConfigdir(cmd);
        System.setProperty(Properties.SYSTEM_PROPERTY_CONFIGDIR, configdir);

        // See if the user overrode the default location of the configuration file.
        configfile = getConfigFile(cmd);
        System.setProperty(Properties.SYSTEM_PROPERTY_CONFIGFILE, configfile);

        // See if we need to enable protocol tracing.
        debug = getDebug(cmd);
        System.setProperty(Properties.SYSTEM_PROPERTY_DEBUG, Boolean.toString(debug));
    } catch (IOException | ParseException pe) {
        System.err.println("You did not provide the correct arguments, see usage below.\n");
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp(COMMAND_LINE, options);
        throw pe;
    }
}