01: /**
02: * LibreSource
03: * Copyright (C) 2004-2008 Artenum SARL / INRIA
04: * http://www.libresource.org - contact@artenum.com
05: *
06: * This file is part of the LibreSource software,
07: * which can be used and distributed under license conditions.
08: * The license conditions are provided in the LICENSE.TXT file
09: * at the root path of the packaging that enclose this file.
10: * More information can be found at
11: * - http://dev.libresource.org/home/license
12: *
13: * Initial authors :
14: *
15: * Guillaume Bort / INRIA
16: * Francois Charoy / Universite Nancy 2
17: * Julien Forest / Artenum
18: * Claude Godart / Universite Henry Poincare
19: * Florent Jouille / INRIA
20: * Sebastien Jourdain / INRIA / Artenum
21: * Yves Lerumeur / Artenum
22: * Pascal Molli / Universite Henry Poincare
23: * Gerald Oster / INRIA
24: * Mariarosa Penzi / Artenum
25: * Gerard Sookahet / Artenum
26: * Raphael Tani / INRIA
27: *
28: * Contributors :
29: *
30: * Stephane Bagnier / Artenum
31: * Amadou Dia / Artenum-IUP Blois
32: * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33: */package org.libresource.files.parsers;
34:
35: import org.apache.poi.hpsf.PropertySetFactory;
36: import org.apache.poi.hpsf.SummaryInformation;
37: import org.apache.poi.poifs.eventfilesystem.POIFSReaderEvent;
38: import org.apache.poi.poifs.eventfilesystem.POIFSReaderListener;
39:
40: public class MSFSReaderListener implements POIFSReaderListener {
41: private StringBuffer buffer = new StringBuffer();
42:
43: public void processPOIFSReaderEvent(POIFSReaderEvent event) {
44: SummaryInformation si = null;
45:
46: try {
47: si = (SummaryInformation) PropertySetFactory.create(event
48: .getStream());
49:
50: if (si.getTitle() != null) {
51: buffer.append(si.getTitle().trim() + " ");
52: }
53:
54: if (si.getAuthor() != null) {
55: buffer.append(si.getAuthor().trim() + " ");
56: }
57:
58: if (si.getComments() != null) {
59: buffer.append(si.getComments().trim() + " ");
60: }
61:
62: if (si.getSubject() != null) {
63: buffer.append(si.getSubject().trim() + " ");
64: }
65:
66: if (si.getKeywords() != null) {
67: buffer.append(si.getKeywords().trim());
68: }
69: } catch (Exception e) {
70: //
71: }
72: }
73:
74: public String getBuffer() {
75: return buffer.toString();
76: }
77: }
|