Example usage for org.apache.commons.csv CSVPrinter printRecord

List of usage examples for org.apache.commons.csv CSVPrinter printRecord

Introduction

In this page you can find the example usage for org.apache.commons.csv CSVPrinter printRecord.

Prototype

public void printRecord(final Object... values) throws IOException 

Source Link

Document

Prints the given values a single record of delimiter separated values followed by the record separator.

Usage

From source file:password.pwm.svc.report.ReportCsvUtility.java

private void outputRecordRow(final Configuration config, final Locale locale,
        final UserCacheRecord userCacheRecord, final CSVPrinter csvPrinter,
        final ReportColumnFilter columnFilter) throws IOException {
    final String trueField = Display.getLocalizedMessage(locale, Display.Value_True, config);
    final String falseField = Display.getLocalizedMessage(locale, Display.Value_False, config);
    final String naField = Display.getLocalizedMessage(locale, Display.Value_NotApplicable, config);
    final List<String> csvRow = new ArrayList<>();
    if (columnFilter.isUsernameVisible()) {
        csvRow.add(userCacheRecord.getUsername());
    }/*from w  ww.  j av  a 2  s. c  om*/
    if (columnFilter.isUserDnVisible()) {
        csvRow.add(userCacheRecord.getUserDN());
    }
    if (columnFilter.isLdapProfileVisible()) {
        csvRow.add(userCacheRecord.getLdapProfile());
    }
    if (columnFilter.isEmailVisible()) {
        csvRow.add(userCacheRecord.getEmail());
    }
    if (columnFilter.isUserGuidVisible()) {
        csvRow.add(userCacheRecord.getUserGUID());
    }
    if (columnFilter.isAccountExpirationTimeVisible()) {
        csvRow.add(userCacheRecord.getAccountExpirationTime() == null ? naField
                : JavaHelper.toIsoDate(userCacheRecord.getAccountExpirationTime()));
    }

    if (columnFilter.isPasswordExpirationTimeVisible()) {
        csvRow.add(userCacheRecord.getPasswordExpirationTime() == null ? naField
                : JavaHelper.toIsoDate(userCacheRecord.getPasswordExpirationTime()));
    }

    if (columnFilter.isPasswordChangeTimeVisible()) {
        csvRow.add(userCacheRecord.getPasswordChangeTime() == null ? naField
                : JavaHelper.toIsoDate(userCacheRecord.getPasswordChangeTime()));
    }

    if (columnFilter.isResponseSetTimeVisible()) {
        csvRow.add(userCacheRecord.getResponseSetTime() == null ? naField
                : JavaHelper.toIsoDate(userCacheRecord.getResponseSetTime()));
    }

    if (columnFilter.isLastLoginTimeVisible()) {
        csvRow.add(userCacheRecord.getLastLoginTime() == null ? naField
                : JavaHelper.toIsoDate(userCacheRecord.getLastLoginTime()));
    }

    if (columnFilter.isHasResponsesVisible()) {
        csvRow.add(userCacheRecord.isHasResponses() ? trueField : falseField);
    }
    if (columnFilter.isHasHelpdeskResponsesVisible()) {
        csvRow.add(userCacheRecord.isHasHelpdeskResponses() ? trueField : falseField);
    }

    if (columnFilter.isResponseStorageMethodVisible()) {
        csvRow.add(userCacheRecord.getResponseStorageMethod() == null ? naField
                : userCacheRecord.getResponseStorageMethod().toString());
    }

    if (columnFilter.isResponseFormatTypeVisible()) {
        csvRow.add(userCacheRecord.getResponseFormatType() == null ? naField
                : userCacheRecord.getResponseFormatType().toString());
    }

    if (columnFilter.isPasswordStatusExpiredVisible()) {
        csvRow.add(userCacheRecord.getPasswordStatus().isExpired() ? trueField : falseField);
    }
    if (columnFilter.isPasswordStatusPreExpiredVisible()) {
        csvRow.add(userCacheRecord.getPasswordStatus().isPreExpired() ? trueField : falseField);
    }
    if (columnFilter.isPasswordStatusViolatesPolicyVisible()) {
        csvRow.add(userCacheRecord.getPasswordStatus().isViolatesPolicy() ? trueField : falseField);
    }
    if (columnFilter.isPasswordStatusWarnPeriodVisible()) {
        csvRow.add(userCacheRecord.getPasswordStatus().isWarnPeriod() ? trueField : falseField);
    }
    if (columnFilter.isRequiresPasswordUpdateVisible()) {
        csvRow.add(userCacheRecord.isRequiresPasswordUpdate() ? trueField : falseField);
    }
    if (columnFilter.isRequiresResponseUpdateVisible()) {
        csvRow.add(userCacheRecord.isRequiresResponseUpdate() ? trueField : falseField);
    }
    if (columnFilter.isRequiresProfileUpdateVisible()) {
        csvRow.add(userCacheRecord.isRequiresProfileUpdate() ? trueField : falseField);
    }

    if (columnFilter.isCacheTimestampVisible()) {
        csvRow.add(userCacheRecord.getCacheTimestamp() == null ? naField
                : JavaHelper.toIsoDate(userCacheRecord.getCacheTimestamp()));
    }

    csvPrinter.printRecord(csvRow);
}

From source file:password.pwm.svc.report.ReportService.java

public void outputSummaryToCsv(final OutputStream outputStream, final Locale locale) throws IOException {
    final List<ReportSummaryData.PresentationRow> outputList = summaryData
            .asPresentableCollection(pwmApplication.getConfig(), locale);
    final CSVPrinter csvPrinter = Helper.makeCsvPrinter(outputStream);

    for (final ReportSummaryData.PresentationRow presentationRow : outputList) {
        final List<String> headerRow = new ArrayList<>();
        headerRow.add(presentationRow.getLabel());
        headerRow.add(presentationRow.getCount());
        headerRow.add(presentationRow.getPct());
        csvPrinter.printRecord(headerRow);
    }/*w w  w . j a  v a2 s  .c  om*/

    csvPrinter.close();
}

From source file:password.pwm.svc.report.ReportService.java

public void outputToCsv(final OutputStream outputStream, final boolean includeHeader, final Locale locale,
        final Configuration config, final ReportColumnFilter columnFilter) throws IOException,
        ChaiUnavailableException, ChaiOperationException, PwmUnrecoverableException, PwmOperationalException {
    final CSVPrinter csvPrinter = Helper.makeCsvPrinter(outputStream);
    final Class localeClass = password.pwm.i18n.Admin.class;
    if (includeHeader) {
        final List<String> headerRow = new ArrayList<>();

        if (columnFilter.isUsernameVisible())
            headerRow.add(//  w w w  .  j  av  a 2  s  . com
                    LocaleHelper.getLocalizedMessage(locale, "Field_Report_Username", config, localeClass));
        if (columnFilter.isUserDnVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_UserDN", config, localeClass));
        if (columnFilter.isLdapProfileVisible())
            headerRow.add(
                    LocaleHelper.getLocalizedMessage(locale, "Field_Report_LDAP_Profile", config, localeClass));
        if (columnFilter.isEmailVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_Email", config, localeClass));
        if (columnFilter.isUserGuidVisible())
            headerRow.add(
                    LocaleHelper.getLocalizedMessage(locale, "Field_Report_UserGuid", config, localeClass));
        if (columnFilter.isAccountExpirationTimeVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_AccountExpireTime", config,
                    localeClass));
        if (columnFilter.isPasswordExpirationTimeVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdExpireTime", config,
                    localeClass));
        if (columnFilter.isPasswordChangeTimeVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdChangeTime", config,
                    localeClass));
        if (columnFilter.isResponseSetTimeVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_ResponseSaveTime", config,
                    localeClass));
        if (columnFilter.isLastLoginTimeVisible())
            headerRow.add(
                    LocaleHelper.getLocalizedMessage(locale, "Field_Report_LastLogin", config, localeClass));
        if (columnFilter.isHasResponsesVisible())
            headerRow.add(
                    LocaleHelper.getLocalizedMessage(locale, "Field_Report_HasResponses", config, localeClass));
        if (columnFilter.isHasHelpdeskResponsesVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_HasHelpdeskResponses", config,
                    localeClass));
        if (columnFilter.isResponseStorageMethodVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_ResponseStorageMethod", config,
                    localeClass));
        if (columnFilter.isResponseFormatTypeVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_ResponseFormatType", config,
                    localeClass));
        if (columnFilter.isPasswordStatusExpiredVisible())
            headerRow.add(
                    LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdExpired", config, localeClass));
        if (columnFilter.isPasswordStatusPreExpiredVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdPreExpired", config,
                    localeClass));
        if (columnFilter.isPasswordStatusViolatesPolicyVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdViolatesPolicy", config,
                    localeClass));
        if (columnFilter.isPasswordStatusWarnPeriodVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdWarnPeriod", config,
                    localeClass));
        if (columnFilter.isRequiresPasswordUpdateVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RequiresPasswordUpdate",
                    config, localeClass));
        if (columnFilter.isRequiresResponseUpdateVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RequiresResponseUpdate",
                    config, localeClass));
        if (columnFilter.isRequiresProfileUpdateVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RequiresProfileUpdate", config,
                    localeClass));
        if (columnFilter.isCacheTimestampVisible())
            headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RecordCacheTime", config,
                    localeClass));

        csvPrinter.printRecord(headerRow);
    }

    ClosableIterator<UserCacheRecord> cacheBeanIterator = null;
    try {
        cacheBeanIterator = this.iterator();
        while (cacheBeanIterator.hasNext()) {
            final UserCacheRecord userCacheRecord = cacheBeanIterator.next();
            outputRecordRow(config, locale, userCacheRecord, csvPrinter, columnFilter);
        }
    } finally {
        if (cacheBeanIterator != null) {
            cacheBeanIterator.close();
        }
    }

    csvPrinter.flush();
}

From source file:password.pwm.svc.report.ReportService.java

private void outputRecordRow(final Configuration config, final Locale locale,
        final UserCacheRecord userCacheRecord, final CSVPrinter csvPrinter,
        final ReportColumnFilter columnFilter) throws IOException {
    final String trueField = Display.getLocalizedMessage(locale, Display.Value_True, config);
    final String falseField = Display.getLocalizedMessage(locale, Display.Value_False, config);
    final String naField = Display.getLocalizedMessage(locale, Display.Value_NotApplicable, config);
    final List<String> csvRow = new ArrayList<>();
    if (columnFilter.isUsernameVisible())
        csvRow.add(userCacheRecord.getUsername());
    if (columnFilter.isUserDnVisible())
        csvRow.add(userCacheRecord.getUserDN());
    if (columnFilter.isLdapProfileVisible())
        csvRow.add(userCacheRecord.getLdapProfile());
    if (columnFilter.isEmailVisible())
        csvRow.add(userCacheRecord.getEmail());
    if (columnFilter.isUserGuidVisible())
        csvRow.add(userCacheRecord.getUserGUID());
    if (columnFilter.isAccountExpirationTimeVisible())
        csvRow.add(userCacheRecord.getAccountExpirationTime() == null ? naField
                : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getAccountExpirationTime()));

    if (columnFilter.isPasswordExpirationTimeVisible())
        csvRow.add(userCacheRecord.getPasswordExpirationTime() == null ? naField
                : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getPasswordExpirationTime()));

    if (columnFilter.isPasswordChangeTimeVisible())
        csvRow.add(userCacheRecord.getPasswordChangeTime() == null ? naField
                : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getPasswordChangeTime()));

    if (columnFilter.isResponseSetTimeVisible())
        csvRow.add(userCacheRecord.getResponseSetTime() == null ? naField
                : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getResponseSetTime()));

    if (columnFilter.isLastLoginTimeVisible())
        csvRow.add(userCacheRecord.getLastLoginTime() == null ? naField
                : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getLastLoginTime()));

    if (columnFilter.isHasResponsesVisible())
        csvRow.add(userCacheRecord.isHasResponses() ? trueField : falseField);
    if (columnFilter.isHasHelpdeskResponsesVisible())
        csvRow.add(userCacheRecord.isHasHelpdeskResponses() ? trueField : falseField);

    if (columnFilter.isResponseStorageMethodVisible())
        csvRow.add(userCacheRecord.getResponseStorageMethod() == null ? naField
                : userCacheRecord.getResponseStorageMethod().toString());

    if (columnFilter.isResponseFormatTypeVisible())
        csvRow.add(userCacheRecord.getResponseFormatType() == null ? naField
                : userCacheRecord.getResponseFormatType().toString());

    if (columnFilter.isPasswordStatusExpiredVisible())
        csvRow.add(userCacheRecord.getPasswordStatus().isExpired() ? trueField : falseField);
    if (columnFilter.isPasswordStatusPreExpiredVisible())
        csvRow.add(userCacheRecord.getPasswordStatus().isPreExpired() ? trueField : falseField);
    if (columnFilter.isPasswordStatusViolatesPolicyVisible())
        csvRow.add(userCacheRecord.getPasswordStatus().isViolatesPolicy() ? trueField : falseField);
    if (columnFilter.isPasswordStatusWarnPeriodVisible())
        csvRow.add(userCacheRecord.getPasswordStatus().isWarnPeriod() ? trueField : falseField);
    if (columnFilter.isRequiresPasswordUpdateVisible())
        csvRow.add(userCacheRecord.isRequiresPasswordUpdate() ? trueField : falseField);
    if (columnFilter.isRequiresResponseUpdateVisible())
        csvRow.add(userCacheRecord.isRequiresResponseUpdate() ? trueField : falseField);
    if (columnFilter.isRequiresProfileUpdateVisible())
        csvRow.add(userCacheRecord.isRequiresProfileUpdate() ? trueField : falseField);

    if (columnFilter.isCacheTimestampVisible())
        csvRow.add(userCacheRecord.getCacheTimestamp() == null ? naField
                : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getCacheTimestamp()));

    csvPrinter.printRecord(csvRow);
}

From source file:password.pwm.svc.stats.StatisticsManager.java

public int outputStatsToCsv(final OutputStream outputStream, final Locale locale, final boolean includeHeader)
        throws IOException {
    LOGGER.trace("beginning output stats to csv process");
    final Instant startTime = Instant.now();

    final StatisticsManager statsManger = pwmApplication.getStatisticsManager();
    final CSVPrinter csvPrinter = JavaHelper.makeCsvPrinter(outputStream);

    if (includeHeader) {
        final List<String> headers = new ArrayList<>();
        headers.add("KEY");
        headers.add("YEAR");
        headers.add("DAY");
        for (final Statistic stat : Statistic.values()) {
            headers.add(stat.getLabel(locale));
        }/*from w  w w. j a va 2s . com*/
        csvPrinter.printRecord(headers);
    }

    int counter = 0;
    final Map<StatisticsManager.DailyKey, String> keys = statsManger
            .getAvailableKeys(PwmConstants.DEFAULT_LOCALE);
    for (final StatisticsManager.DailyKey loopKey : keys.keySet()) {
        counter++;
        final StatisticsBundle bundle = statsManger.getStatBundleForKey(loopKey.toString());
        final List<String> lineOutput = new ArrayList<>();
        lineOutput.add(loopKey.toString());
        lineOutput.add(String.valueOf(loopKey.year));
        lineOutput.add(String.valueOf(loopKey.day));
        for (final Statistic stat : Statistic.values()) {
            lineOutput.add(bundle.getStatistic(stat));
        }
        csvPrinter.printRecord(lineOutput);
    }

    csvPrinter.flush();
    LOGGER.trace("completed output stats to csv process; output " + counter + " records in "
            + TimeDuration.fromCurrent(startTime).asCompactString());
    return counter;
}

From source file:password.pwm.util.report.ReportService.java

public void outputToCsv(final OutputStream outputStream, final boolean includeHeader, final Locale locale)
        throws IOException, ChaiUnavailableException, ChaiOperationException, PwmUnrecoverableException,
        PwmOperationalException {/*ww w  .ja va 2  s  .c  o  m*/
    final CSVPrinter csvPrinter = Helper.makeCsvPrinter(outputStream);
    final Configuration config = pwmApplication.getConfig();
    final Class localeClass = password.pwm.i18n.Admin.class;
    if (includeHeader) {
        final List<String> headerRow = new ArrayList<>();
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_UserDN", config, localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_LDAP_Profile", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_Username", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_Email", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_UserGuid", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_LastLogin", config, localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdExpireTime", config, localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdChangeTime", config, localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_ResponseSaveTime", config, localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_HasResponses", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_HasHelpdeskResponses", config,
                localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_ResponseStorageMethod", config,
                localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdExpired", config, localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdPreExpired", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdViolatesPolicy", config,
                localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_PwdWarnPeriod", config, localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RequiresPasswordUpdate", config,
                localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RequiresResponseUpdate", config,
                localeClass));
        headerRow.add(LocaleHelper.getLocalizedMessage(locale, "Field_Report_RequiresProfileUpdate", config,
                localeClass));
        headerRow.add(
                LocaleHelper.getLocalizedMessage(locale, "Field_Report_RecordCacheTime", config, localeClass));
        csvPrinter.printRecord(headerRow);
    }

    ClosableIterator<UserCacheRecord> cacheBeanIterator = null;
    try {
        cacheBeanIterator = this.iterator();
        while (cacheBeanIterator.hasNext()) {
            final UserCacheRecord userCacheRecord = cacheBeanIterator.next();
            outputRecordRow(config, locale, userCacheRecord, csvPrinter);
        }
    } finally {
        if (cacheBeanIterator != null) {
            cacheBeanIterator.close();
        }
    }

    csvPrinter.flush();
}

From source file:password.pwm.util.report.ReportService.java

private void outputRecordRow(final Configuration config, final Locale locale,
        final UserCacheRecord userCacheRecord, final CSVPrinter csvPrinter) throws IOException {
    final String trueField = Display.getLocalizedMessage(locale, Display.Value_True, config);
    final String falseField = Display.getLocalizedMessage(locale, Display.Value_False, config);
    final String naField = Display.getLocalizedMessage(locale, Display.Value_NotApplicable, config);
    final List<String> csvRow = new ArrayList<>();
    csvRow.add(userCacheRecord.getUserDN());
    csvRow.add(userCacheRecord.getLdapProfile());
    csvRow.add(userCacheRecord.getUsername());
    csvRow.add(userCacheRecord.getEmail());
    csvRow.add(userCacheRecord.getUserGUID());
    csvRow.add(userCacheRecord.getLastLoginTime() == null ? naField
            : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getLastLoginTime()));
    csvRow.add(userCacheRecord.getPasswordExpirationTime() == null ? naField
            : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getPasswordExpirationTime()));
    csvRow.add(userCacheRecord.getPasswordChangeTime() == null ? naField
            : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getPasswordChangeTime()));
    csvRow.add(userCacheRecord.getResponseSetTime() == null ? naField
            : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getResponseSetTime()));
    csvRow.add(userCacheRecord.isHasResponses() ? trueField : falseField);
    csvRow.add(userCacheRecord.isHasHelpdeskResponses() ? trueField : falseField);
    csvRow.add(userCacheRecord.getResponseStorageMethod() == null ? naField
            : userCacheRecord.getResponseStorageMethod().toString());
    csvRow.add(userCacheRecord.getPasswordStatus().isExpired() ? trueField : falseField);
    csvRow.add(userCacheRecord.getPasswordStatus().isPreExpired() ? trueField : falseField);
    csvRow.add(userCacheRecord.getPasswordStatus().isViolatesPolicy() ? trueField : falseField);
    csvRow.add(userCacheRecord.getPasswordStatus().isWarnPeriod() ? trueField : falseField);
    csvRow.add(userCacheRecord.isRequiresPasswordUpdate() ? trueField : falseField);
    csvRow.add(userCacheRecord.isRequiresResponseUpdate() ? trueField : falseField);
    csvRow.add(userCacheRecord.isRequiresProfileUpdate() ? trueField : falseField);
    csvRow.add(userCacheRecord.getCacheTimestamp() == null ? naField
            : PwmConstants.DEFAULT_DATETIME_FORMAT.format(userCacheRecord.getCacheTimestamp()));

    csvPrinter.printRecord(csvRow);
}

From source file:password.pwm.util.stats.StatisticsManager.java

public int outputStatsToCsv(final OutputStream outputStream, final Locale locale, final boolean includeHeader)
        throws IOException {
    LOGGER.trace("beginning output stats to csv process");
    final Date startTime = new Date();

    final StatisticsManager statsManger = pwmApplication.getStatisticsManager();
    final CSVPrinter csvPrinter = Helper.makeCsvPrinter(outputStream);

    if (includeHeader) {
        final List<String> headers = new ArrayList<>();
        headers.add("KEY");
        headers.add("YEAR");
        headers.add("DAY");
        for (Statistic stat : Statistic.values()) {
            headers.add(stat.getLabel(locale));
        }/*from ww  w .j  a va 2  s.c  om*/
        csvPrinter.printRecord(headers);
    }

    int counter = 0;
    final Map<StatisticsManager.DailyKey, String> keys = statsManger
            .getAvailableKeys(PwmConstants.DEFAULT_LOCALE);
    for (final StatisticsManager.DailyKey loopKey : keys.keySet()) {
        counter++;
        final StatisticsBundle bundle = statsManger.getStatBundleForKey(loopKey.toString());
        final List<String> lineOutput = new ArrayList<>();
        lineOutput.add(loopKey.toString());
        lineOutput.add(String.valueOf(loopKey.year));
        lineOutput.add(String.valueOf(loopKey.day));
        for (final Statistic stat : Statistic.values()) {
            lineOutput.add(bundle.getStatistic(stat));
        }
        csvPrinter.printRecord(lineOutput);
    }

    csvPrinter.flush();
    LOGGER.trace("completed output stats to csv process; output " + counter + " records in "
            + TimeDuration.fromCurrent(startTime).asCompactString());
    return counter;
}

From source file:permafrost.tundra.data.IDataCSVParser.java

/**
 * Returns a CSV representation of the given IData object.
 *
 * @param document The IData to convert to CSV.
 * @return The CSV representation of the IData.
 *///from   ww w . j  a  va 2  s.c  om
@Override
public String encodeToString(IData document) throws IOException {
    if (document == null)
        return null;

    IDataCursor cursor = document.getCursor();
    IData[] records = IDataUtil.getIDataArray(cursor, "recordWithNoID");
    cursor.destroy();

    if (records == null)
        return null;
    if (records.length == 0)
        return "";

    StringBuilder builder = new StringBuilder();
    CSVFormat format = CSVFormat.DEFAULT.withHeader(IDataHelper.getKeys(records)).withDelimiter(delimiter)
            .withNullString("");
    CSVPrinter printer = new CSVPrinter(builder, format);

    for (IData record : records) {
        if (record != null)
            printer.printRecord(IDataHelper.getValues(record));
    }

    return builder.toString();
}

From source file:persistencia.ArchivoCSV.java

public void create() throws IOException {
    CSVPrinter csvFilePrinter = null;

    try {//  w  w w  .j a v a2  s .co  m

        CSVFormat csvFileFormat = CSVFormat.DEFAULT.withRecordSeparator(NEW_LINE_SEPARATOR);

        csvFilePrinter = new CSVPrinter(file, csvFileFormat);

        csvFilePrinter.printRecord(FILE_HEADER);

        csvFilePrinter.printRecord(csv);

        System.out.println("CSV CORRECTAMENTE ESCRITO");

    } catch (Exception e) {
        System.out.println("Error en escritura");
    } finally {
        try {

            cerrarArchivo();
            csvFilePrinter.close();

        } catch (Exception e) {

            System.out.println("Error al cerrar archivo");
        }
    }

}