luetzkendorf 2004/10/18 08:00:49
Modified: src/share/org/apache/slide/content Tag:
SLIDE_2_1_RELEASE_BRANCH NodeProperty.java
Log:
lazy construction for (almost unused) permissions vector
Revision Changes Path
No revision
No revision
1.25.2.1 +17 -8
jakarta-slide/src/share/org/apache/slide/content/NodeProperty.java
Index: NodeProperty.java
===================================================================
RCS file:
/home/cvs/jakarta-slide/src/share/org/apache/slide/content/NodeProperty.java,v
retrieving revision 1.25
retrieving revision 1.25.2.1
diff -u -r1.25 -r1.25.2.1
--- NodeProperty.java 5 Aug 2004 15:44:57 -0000 1.25
+++ NodeProperty.java 18 Oct 2004 15:00:49 -0000 1.25.2.1
@@ -35,6 +35,7 @@
import org.apache.slide.common.Domain;
import org.apache.slide.common.ObjectValidationFailedException;
import org.apache.slide.security.NodePermission;
+import org.apache.slide.util.EmptyEnumeration;
import org.apache.slide.util.Messages;
import org.jdom.Namespace;
@@ -105,7 +106,6 @@
setValue(value);
this.namespace = DEFAULT_NAMESPACE;
this.type = new String();
- this.permissions = new Vector();
this.kind = determineKind( namespace, name );
}
@@ -213,7 +213,7 @@
/**
* Permission list.
*/
- private Vector permissions;
+ private Vector permissions = null;
// ------------------------------------------------------------- Properties
@@ -403,6 +403,9 @@
* @param permission Permission
*/
public void addPermission(NodePermission permission) {
+ if (this.permissions == null) {
+ this.permissions = new Vector();
+ }
permissions.addElement(permission);
}
@@ -413,7 +416,9 @@
* @param permission Permission to remove
*/
public void removePermission(NodePermission permission) {
- permissions.removeElement(permission);
+ if (this.permissions != null) {
+ permissions.removeElement(permission);
+ }
}
@@ -423,7 +428,11 @@
* @return Enumeration permissions
*/
public Enumeration enumeratePermissions() {
- return permissions.elements();
+ if (this.permissions != null) {
+ return permissions.elements();
+ } else {
+ return EmptyEnumeration.INSTANCE;
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]