juergen 02/01/10 07:48:13
Modified: src/share/org/apache/slide/content
NodeRevisionDescriptor.java
Log:
if the namespace is not specified (is null), access the properties hashtable with an
empty namespace string. (no NPE)
Revision Changes Path
1.22 +27 -10
jakarta-slide/src/share/org/apache/slide/content/NodeRevisionDescriptor.java
Index: NodeRevisionDescriptor.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeRevisionDescriptor.java,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -r1.21 -r1.22
--- NodeRevisionDescriptor.java 4 Jan 2002 15:25:26 -0000 1.21
+++ NodeRevisionDescriptor.java 10 Jan 2002 15:48:13 -0000 1.22
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeRevisionDescriptor.java,v
1.21 2002/01/04 15:25:26 juergen Exp $
- * $Revision: 1.21 $
- * $Date: 2002/01/04 15:25:26 $
+ * $Header:
/home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeRevisionDescriptor.java,v
1.22 2002/01/10 15:48:13 juergen Exp $
+ * $Revision: 1.22 $
+ * $Date: 2002/01/10 15:48:13 $
*
* ====================================================================
*
@@ -81,7 +81,7 @@
* Node Revision Descriptor class.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Remy Maucherat</a>
- * @version $Revision: 1.21 $
+ * @version $Revision: 1.22 $
*/
public final class NodeRevisionDescriptor implements Serializable, Cloneable {
@@ -369,7 +369,7 @@
*/
public boolean exists(String name, String namespace) {
if (name != null)
- return (properties.get(namespace + name) != null);
+ return (properties.get(getNamespacedPropertyName(namespace,name)) !=
null);
else
return (false);
}
@@ -394,7 +394,7 @@
* @return String property value
*/
public NodeProperty getProperty(String name, String namespace) {
- Object result = properties.get(namespace + name);
+ Object result = properties.get(getNamespacedPropertyName(namespace,name));
if (result != null) {
return (NodeProperty) result;
} else {
@@ -444,7 +444,8 @@
* @param property Property
*/
public void setProperty(NodeProperty property) {
- properties.put(property.getNamespace() + property.getName(),
+ properties.put(getNamespacedPropertyName(property.getNamespace(),
+ property.getName()) ,
property);
}
@@ -455,7 +456,8 @@
* @param property Property
*/
public void removeProperty(NodeProperty property) {
- properties.remove(property.getNamespace() + property.getName());
+ properties.remove(getNamespacedPropertyName(property.getNamespace(),
+ property.getName()));
}
@@ -465,7 +467,7 @@
* @param property Property
*/
public void removeProperty(String property) {
- properties.remove(NodeProperty.DEFAULT_NAMESPACE + property);
+ properties.remove(getNamespacedPropertyName(NodeProperty.DEFAULT_NAMESPACE,
property));
}
@@ -475,7 +477,7 @@
* @param property Property
*/
public void removeProperty(String property, String nameSpace) {
- properties.remove(nameSpace + property);
+ properties.remove(getNamespacedPropertyName(nameSpace, property));
}
@@ -942,6 +944,21 @@
setContentLength(-1);
setLastModified(new Date());
+ }
+
+ /**
+ * Calculate the property name concatenated with the namespace, if available
+ *
+ * @param namespace the namespace name, possibly null
+ * @return propertyName the property name
+ *
+ * @return String the property name, including the namespace
+ */
+ public String getNamespacedPropertyName(String namespace, String propertyName) {
+ String result;
+ if (namespace == null) result = propertyName;
+ else result = namespace + propertyName;
+ return result;
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>