]> source.dussan.org Git - poi.git/commitdiff
POIXMLproperties: core properties improvement + test
authorPaolo Mottadelli <paolo@apache.org>
Mon, 20 Jul 2009 17:10:43 +0000 (17:10 +0000)
committerPaolo Mottadelli <paolo@apache.org>
Mon, 20 Jul 2009 17:10:43 +0000 (17:10 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@795923 13f79535-47bb-0310-9956-ffa450edef68

src/ooxml/java/org/apache/poi/POIXMLProperties.java
src/ooxml/testcases/org/apache/poi/TestPOIXMLProperties.java
src/scratchpad/testcases/org/apache/poi/hwpf/data/documentProperties.docx [new file with mode: 0644]

index 69661496688f072e2283b3d93bb687c687aa21a2..ca2ca808b966d89aa8dda325510c565601e8459d 100644 (file)
@@ -165,6 +165,18 @@ public class POIXMLProperties {
                public String getTitle() {
                        return part.getTitleProperty().getValue();
                }
+               public String getCreator() {
+                       return part.getCreatorProperty().getValue();
+               }
+               public void setCreator(String creator) {
+                       part.setCreatorProperty(creator);
+               }
+               public String getSubject() {
+                       return part.getSubjectProperty().getValue();
+               }
+               public void setSubjectProperty(String subject) {
+                       part.setSubjectProperty(subject);
+               }
                
                public PackagePropertiesPart getUnderlyingProperties() {
                        return part;
index 4349600ad68bea1cc0e823c1533dffa90c1a67c5..c27619cec0efb8a065e9ce02e3260bb133f70811 100755 (executable)
 
 package org.apache.poi;
 
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.apache.poi.xssf.XSSFTestDataSamples;
+import java.io.File;
 
 import junit.framework.TestCase;
 
+import org.apache.poi.openxml4j.opc.OPCPackage;
+import org.apache.poi.xssf.XSSFTestDataSamples;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.apache.poi.xwpf.usermodel.XWPFDocument;
+
 /**
  * Test setting extended and custom OOXML properties
  */
 public class TestPOIXMLProperties extends TestCase {
+       
     public void testWorkbookExtendedProperties() throws Exception {
         XSSFWorkbook workbook = new XSSFWorkbook();
         POIXMLProperties props = workbook.getProperties();
@@ -131,4 +136,24 @@ public class TestPOIXMLProperties extends TestCase {
 
 
     }
+    
+    public void testDocumentProperties() throws Exception {
+               File sampleFile = new File(
+                               System.getProperty("HWPF.testdata.path") +
+                               File.separator + "documentProperties.docx"
+               );
+               assertTrue(sampleFile.exists());
+               XWPFDocument sampleDoc;
+               sampleDoc = new XWPFDocument(
+                               POIXMLDocument.openPackage(sampleFile.toString())
+               );
+               POIXMLProperties props = sampleDoc.getProperties();
+               assertNotNull(props);
+               String title = props.getCoreProperties().getTitle();
+               assertEquals("Hello World", title);
+               String creator = props.getCoreProperties().getCreator();
+               assertEquals("Paolo Mottadelli", creator);
+               String subject = props.getCoreProperties().getSubject();
+               assertEquals("Greetings", subject);
+    }
 }
\ No newline at end of file
diff --git a/src/scratchpad/testcases/org/apache/poi/hwpf/data/documentProperties.docx b/src/scratchpad/testcases/org/apache/poi/hwpf/data/documentProperties.docx
new file mode 100644 (file)
index 0000000..d18b31e
Binary files /dev/null and b/src/scratchpad/testcases/org/apache/poi/hwpf/data/documentProperties.docx differ