Example usage for org.apache.poi.hpsf SummaryInformation setKeywords

List of usage examples for org.apache.poi.hpsf SummaryInformation setKeywords

Introduction

In this page you can find the example usage for org.apache.poi.hpsf SummaryInformation setKeywords.

Prototype

public void setKeywords(final String keywords) 

Source Link

Document

Sets the keywords.

Usage

From source file:gov.nih.nci.evs.app.neopl.XLSXMetadataUtils.java

License:Open Source License

public static void setSummaryData(String filename, String[] keys, String[] values) {
    String size = getFileSize(filename);
    FileInputStream stream = null;
    try {/*w  w  w.ja  va 2s.  co  m*/
        stream = new FileInputStream(new File(filename));
        POIFSFileSystem poifs = null;
        boolean passed = false;
        try {
            poifs = new POIFSFileSystem(stream);
            passed = true;
        } catch (Exception e) {
            passed = false;
        }
        if (!passed) {
            setPOISummaryData(filename, keys, values);
            stream.close();
            return;
        }

        HSSFWorkbook workbook = null;
        SummaryInformation summaryInfo = null;
        FileInputStream fis = null;
        try {
            System.out.println(filename);
            fis = new FileInputStream(filename);

            workbook = new HSSFWorkbook(fis);
            summaryInfo = workbook.getSummaryInformation();
            if (summaryInfo == null) {
                workbook.createInformationProperties();
                summaryInfo = workbook.getSummaryInformation();

                for (int i = 0; i < keys.length; i++) {
                    String key = keys[i];
                    String value = values[i];

                    System.out.println(key + " -> " + value);

                    if (key.compareTo(SUMMARY_DATA_AUTHOR) == 0) {
                        summaryInfo.setAuthor(value);
                    } else if (key.compareTo(SUMMARY_DATA_KEYWORDS) == 0) {
                        summaryInfo.setKeywords(value);
                    } else if (key.compareTo(SUMMARY_DATA_TITLE) == 0) {
                        summaryInfo.setTitle(value);
                    } else if (key.compareTo(SUMMARY_DATA_SUBJECT) == 0) {
                        summaryInfo.setSubject(value);
                    }
                }

            }
        } catch (Exception ex) {
            ex.printStackTrace();
        } finally {
            try {
                fis.close();
            } catch (Exception ex) {

            }
        }
        FileOutputStream fos = null;

        try {
            fos = new FileOutputStream(new File(filename));
            workbook.write(fos);
            fos.flush();
        } catch (Exception ex) {
            ex.printStackTrace();
        } finally {
            fos.close();
        }

    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

From source file:mat.server.service.impl.XLSGenerator.java

/** Creates the meta data.
 * //from w  w  w . j  ava2 s. c o  m
 * @param wkbk - HSSFWorkbook.
 * 
 *        * */
public final void createMetaData(final HSSFWorkbook wkbk) {
    // Author: eMeasureTool, Title: Value Set Export, Subject: Value Set
    // Export, Keywords: Value Set, OID, Export, Measure, Code, Descriptor
    wkbk.createInformationProperties();
    SummaryInformation si = wkbk.getSummaryInformation();
    si.setAuthor(AUTHOR);
    si.setTitle(TITLE);
    si.setSubject(SUBJECT);
    si.setKeywords(KEYWORDS);
}

From source file:org.alanwilliamson.openbd.plugin.spreadsheet.functions.SpreadsheetAddInfo.java

License:Open Source License

public cfData execute(cfSession _session, List<cfData> parameters) throws cfmRunTimeException {
    if (parameters.get(0).getDataType() != cfData.CFSTRUCTDATA)
        throwException(_session, "parameter must be of type structure");

    cfSpreadSheetData spreadsheet = (cfSpreadSheetData) parameters.get(1);
    cfStructData s = (cfStructData) parameters.get(0);

    Workbook workbook = spreadsheet.getWorkBook();

    /*/*  w  w w  .ja va2 s . c  om*/
     * XSSFWorkbook
     */
    if (workbook instanceof XSSFWorkbook) {
        XSSFWorkbook xSSFWorkbook = (XSSFWorkbook) workbook;

        CoreProperties cP = xSSFWorkbook.getProperties().getCoreProperties();

        if (s.containsKey("author"))
            cP.setCreator(s.getData("author").getString());
        if (s.containsKey("category"))
            cP.setCategory(s.getData("category").getString());
        if (s.containsKey("subject"))
            cP.setSubjectProperty(s.getData("subject").getString());
        if (s.containsKey("title"))
            cP.setTitle(s.getData("title").getString());
        if (s.containsKey("revision"))
            cP.setRevision(s.getData("revision").getString());
        if (s.containsKey("description"))
            cP.setDescription(s.getData("description").getString());

    } else {
        HSSFWorkbook hSSFWorkbook = (HSSFWorkbook) workbook;
        DocumentSummaryInformation dSummary = hSSFWorkbook.getDocumentSummaryInformation();

        if (dSummary == null) {
            hSSFWorkbook.createInformationProperties();
            dSummary = hSSFWorkbook.getDocumentSummaryInformation();
        }

        if (s.containsKey("category"))
            dSummary.setCategory(s.getData("category").getString());
        if (s.containsKey("manager"))
            dSummary.setManager(s.getData("manager").getString());
        if (s.containsKey("company"))
            dSummary.setCompany(s.getData("company").getString());

        SummaryInformation sInformation = hSSFWorkbook.getSummaryInformation();

        if (s.containsKey("title"))
            sInformation.setTitle(s.getData("title").getString());
        if (s.containsKey("subject"))
            sInformation.setSubject(s.getData("subject").getString());
        if (s.containsKey("author"))
            sInformation.setAuthor(s.getData("author").getString());
        if (s.containsKey("comments"))
            sInformation.setComments(s.getData("comments").getString());
        if (s.containsKey("keywords"))
            sInformation.setKeywords(s.getData("keywords").getString());
        if (s.containsKey("lastauthor"))
            sInformation.setLastAuthor(s.getData("lastauthor").getString());
    }

    return cfBooleanData.TRUE;
}

From source file:ro.nextreports.engine.exporter.XlsExporter.java

License:Apache License

public static void createSummaryInformation(String filePath, String title) {

    if (filePath == null) {
        return;/* www .  j  a va 2 s .co m*/
    }
    try {
        File poiFilesystem = new File(filePath);
        InputStream is = new FileInputStream(poiFilesystem);
        POIFSFileSystem poifs = new POIFSFileSystem(is);
        is.close();
        DirectoryEntry dir = poifs.getRoot();

        SummaryInformation si = PropertySetFactory.newSummaryInformation();
        si.setTitle(title);
        si.setAuthor(ReleaseInfoAdapter.getCompany());
        si.setApplicationName("NextReports " + ReleaseInfoAdapter.getVersionNumber());
        si.setSubject("Created by NextReports Designer" + ReleaseInfoAdapter.getVersionNumber());
        si.setCreateDateTime(new Date());
        si.setKeywords(ReleaseInfoAdapter.getHome());

        si.write(dir, SummaryInformation.DEFAULT_STREAM_NAME);

        OutputStream out = new FileOutputStream(poiFilesystem);
        poifs.writeFilesystem(out);
        out.close();
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}