You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-dev@jakarta.apache.org by df...@apache.org on 2004/02/24 17:47:09 UTC

cvs commit: jakarta-slide/src/share/org/apache/slide/structure Structure.java StructureImpl.java

dflorey     2004/02/24 08:47:09

  Modified:    src/share/org/apache/slide/content Content.java
                        ContentImpl.java
               src/share/org/apache/slide/event ContentEvent.java
                        EventCollection.java EventDispatcher.java
                        LockEvent.java MacroEvent.java SearchEvent.java
                        SecurityEvent.java StructureEvent.java package.html
               src/share/org/apache/slide/lock Lock.java LockImpl.java
               src/share/org/apache/slide/macro Macro.java MacroImpl.java
               src/share/org/apache/slide/search SearchImpl.java
               src/share/org/apache/slide/security Security.java
                        SecurityImpl.java
               src/share/org/apache/slide/structure Structure.java
                        StructureImpl.java
  Added:       src/share/org/apache/slide/event RemoteInformation.java
                        ResourceEvent.java
  Log:
  Added some information to events (e.g. namespace) that might be needed by event listeners.
  Added remote event information.
  
  Revision  Changes    Path
  1.15      +4 -4      jakarta-slide/src/share/org/apache/slide/content/Content.java
  
  Index: Content.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/content/Content.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  
  
  
  1.54      +33 -32    jakarta-slide/src/share/org/apache/slide/content/ContentImpl.java
  
  Index: ContentImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/content/ContentImpl.java,v
  retrieving revision 1.53
  retrieving revision 1.54
  diff -u -r1.53 -r1.54
  --- ContentImpl.java	11 Feb 2004 12:58:31 -0000	1.53
  +++ ContentImpl.java	24 Feb 2004 16:47:07 -0000	1.54
  @@ -191,7 +191,7 @@
        * from a branch.
        *
        * @param revisionDescriptors Node revision descriptors
  -     * @param branch Branch name
  +     * @param branch String branch
        */
       public NodeRevisionDescriptor retrieve
           (SlideToken token, NodeRevisionDescriptors revisionDescriptors,
  @@ -232,7 +232,7 @@
               result = retrieve( token, revisionDescriptors,
                                 latestNrn );
           }
  -        
  +
           return result;
       }
       
  @@ -271,8 +271,8 @@
                              null, POST_RETRIEVE);
           
           // Fire event
  -        if ( ContentEvent.RETRIEVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.RETRIEVE, new ContentEvent(this, token, revisionDescriptors, revisionDescriptor));
  -        
  +        if ( ContentEvent.RETRIEVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.RETRIEVE, new ContentEvent(this, token, namespace,  objectUri.toString(), revisionDescriptors, revisionDescriptor));
  +
           return revisionDescriptor;
       }
       
  @@ -305,7 +305,7 @@
               result = retrieve( token, revisionDescriptors,
                                 latestNrn );
           }
  -        
  +
           return result;
       }
       
  @@ -362,7 +362,7 @@
                              revisionContent, POST_RETRIEVE);
           
           // Fire event
  -        if ( ContentEvent.RETRIEVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.RETRIEVE, new ContentEvent(this, token, revisionDescriptor, revisionContent));
  +        if ( ContentEvent.RETRIEVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.RETRIEVE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptor, revisionContent));
   
           return revisionContent;
       }
  @@ -411,7 +411,7 @@
           revisionDescriptors.setUri(strUri);
   
           // Fire event
  -        if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, revisionDescriptors));
  +        if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, namespace, strUri, revisionDescriptors));
   
           objectUri.getStore()
               .createRevisionDescriptors(objectUri, revisionDescriptors);
  @@ -507,9 +507,9 @@
               
               // We update the descriptor
               revisionDescriptor.setRevisionNumber(newRevisionNumber);
  -            
  +
               // Fire event
  -            if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, revisionDescriptors, revisionDescriptor, revisionContent));
  +            if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, revisionDescriptor, revisionContent));
   
               // Invoke interceptors
               invokeInterceptors(token, revisionDescriptors, revisionDescriptor,
  @@ -580,9 +580,9 @@
                           // now use the merged revision descriptor
                           revisionDescriptor = oldRevisionDescriptor;
                       } // end of merge
  -                    
  +
                       // Fire event
  -                    if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, revisionDescriptors, revisionDescriptor, revisionContent));
  +                    if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, revisionDescriptor, revisionContent));
   
                       // Invoke interceptors
                       invokeInterceptors(token, revisionDescriptors,
  @@ -616,9 +616,9 @@
                       // Basically, it would mean that there is no initial
                       // revision, which is incorrect since the object
                       // HAS revisions.
  -                    
  +
                       // Fire event
  -                    if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, revisionDescriptors, revisionDescriptor, revisionContent));
  +                    if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, revisionDescriptor, revisionContent));
   
                       // Invoke interceptors
                       invokeInterceptors(token, revisionDescriptors,
  @@ -730,7 +730,7 @@
        *
        * @param strUri Uri
        * @param branchName Name of the new branch
  -     * @param basedOnRevisionNumber Node revision number of
  +     * @param basedOnRevisionNumber NodeRevisionNumber revision descriptor of
        *                                  the revision on which the new branch
        *                                  is based on.
        *
  @@ -803,7 +803,7 @@
               (basedOnRevisionNumber, branchedRevisionNumber);
           
           // Fire event
  -        if ( ContentEvent.FORK.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.FORK, new ContentEvent(this, token, revisionDescriptors));
  +        if ( ContentEvent.FORK.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.FORK, new ContentEvent(this, token, namespace, strUri, revisionDescriptors));
   
           // Invoke interceptors
           invokeInterceptors(token, revisionDescriptors,
  @@ -826,7 +826,7 @@
           invokeInterceptors(token, revisionDescriptors,
                              basedOnRevisionDescriptor,
                              basedOnRevisionContent, POST_STORE);
  -        
  +
           return branchedRevisionNumber;
       }
       
  @@ -933,7 +933,7 @@
           revisionDescriptors.setLatestRevision(mainBranch, newRevisionNumber);
           
           // Fire event
  -        if ( ContentEvent.MERGE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.MERGE, new ContentEvent(this, token, revisionDescriptors, newRevisionDescriptor, revisionContent));
  +        if ( ContentEvent.MERGE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.MERGE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, newRevisionDescriptor, revisionContent));
   
           // Invoke interceptors
           invokeInterceptors(token, revisionDescriptors, newRevisionDescriptor,
  @@ -1000,9 +1000,9 @@
           NodeRevisionDescriptor oldRevisionDescriptor =
               objectUri.getStore().retrieveRevisionDescriptor
               (objectUri, revisionDescriptor.getRevisionNumber());
  -        
  +
           // Fire event
  -        if ( ContentEvent.STORE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.STORE, new ContentEvent(this, token, revisionDescriptors, revisionDescriptor, revisionContent));
  +        if ( ContentEvent.STORE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.STORE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, revisionDescriptor, revisionContent));
   
           // Invoke interceptors
           invokeInterceptors(token, revisionDescriptors, revisionDescriptor,
  @@ -1057,9 +1057,6 @@
           
           // Invoke interceptors
           invokeInterceptors(token, revisionDescriptors, null, null, PRE_REMOVE);
  -        
  -        // Fire event
  -        if ( ContentEvent.REMOVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.REMOVE, new ContentEvent(this, token, revisionDescriptors));
   
           // Retrieve the associated object
           ObjectNode associatedObject = structureHelper.retrieve
  @@ -1079,6 +1076,10 @@
                                namespaceConfig.getRemoveRevisionContentAction());
           
           Uri objectUri = namespace.getUri(token, revisionDescriptors.getUri());
  +
  +        // Fire event
  +        if ( ContentEvent.REMOVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.REMOVE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors));
  +
           objectUri.getStore().removeRevisionDescriptors(objectUri);
           
           // Invoke interceptors
  @@ -1138,9 +1139,9 @@
           NodeRevisionDescriptor revisionDescriptor =
               objectUri.getStore().retrieveRevisionDescriptor
               (objectUri, revisionNumber);
  -        
  +
           // Fire event
  -        if ( ContentEvent.REMOVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.REMOVE, new ContentEvent(this, token, revisionDescriptor));
  +        if ( ContentEvent.REMOVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.REMOVE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptor));
   
           // Invoke interceptors
           invokeInterceptors(token, null, revisionDescriptor, null, PRE_REMOVE);
  @@ -1239,9 +1240,9 @@
           // Initialize the branch name in the new descriptor
           newRevisionDescriptor.setBranchName
               (realOldRevisionDescriptor.getBranchName());
  -        
  +
           // Fire event
  -        if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, revisionDescriptors, newRevisionDescriptor, revisionContent));
  +        if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, newRevisionDescriptor, revisionContent));
   
           // Invoke interceptors
           invokeInterceptors(token, revisionDescriptors, newRevisionDescriptor,
  @@ -1336,9 +1337,9 @@
               branchName = "version-history";
           }
           revisionDescriptor.setBranchName(branchName);
  -        
  +
           // Fire event
  -        if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, revisionDescriptors, revisionDescriptor));
  +        if ( ContentEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(ContentEvent.CREATE, new ContentEvent(this, token, namespace, objectUri.toString(), revisionDescriptors, revisionDescriptor));
           
           // Invoke interceptors
           invokeInterceptors(token, revisionDescriptors, revisionDescriptor,
  
  
  
  1.2       +16 -15    jakarta-slide/src/share/org/apache/slide/event/ContentEvent.java
  
  Index: ContentEvent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/ContentEvent.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ContentEvent.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ ContentEvent.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -78,7 +78,7 @@
    * @author <a href="mailto:dflorey@c1-fse.de">Daniel Florey</a>
    * @version $Revision$
    */
  -public class ContentEvent extends EventObject {
  +public class ContentEvent extends ResourceEvent {
       public final static Create CREATE = new Create();
       public final static Remove REMOVE = new Remove();
       public final static Retrieve RETRIEVE = new Retrieve();
  @@ -95,25 +95,26 @@
       private NodeRevisionDescriptor revisionDescriptor;
       private NodeRevisionContent revisionContent;
   
  -    public ContentEvent(Object source, SlideToken token, NodeRevisionDescriptors revisionDescriptors) {
  -        this(source, token, revisionDescriptors, null, null);
  +    public ContentEvent(Object source, SlideToken token, Namespace namespace, String uri, NodeRevisionDescriptors revisionDescriptors) {
  +        this(source, token, namespace, uri, revisionDescriptors, null, null);
       }
   
  -    public ContentEvent(Object source, SlideToken token, NodeRevisionDescriptors revisionDescriptors, NodeRevisionDescriptor revisionDescriptor) {
  -        this(source, token, revisionDescriptors, revisionDescriptor, null);
  +    public ContentEvent(Object source, SlideToken token, Namespace namespace, String uri, NodeRevisionDescriptors revisionDescriptors, NodeRevisionDescriptor revisionDescriptor) {
  +        this(source, token, namespace, uri, revisionDescriptors, revisionDescriptor, null);
       }
   
  -    public ContentEvent(Object source, SlideToken token, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent) {
  -        this(source, token, null, revisionDescriptor, revisionContent);
  +    public ContentEvent(Object source, SlideToken token, Namespace namespace, String uri, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent) {
  +        this(source, token, namespace, uri, null, revisionDescriptor, revisionContent);
       }
   
  -    public ContentEvent(Object source, SlideToken token, NodeRevisionDescriptor revisionDescriptor) {
  -        this(source, token, null, revisionDescriptor, null);
  +    public ContentEvent(Object source, SlideToken token, Namespace namespace, String uri, NodeRevisionDescriptor revisionDescriptor) {
  +        this(source, token, namespace, uri, null, revisionDescriptor, null);
       }
   
  -    public ContentEvent(Object source, SlideToken token, NodeRevisionDescriptors revisionDescriptors, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent) {
  -        super(source);
  +    public ContentEvent(Object source, SlideToken token, Namespace namespace, String uri, NodeRevisionDescriptors revisionDescriptors, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent) {
  +        super(source, uri);
           this.token = token;
  +        this.namespace = namespace;
           this.revisionDescriptors = revisionDescriptors;
           this.revisionDescriptor = revisionDescriptor;
           this.revisionContent = revisionContent;
  
  
  
  1.2       +5 -5      jakarta-slide/src/share/org/apache/slide/event/EventCollection.java
  
  Index: EventCollection.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/EventCollection.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- EventCollection.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ EventCollection.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -129,7 +129,7 @@
           }
       }
   
  -    class Event {
  +    public class Event {
           private AbstractEventMethod method;
           private EventObject event;
   
  
  
  
  1.2       +4 -10     jakarta-slide/src/share/org/apache/slide/event/EventDispatcher.java
  
  Index: EventDispatcher.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/EventDispatcher.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- EventDispatcher.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ EventDispatcher.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -70,8 +70,6 @@
   import java.lang.reflect.Method;
   import java.lang.reflect.Field;
   import java.util.*;
  -import java.util.logging.Level;
  -import java.util.logging.Logger;
   
   /**
    * Event dispatcher class
  @@ -80,8 +78,6 @@
    * @version $Revision$
    */
   public class EventDispatcher implements Configurable {
  -    private final static Logger logger = Logger.getLogger(EventDispatcher.class.getName());
  -
       private static EventDispatcher eventDispatcher = new EventDispatcher();
   
       private List eventListeners = new ArrayList();
  @@ -94,7 +90,6 @@
       }
   
       public void addEventListener(EventListener listener) {
  -            logger.log(Level.INFO, "Registering event listener: "+listener);
               eventListeners.add(listener);
       }
   
  @@ -156,7 +151,6 @@
                   AbstractEventMethod[] methods = (AbstractEventMethod [])methodsField.get(null);
                   for ( int i = 0; i < methods.length; i++ ) {
                       if ( method == null || methods[i].getName().equals(method) ) {
  -                        logger.log(Level.INFO, "Enabling method '"+methods[i].getId()+"': "+enable);
                           methods[i].setEnabled(enable);
                       }
                   }
  
  
  
  1.2       +16 -5     jakarta-slide/src/share/org/apache/slide/event/LockEvent.java
  
  Index: LockEvent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/LockEvent.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- LockEvent.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ LockEvent.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -65,6 +65,7 @@
   
   import org.apache.slide.common.SlideToken;
   import org.apache.slide.common.Uri;
  +import org.apache.slide.common.Namespace;
   
   import java.util.EventListener;
   import java.util.EventObject;
  @@ -85,12 +86,14 @@
       public final static AbstractEventMethod[] methods = new AbstractEventMethod[] { LOCK, UNLOCK, RENEW, KILL };
   
       private Uri objectUri;
  +    private Namespace namespace;
       private SlideToken token;
   
  -    public LockEvent(Object source, SlideToken token, Uri objectUri) {
  +    public LockEvent(Object source, SlideToken token, Namespace namespace, Uri objectUri) {
           super(source);
           this.objectUri = objectUri;
           this.token = token;
  +        this.namespace = namespace;
       }
   
       public String toString() {
  @@ -98,6 +101,14 @@
           buffer.append(getClass().getName()).append("[lock uri=").append(objectUri);
           buffer.append("]");
           return buffer.toString();
  +    }
  +
  +    public Namespace getNamespace() {
  +        return namespace;
  +    }
  +
  +    public SlideToken getToken() {
  +        return token;
       }
   
       public final static class Lock extends VetoableEventMethod {
  
  
  
  1.2       +38 -8     jakarta-slide/src/share/org/apache/slide/event/MacroEvent.java
  
  Index: MacroEvent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/MacroEvent.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- MacroEvent.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ MacroEvent.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -23,6 +23,9 @@
   
   package org.apache.slide.event;
   
  +import org.apache.slide.common.Namespace;
  +import org.apache.slide.common.SlideToken;
  +
   import java.util.EventListener;
   import java.util.EventObject;
   
  @@ -32,7 +35,7 @@
    * @author <a href="mailto:dflorey@c1-fse.de">Daniel Florey</a>
    * @version $Revision$
    */
  -public class MacroEvent extends EventObject {
  +public class MacroEvent extends EventObject implements RemoteInformation {
       public final static Move MOVE = new Move();
       public final static Copy COPY = new Copy();
       public final static Delete DELETE = new Delete();
  @@ -40,16 +43,38 @@
       public final static String GROUP = "macro";
       public final static AbstractEventMethod[] methods = new AbstractEventMethod[] { MOVE, COPY, DELETE };
   
  +    protected final static String SOURCE_URI_KEY = "source-uri";
  +    protected final static String TARGET_URI_KEY = "target-uri";
       private String sourceURI, targetURI;
  +    private SlideToken token;
  +    private Namespace namespace;
   
  -    public MacroEvent(Object source, String tagetURI) {
  -        this(source, null, tagetURI);
  +    public MacroEvent(Object source, SlideToken token, Namespace namespace, String tagetURI) {
  +        this(source, token, namespace, null, tagetURI);
       }
   
  -    public MacroEvent(Object source, String sourceURI, String targetURI) {
  +    public MacroEvent(Object source, SlideToken token, Namespace namespace, String sourceURI, String targetURI) {
           super(source);
           this.sourceURI = sourceURI;
           this.targetURI = targetURI;
  +        this.token = token;
  +        this.namespace = namespace;
  +    }
  +
  +    public SlideToken getToken() {
  +        return token;
  +    }
  +
  +    public Namespace getNamespace() {
  +        return namespace;
  +    }
  +
  +    public String getSourceURI() {
  +        return sourceURI;
  +    }
  +
  +    public String getTargetURI() {
  +        return targetURI;
       }
   
       public String toString() {
  @@ -58,6 +83,11 @@
           buffer.append(", target-uri=").append(targetURI);
           buffer.append("]");
           return buffer.toString();
  +    }
  +
  +    public String[][] getInformation() {
  +        return new String [][] { { SOURCE_URI_KEY, sourceURI },
  +                                 { TARGET_URI_KEY, targetURI }};
       }
   
       public final static class Copy extends VetoableEventMethod {
  
  
  
  1.2       +12 -5     jakarta-slide/src/share/org/apache/slide/event/SearchEvent.java
  
  Index: SearchEvent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/SearchEvent.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SearchEvent.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ SearchEvent.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -24,6 +24,7 @@
   package org.apache.slide.event;
   
   import org.apache.slide.common.SlideToken;
  +import org.apache.slide.common.Namespace;
   import org.apache.slide.search.SearchQuery;
   
   import java.util.EventListener;
  @@ -40,13 +41,15 @@
   
       private SlideToken token;
       private SearchQuery query;
  +    private Namespace namespace;
   
       public final static String GROUP = "search";
       public final static AbstractEventMethod[] methods = new AbstractEventMethod[] { SEARCH };
   
  -    public SearchEvent(Object source, SlideToken token, SearchQuery query) {
  +    public SearchEvent(Object source, SlideToken token, Namespace namespace, SearchQuery query) {
           super(source);
           this.token = token;
  +        this.namespace = namespace;
           this.query = query;
       }
   
  @@ -55,6 +58,10 @@
           buffer.append(getClass().getName()).append("[query=").append(query);
           buffer.append("]");
           return buffer.toString();
  +    }
  +
  +    public Namespace getNamespace() {
  +        return namespace;
       }
   
       public SlideToken getToken() {
  
  
  
  1.2       +12 -5     jakarta-slide/src/share/org/apache/slide/event/SecurityEvent.java
  
  Index: SecurityEvent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/SecurityEvent.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- SecurityEvent.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ SecurityEvent.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -25,6 +25,7 @@
   
   import org.apache.slide.common.SlideToken;
   import org.apache.slide.common.Uri;
  +import org.apache.slide.common.Namespace;
   import org.apache.slide.security.NodePermission;
   
   import java.util.EventListener;
  @@ -47,12 +48,18 @@
       private Uri objectUri;
       private SlideToken token;
       private NodePermission permission;
  +    private Namespace namespace;
   
  -    public SecurityEvent(Object source, SlideToken token, Uri objectUri, NodePermission permission) {
  +    public SecurityEvent(Object source, SlideToken token, Namespace namespace, Uri objectUri, NodePermission permission) {
           super(source);
           this.objectUri = objectUri;
           this.token = token;
           this.permission = permission;
  +        this.namespace = namespace;
  +    }
  +
  +    public Namespace getNamespace() {
  +        return namespace;
       }
   
       public String toString() {
  
  
  
  1.2       +10 -6     jakarta-slide/src/share/org/apache/slide/event/StructureEvent.java
  
  Index: StructureEvent.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/StructureEvent.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- StructureEvent.java	11 Feb 2004 12:58:28 -0000	1.1
  +++ StructureEvent.java	24 Feb 2004 16:47:07 -0000	1.2
  @@ -24,6 +24,7 @@
   package org.apache.slide.event;
   
   import org.apache.slide.common.SlideToken;
  +import org.apache.slide.common.Namespace;
   import org.apache.slide.structure.ObjectNode;
   
   import java.util.EventListener;
  @@ -50,17 +51,20 @@
       private SlideToken token;
       private ObjectNode objectNode = null;
       private String uri = null;
  +    private Namespace namespace;
   
  -    public StructureEvent(Object source, SlideToken token, String uri) {
  +    public StructureEvent(Object source, SlideToken token, Namespace namespace, String uri) {
           super(source);
           this.uri = uri;
           this.token = token;
  +        this.namespace = namespace;
       }
   
  -    public StructureEvent(Object source, SlideToken token, ObjectNode objectNode) {
  +    public StructureEvent(Object source, SlideToken token, Namespace namespace, ObjectNode objectNode) {
           super(source);
           this.token = token;
           this.objectNode = objectNode;
  +        this.namespace = namespace;
       }
   
       public StructureEvent(Object source, SlideToken token, ObjectNode objectNode, String uri) {
  
  
  
  1.2       +60 -20    jakarta-slide/src/share/org/apache/slide/event/package.html
  
  Index: package.html
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/package.html,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- package.html	11 Feb 2004 12:58:28 -0000	1.1
  +++ package.html	24 Feb 2004 16:47:07 -0000	1.2
  @@ -7,32 +7,72 @@
         $Header$
         $Revision$
         $Date$
  - 
  +
  +      ====================================================================
  +
  +      The Apache Software License, Version 1.1
  +
  +      Copyright (c) 1999 The Apache Software Foundation.  All rights
  +      reserved.
  +
  +      Redistribution and use in source and binary forms, with or without
  +      modification, are permitted provided that the following conditions
  +      are met:
  +
  +      1. Redistributions of source code must retain the above copyright
  +         notice, this list of conditions and the following disclaimer.
  +
  +      2. Redistributions in binary form must reproduce the above copyright
  +         notice, this list of conditions and the following disclaimer in
  +         the documentation and/or other materials provided with the
  +         distribution.
  +
  +      3. The end-user documentation included with the redistribution, if
  +         any, must include the following acknowlegement:
  +            "This product includes software developed by the
  +             Apache Software Foundation (http://www.apache.org/)."
  +         Alternately, this acknowlegement may appear in the software itself,
  +         if and wherever such third-party acknowlegements normally appear.
  +
  +      4. The names "The Jakarta Project", "Slide", and "Apache Software
  +         Foundation" must not be used to endorse or promote products derived
  +         from this software without prior written permission. For written
  +         permission, please contact apache@apache.org.
  +
  +      5. Products derived from this software may not be called "Apache"
  +         nor may "Apache" appear in their names without prior written
  +         permission of the Apache Group.
  +
  +      THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  +      WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  +      OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  +      DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  +      ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  +      SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  +      LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  +      USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  +      ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  +      OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  +      OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  +      SUCH DAMAGE.
         ====================================================================
   
  -      Copyright 1999-2002 The Apache Software Foundation 
  +      This software consists of voluntary contributions made by many
  +      individuals on behalf of the Apache Software Foundation.  For more
  +      information on the Apache Software Foundation, please see
  +      <http://www.apache.org/>.
   
  -      Licensed 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.
  +      [Additional notices, if required by prior licensing conditions]
   
       -->
     </head>
   
     <body>
       <p>
  -    Provides event support for slide.
  +    Provides event support for Slide.
       </p>
       <h3>Introduction</h3>
  -    <p>Event handling in slide is similar to the way it is done in awt or swing.
  +    <p>Event handling in Slide is similar to the way it is done in awt or swing.
         So if you are not familiar with the concept of event listeners in general,
         you should have a look at the
         {@link <a href="http://java.sun.com/docs/books/tutorial/uiswing/events/">appropriate sections</a>}
  @@ -45,7 +85,7 @@
         </p>
         <h3>Adding event listeners</h3>
           <p>
  -        Event listeners can be added by configuring them in the <i>Domain.xml</i> file. Every event listeners must implement the
  +        Event listeners can be added by configuring them in the <i>Domain.xml</i> file. Every event listener must implement the
           {@link java.util.EventListener} interface or one of its subinterfaces. So if you want to add a listener that
           wants to receive content events, you have to register a class that implements the
           {@link org.apache.slide.event.ContentListener} interface or extends
  @@ -191,7 +231,7 @@
           <p>The configuration of listeners can be very sophisticated, because they use the {@see org.apache.slide.util.conf configuration mechanism} that
           is used by slide.</p>
       <h3>Vetoable events</h3>
  -        <p>Mostly all event listener methods that are called within a transaction are vetaoable. Event listeners can throw a
  +        <p>Almost every event listener method that is called within a transaction is vetaoable. Event listeners can throw a
           {@link org.apache.slide.event.VetoException}, if they want to enforce the transaction to be rolled back.</p>
           <p>This feature allows to implement sophisticated listeners. We want to extend our ExampleListener,
           so that it denies the storage of all documents that are of the content-type image/gif:</p>
  
  
  
  1.1                  jakarta-slide/src/share/org/apache/slide/event/RemoteInformation.java
  
  Index: RemoteInformation.java
  ===================================================================
  /*
   * $Header: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/RemoteInformation.java,v 1.1 2004/02/24 16:47:07 dflorey Exp $
   * $Revision: 1.1 $
   * $Date: 2004/02/24 16:47:07 $
   *
   * ====================================================================
   *
   * Copyright 1999-2002 The Apache Software Foundation 
   *
   * Licensed 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.slide.event;
  
  /**
   * The RemoteInformation interface
   * 
   * @author <a href="mailto:dflorey@c1-fse.de">Daniel Florey</a>
   */
  public interface RemoteInformation {
      public String[][] getInformation();
  }
  
  
  
  1.1                  jakarta-slide/src/share/org/apache/slide/event/ResourceEvent.java
  
  Index: ResourceEvent.java
  ===================================================================
  /*
   * $Header: /home/cvs/jakarta-slide/src/share/org/apache/slide/event/ResourceEvent.java,v 1.1 2004/02/24 16:47:07 dflorey Exp $
   * $Revision: 1.1 $
   * $Date: 2004/02/24 16:47:07 $
   *
   * ====================================================================
   *
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution, if
   *    any, must include the following acknowlegement:
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowlegement may appear in the software itself,
   *    if and wherever such third-party acknowlegements normally appear.
   *
   * 4. The names "The Jakarta Project", "Slide", and "Apache Software
   *    Foundation" must not be used to endorse or promote products derived
   *    from this software without prior written permission. For written
   *    permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache"
   *    nor may "Apache" appear in their names without prior written
   *    permission of the Apache Group.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   *
   * [Additional notices, if required by prior licensing conditions]
   *
   */
  
  package org.apache.slide.event;
  
  import java.util.EventObject;
  
  /**
   * @author <a href="mailto:dflorey@c1-fse.de">Daniel Florey</a>
   * @version $Revision: 1.1 $
   */
  
  public class ResourceEvent extends EventObject implements RemoteInformation {
      protected final static String URI_KEY = "uri";
  
      private String uri;
  
      public ResourceEvent(Object source, String uri) {
          super(source);
          this.uri = uri;
      }
  
      public String getUri() {
          return uri;
      }
  
      public String[][] getInformation() {
          return new String [][] { { URI_KEY, uri } };
      }
  }
  
  
  
  1.19      +4 -5      jakarta-slide/src/share/org/apache/slide/lock/Lock.java
  
  Index: Lock.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/lock/Lock.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- Lock.java	11 Feb 2004 12:58:31 -0000	1.18
  +++ Lock.java	24 Feb 2004 16:47:08 -0000	1.19
  @@ -81,7 +81,6 @@
       boolean unlock(SlideToken slideToken, NodeLock lockToken)
           throws ServiceAccessException, LockTokenNotFoundException, VetoException;
       
  -    
       /**
        * Removes a set of linked locks.
        *
  
  
  
  1.42      +8 -8      jakarta-slide/src/share/org/apache/slide/lock/LockImpl.java
  
  Index: LockImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/lock/LockImpl.java,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- LockImpl.java	11 Feb 2004 12:58:30 -0000	1.41
  +++ LockImpl.java	24 Feb 2004 16:47:08 -0000	1.42
  @@ -135,7 +135,7 @@
           }
           
           // Fire event
  -        if ( LockEvent.LOCK.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.LOCK, new LockEvent(this, slideToken, objectUri));
  +        if ( LockEvent.LOCK.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.LOCK, new LockEvent(this, slideToken, namespace, objectUri));
       }
       
       
  @@ -173,7 +173,7 @@
           lockedUri.getStore().removeLock(lockedUri, lockToken);
   
           // Fire event
  -        if ( LockEvent.UNLOCK.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.UNLOCK, new LockEvent(this, slideToken, lockedUri));
  +        if ( LockEvent.UNLOCK.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.UNLOCK, new LockEvent(this, slideToken, namespace, lockedUri));
   
           return true;
       }
  @@ -227,7 +227,7 @@
           lockedUri.getStore().renewLock(lockedUri, lockToken);
   
           // Fire event
  -        if ( LockEvent.RENEW.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.RENEW, new LockEvent(this, slideToken, lockedUri));
  +        if ( LockEvent.RENEW.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.RENEW, new LockEvent(this, slideToken, namespace, lockedUri));
       }
       
       
  @@ -292,7 +292,7 @@
           }
           
           // Fire event
  -        if ( LockEvent.KILL.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.KILL, new LockEvent(this, slideToken, subjectUri));
  +        if ( LockEvent.KILL.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(LockEvent.KILL, new LockEvent(this, slideToken, namespace, subjectUri));
       }
       
       public Enumeration enumerateLocks(SlideToken slideToken, String objectUri)
  
  
  
  1.17      +4 -4      jakarta-slide/src/share/org/apache/slide/macro/Macro.java
  
  Index: Macro.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/macro/Macro.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  
  
  
  1.39      +9 -9      jakarta-slide/src/share/org/apache/slide/macro/MacroImpl.java
  
  Index: MacroImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/macro/MacroImpl.java,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- MacroImpl.java	11 Feb 2004 12:58:30 -0000	1.38
  +++ MacroImpl.java	24 Feb 2004 16:47:08 -0000	1.39
  @@ -221,9 +221,9 @@
           if (!e.isEmpty()) {
               throw e;
           }
  -        
  +
           try {
  -            if ( MacroEvent.COPY.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(MacroEvent.COPY, new MacroEvent(this, sourceUri, destinationUri));
  +            if ( MacroEvent.COPY.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(MacroEvent.COPY, new MacroEvent(this, token, namespace, sourceUri, destinationUri));
           } catch ( VetoException ve ) {
               throw new CopyMacroException(ve.getMessage());
           }
  @@ -444,7 +444,7 @@
           }
   
           try {
  -            if ( MacroEvent.MOVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(MacroEvent.MOVE, new MacroEvent(this, sourceUri, destinationUri));
  +            if ( MacroEvent.MOVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(MacroEvent.MOVE, new MacroEvent(this, token, namespace, sourceUri, destinationUri));
           } catch ( VetoException ve ) {
               throw new CopyMacroException(ve.getMessage()); // FIXME: Where is the MoveMacroException?    
           }
  @@ -526,9 +526,9 @@
           if (!e.isEmpty()) {
               throw e;
           }
  -        
  +
           try {
  -            if ( MacroEvent.DELETE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(MacroEvent.DELETE, new MacroEvent(this, targetUri));
  +            if ( MacroEvent.DELETE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(MacroEvent.DELETE, new MacroEvent(this, token, namespace, targetUri));
           } catch ( VetoException ve ) {
               throw new DeleteMacroException(ve.getMessage());
           }
  
  
  
  1.17      +5 -5      jakarta-slide/src/share/org/apache/slide/search/SearchImpl.java
  
  Index: SearchImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/search/SearchImpl.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- SearchImpl.java	11 Feb 2004 12:58:31 -0000	1.16
  +++ SearchImpl.java	24 Feb 2004 16:47:08 -0000	1.17
  @@ -124,7 +124,7 @@
           throws ServiceAccessException, VetoException {
   
           // Fire event
  -        if ( SearchEvent.SEARCH.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SearchEvent.SEARCH, new SearchEvent(this, token, query));
  +        if ( SearchEvent.SEARCH.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SearchEvent.SEARCH, new SearchEvent(this, token, namespace, query));
   
           return query.execute ();
       }
  
  
  
  1.27      +4 -4      jakarta-slide/src/share/org/apache/slide/security/Security.java
  
  Index: Security.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/security/Security.java,v
  retrieving revision 1.26
  retrieving revision 1.27
  diff -u -r1.26 -r1.27
  
  
  
  1.47      +8 -8      jakarta-slide/src/share/org/apache/slide/security/SecurityImpl.java
  
  Index: SecurityImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/security/SecurityImpl.java,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- SecurityImpl.java	11 Feb 2004 12:58:30 -0000	1.46
  +++ SecurityImpl.java	24 Feb 2004 16:47:08 -0000	1.47
  @@ -245,9 +245,9 @@
   
           // Fire event
           if ( permission.isNegative() ) {
  -            if ( SecurityEvent.DENY_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.DENY_PERMISSION, new SecurityEvent(this, token, objectUri, permission));
  +            if ( SecurityEvent.DENY_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.DENY_PERMISSION, new SecurityEvent(this, token, namespace, objectUri, permission));
           } else {
  -            if ( SecurityEvent.GRANT_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.GRANT_PERMISSION, new SecurityEvent(this, token, objectUri, permission));
  +            if ( SecurityEvent.GRANT_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.GRANT_PERMISSION, new SecurityEvent(this, token, namespace, objectUri, permission));
           }
       }
       
  @@ -344,7 +344,7 @@
               .revokePermission(objectUri, permission);
   
           // Fire event
  -        if ( SecurityEvent.REVOKE_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.REVOKE_PERMISSION, new SecurityEvent(this, token, objectUri, permission));
  +        if ( SecurityEvent.REVOKE_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.REVOKE_PERMISSION, new SecurityEvent(this, token, namespace, objectUri, permission));
       }
       
       
  @@ -371,7 +371,7 @@
           objectUri.getStore().revokePermission(objectUri, permission);
   
           // Fire event
  -        if ( SecurityEvent.REVOKE_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.REVOKE_PERMISSION, new SecurityEvent(this, token, objectUri, permission));
  +        if ( SecurityEvent.REVOKE_PERMISSION.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(SecurityEvent.REVOKE_PERMISSION, new SecurityEvent(this, token, namespace, objectUri, permission));
       }
       
       
  
  
  
  1.16      +4 -4      jakarta-slide/src/share/org/apache/slide/structure/Structure.java
  
  Index: Structure.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/structure/Structure.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  
  
  
  1.42      +7 -7      jakarta-slide/src/share/org/apache/slide/structure/StructureImpl.java
  
  Index: StructureImpl.java
  ===================================================================
  RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/structure/StructureImpl.java,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- StructureImpl.java	11 Feb 2004 12:58:29 -0000	1.41
  +++ StructureImpl.java	24 Feb 2004 16:47:09 -0000	1.42
  @@ -158,7 +158,7 @@
           ObjectNode result = null;
           
           // Fire event
  -        if ( StructureEvent.RETRIEVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(StructureEvent.RETRIEVE, new StructureEvent(this, token, strUri));
  +        if ( StructureEvent.RETRIEVE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(StructureEvent.RETRIEVE, new StructureEvent(this, token, namespace, strUri));
   
           // First of all, we try to load the object directly from the given Uri.
           try {
  @@ -263,7 +263,7 @@
           AccessDeniedException, ObjectLockedException, VetoException {
   
           // Fire event
  -        if ( StructureEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(StructureEvent.CREATE, new StructureEvent(this, token, strUri));
  +        if ( StructureEvent.CREATE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(StructureEvent.CREATE, new StructureEvent(this, token, namespace, strUri));
           
           // Checking roles
           Enumeration roles = securityHelper.getRoles(object);
  @@ -442,7 +442,7 @@
           AccessDeniedException, LinkedObjectNotFoundException, VetoException {
   
           // Fire event
  -        if ( StructureEvent.STORE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(StructureEvent.STORE, new StructureEvent(this, token, object));
  +        if ( StructureEvent.STORE.isEnabled() ) EventDispatcher.getInstance().fireVetoableEvent(StructureEvent.STORE, new StructureEvent(this, token, namespace, object));
           
           // Checking roles
           Enumeration roles = securityHelper.getRoles(object);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org


Re: cvs commit: jakarta-slide/src/share/org/apache/slide/structure Structure.java StructureImpl.java

Posted by Stefano Mazzocchi <st...@apache.org>.
On Feb 24, 2004, at 11:47, dflorey@apache.org wrote:

> dflorey     2004/02/24 08:47:09
>
>   Modified:    src/share/org/apache/slide/content Content.java
>                         ContentImpl.java
>                src/share/org/apache/slide/event ContentEvent.java
>                         EventCollection.java EventDispatcher.java
>                         LockEvent.java MacroEvent.java SearchEvent.java
>                         SecurityEvent.java StructureEvent.java 
> package.html
>                src/share/org/apache/slide/lock Lock.java LockImpl.java
>                src/share/org/apache/slide/macro Macro.java 
> MacroImpl.java
>                src/share/org/apache/slide/search SearchImpl.java
>                src/share/org/apache/slide/security Security.java
>                         SecurityImpl.java
>                src/share/org/apache/slide/structure Structure.java
>                         StructureImpl.java
>   Added:       src/share/org/apache/slide/event RemoteInformation.java
>                         ResourceEvent.java
>   Log:
>   Added some information to events (e.g. namespace) that might be 
> needed by event listeners.
>   Added remote event information.

Awesome!! Way to go!!! :-)

--
Stefano.


---------------------------------------------------------------------
To unsubscribe, e-mail: slide-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-dev-help@jakarta.apache.org