You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ye...@apache.org on 2010/04/20 12:27:31 UTC

svn commit: r935860 - in /poi/trunk: src/documentation/content/xdocs/ src/ooxml/java/org/apache/poi/ src/ooxml/testcases/org/apache/poi/xwpf/ test-data/document/

Author: yegor
Date: Tue Apr 20 10:27:30 2010
New Revision: 935860

URL: http://svn.apache.org/viewvc?rev=935860&view=rev
Log:
Ensure that CTVectorVariant is included in poi-ooxml-schemas.jar, Added accessors to CoreProperties.Keywords. See Bugzilla 49146 and 49153

Added:
    poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestAllExtendedProperties.java
    poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestPackageCorePropertiesGetKeywords.java
    poi/trunk/test-data/document/TestPoiXMLDocumentCorePropertiesGetKeywords.docx   (with props)
Modified:
    poi/trunk/src/documentation/content/xdocs/status.xml
    poi/trunk/src/ooxml/java/org/apache/poi/POIXMLProperties.java
    poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/AllXWPFTests.java

Modified: poi/trunk/src/documentation/content/xdocs/status.xml
URL: http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/status.xml?rev=935860&r1=935859&r2=935860&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/status.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/status.xml Tue Apr 20 10:27:30 2010
@@ -34,6 +34,8 @@
 
     <changes>
         <release version="3.7-SNAPSHOT" date="2010-??-??">
+           <action dev="POI-DEVELOPERS" type="fix">49153 - Ensure that CTVectorVariant is included in poi-ooxml-schemas.jar</action>
+           <action dev="POI-DEVELOPERS" type="add">49146 - Added accessors to CoreProperties.Keywords  </action>
            <action dev="POI-DEVELOPERS" type="fix">48916 - Propagate parent to parent-aware records decoded from Escher</action>
            <action dev="POI-DEVELOPERS" type="fix">48485 - Add extra paper size constans to PrintSetup, such as A3, B4 and B5</action>
            <action dev="POI-DEVELOPERS" type="fix">Make poifs.filesystem.DirectoryNode preserve the original ordering of its files, which HSMF needs to be able to correctly match up chunks</action>

Modified: poi/trunk/src/ooxml/java/org/apache/poi/POIXMLProperties.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/POIXMLProperties.java?rev=935860&r1=935859&r2=935860&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/POIXMLProperties.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/POIXMLProperties.java Tue Apr 20 10:27:30 2010
@@ -217,6 +217,12 @@ public class POIXMLProperties {
 		public void setIdentifier(String identifier) {
 			part.setIdentifierProperty(identifier);
 		}
+		public String getKeywords() {
+			return part.getKeywordsProperty().getValue();
+		}
+		public void setKeywords(String keywords) {
+			part.setKeywordsProperty(keywords);
+		}
 		public Date getLastPrinted() {
 			return part.getLastPrintedProperty().getValue();
 		}

Modified: poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/AllXWPFTests.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/AllXWPFTests.java?rev=935860&r1=935859&r2=935860&view=diff
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/AllXWPFTests.java (original)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/AllXWPFTests.java Tue Apr 20 10:27:30 2010
@@ -45,6 +45,8 @@ public final class AllXWPFTests {
 		result.addTestSuite(TestXWPFParagraph.class);
 		result.addTestSuite(TestXWPFRun.class);
 		result.addTestSuite(TestXWPFTable.class);
-		return result;
+		result.addTestSuite(TestAllExtendedProperties.class);
+		result.addTestSuite(TestPackageCorePropertiesGetKeywords.class);
+        return result;
 	}
 }

Added: poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestAllExtendedProperties.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestAllExtendedProperties.java?rev=935860&view=auto
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestAllExtendedProperties.java (added)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestAllExtendedProperties.java Tue Apr 20 10:27:30 2010
@@ -0,0 +1,109 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.xwpf;
+
+import java.io.File;
+import java.io.IOException;
+import java.text.ParsePosition;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import junit.framework.TestCase;
+
+import org.apache.poi.POIXMLProperties.CoreProperties;
+import org.apache.poi.openxml4j.OpenXML4JTestDataSamples;
+import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
+import org.apache.poi.openxml4j.exceptions.OpenXML4JException;
+import org.apache.poi.openxml4j.opc.OPCPackage;
+import org.apache.poi.openxml4j.opc.PackageProperties;
+import org.apache.poi.openxml4j.util.Nullable;
+import org.apache.poi.util.POILogger;
+import org.apache.poi.util.POILogFactory;
+import org.apache.poi.xwpf.usermodel.XWPFDocument;
+import org.openxmlformats.schemas.officeDocument.x2006.docPropsVTypes.CTVariant;
+import org.openxmlformats.schemas.officeDocument.x2006.extendedProperties.CTProperties;
+import org.openxmlformats.schemas.officeDocument.x2006.extendedProperties.CTVectorLpstr;
+import org.openxmlformats.schemas.officeDocument.x2006.extendedProperties.CTVectorVariant;
+
+/**
+ * Tests if the {@link CoreProperties#getKeywords()} method. This test has been
+ * submitted because even though the
+ * {@link PackageProperties#getKeywordsProperty()} had been present before, the
+ * {@link CoreProperties#getKeywords()} had been missing.
+ * 
+ * The author of this has added {@link CoreProperties#getKeywords()} and
+ * {@link CoreProperties#setKeywords(String)} and this test is supposed to test
+ * them.
+ * 
+ * @author Antoni Mylka
+ * 
+ */
+public final class TestAllExtendedProperties extends TestCase {
+	public void testGetAllExtendedProperties() {
+		XWPFDocument doc = XWPFTestDataSamples.openSampleDocument("TestPoiXMLDocumentCorePropertiesGetKeywords.docx");
+		CTProperties ctProps = doc.getProperties().getExtendedProperties().getUnderlyingProperties();
+		assertEquals("Microsoft Office Word",ctProps.getApplication());
+		assertEquals("14.0000",ctProps.getAppVersion());
+		assertEquals(57,ctProps.getCharacters());
+		assertEquals(66,ctProps.getCharactersWithSpaces());
+		assertEquals("",ctProps.getCompany());
+		assertNull(ctProps.getDigSig());
+		assertEquals(0,ctProps.getDocSecurity());
+		assertNotNull(ctProps.getDomNode());
+		
+		CTVectorVariant vec = ctProps.getHeadingPairs();
+		assertEquals(2,vec.getVector().sizeOfVariantArray());
+		assertEquals("Title",vec.getVector().getVariantArray(0).getLpstr());
+		assertEquals(1,vec.getVector().getVariantArray(1).getI4());
+		
+		assertFalse(ctProps.isSetHiddenSlides());
+		assertEquals(0,ctProps.getHiddenSlides());
+		assertFalse(ctProps.isSetHLinks());
+		assertNull(ctProps.getHLinks());
+		assertNull(ctProps.getHyperlinkBase());
+		assertTrue(ctProps.isSetHyperlinksChanged());
+		assertFalse(ctProps.getHyperlinksChanged());
+		assertEquals(1,ctProps.getLines());
+		assertTrue(ctProps.isSetLinksUpToDate());
+		assertFalse(ctProps.getLinksUpToDate());
+		assertNull(ctProps.getManager());
+		assertFalse(ctProps.isSetMMClips());
+		assertEquals(0,ctProps.getMMClips());
+		assertFalse(ctProps.isSetNotes());
+		assertEquals(0,ctProps.getNotes());
+		assertEquals(1,ctProps.getPages());
+		assertEquals(1,ctProps.getParagraphs());
+		assertNull(ctProps.getPresentationFormat());
+		assertTrue(ctProps.isSetScaleCrop());
+		assertFalse(ctProps.getScaleCrop());
+		assertTrue(ctProps.isSetSharedDoc());
+		assertFalse(ctProps.getSharedDoc());
+		assertFalse(ctProps.isSetSlides());
+		assertEquals(0,ctProps.getSlides());
+		assertEquals("Normal.dotm",ctProps.getTemplate());
+		
+		CTVectorLpstr vec2 = ctProps.getTitlesOfParts();
+		assertEquals(1,vec2.getVector().sizeOfLpstrArray());
+		assertEquals("Example Word 2010 Document",vec2.getVector().getLpstrArray(0));
+		
+		assertEquals(3,ctProps.getTotalTime());
+		assertEquals(10,ctProps.getWords());
+		
+	}
+}

Added: poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestPackageCorePropertiesGetKeywords.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestPackageCorePropertiesGetKeywords.java?rev=935860&view=auto
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestPackageCorePropertiesGetKeywords.java (added)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/xwpf/TestPackageCorePropertiesGetKeywords.java Tue Apr 20 10:27:30 2010
@@ -0,0 +1,64 @@
+/* ====================================================================
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+==================================================================== */
+
+package org.apache.poi.xwpf;
+
+import java.io.File;
+import java.io.IOException;
+import java.text.ParsePosition;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.TimeZone;
+
+import junit.framework.TestCase;
+
+import org.apache.poi.POIXMLProperties.CoreProperties;
+import org.apache.poi.openxml4j.OpenXML4JTestDataSamples;
+import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
+import org.apache.poi.openxml4j.exceptions.OpenXML4JException;
+import org.apache.poi.openxml4j.opc.OPCPackage;
+import org.apache.poi.openxml4j.opc.PackageProperties;
+import org.apache.poi.openxml4j.util.Nullable;
+import org.apache.poi.util.POILogger;
+import org.apache.poi.util.POILogFactory;
+import org.apache.poi.xwpf.usermodel.XWPFDocument;
+
+/**
+ * Tests if the {@link CoreProperties#getKeywords()} method. This test has been
+ * submitted because even though the
+ * {@link PackageProperties#getKeywordsProperty()} had been present before, the
+ * {@link CoreProperties#getKeywords()} had been missing.
+ * 
+ * The author of this has added {@link CoreProperties#getKeywords()} and
+ * {@link CoreProperties#setKeywords(String)} and this test is supposed to test
+ * them.
+ * 
+ * @author Antoni Mylka
+ * 
+ */
+public final class TestPackageCorePropertiesGetKeywords extends TestCase {
+	public void testGetSetKeywords() {
+		XWPFDocument doc = XWPFTestDataSamples.openSampleDocument("TestPoiXMLDocumentCorePropertiesGetKeywords.docx");
+		String keywords = doc.getProperties().getCoreProperties().getKeywords();
+		assertEquals("extractor, test, rdf", keywords);
+		
+		doc.getProperties().getCoreProperties().setKeywords("test, keywords");
+		doc = XWPFTestDataSamples.writeOutAndReadBack(doc);
+		keywords = doc.getProperties().getCoreProperties().getKeywords();
+		assertEquals("test, keywords",keywords);
+	}
+}

Added: poi/trunk/test-data/document/TestPoiXMLDocumentCorePropertiesGetKeywords.docx
URL: http://svn.apache.org/viewvc/poi/trunk/test-data/document/TestPoiXMLDocumentCorePropertiesGetKeywords.docx?rev=935860&view=auto
==============================================================================
Binary file - no diff available.

Propchange: poi/trunk/test-data/document/TestPoiXMLDocumentCorePropertiesGetKeywords.docx
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org