From: Nick Burch Date: Wed, 3 Sep 2014 13:38:48 +0000 (+0000) Subject: Provide a getter for custom properties, to match the add and contains methods already... X-Git-Tag: REL_3_11_BETA3~83 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=662ab4557076e332f5950098ad010c334e922566;p=poi.git Provide a getter for custom properties, to match the add and contains methods already there git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1622252 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/ooxml/java/org/apache/poi/POIXMLProperties.java b/src/ooxml/java/org/apache/poi/POIXMLProperties.java index be23210174..a58af00180 100644 --- a/src/ooxml/java/org/apache/poi/POIXMLProperties.java +++ b/src/ooxml/java/org/apache/poi/POIXMLProperties.java @@ -285,6 +285,7 @@ public class POIXMLProperties { public org.openxmlformats.schemas.officeDocument.x2006.extendedProperties.CTProperties getUnderlyingProperties() { return props.getProperties(); } + } /** @@ -380,18 +381,37 @@ public class POIXMLProperties { return propid + 1; } - /** - * Check if a property with this name already exists in the collection of custom properties - * - * @param name the name to check - * @return whether a property with the given name exists in the custom properties - */ + /** + * Check if a property with this name already exists in the collection of custom properties + * + * @param name the name to check + * @return whether a property with the given name exists in the custom properties + */ @SuppressWarnings("deprecation") - public boolean contains(String name){ - for(CTProperty p : props.getProperties().getPropertyArray()){ - if(p.getName().equals(name)) return true; - } - return false; - } - } + public boolean contains(String name) { + for(CTProperty p : props.getProperties().getPropertyArray()){ + if(p.getName().equals(name)) return true; + } + return false; + } + + /** + * Retrieve the custom property with this name, or null if none exists. + * + * You will need to test the various isSetX methods to work out + * what the type of the property is, before fetching the + * appropriate value for it. + * + * @param name the name of the property to fetch + */ + @SuppressWarnings("deprecation") + public CTProperty getProperty(String name) { + for(CTProperty p : props.getProperties().getPropertyArray()){ + if(p.getName().equals(name)) { + return p; + } + } + return null; + } + } }