dflorey     2004/05/11 08:22:55

  Modified:    src/webdav/server/org/apache/slide/webdav/event
                        Subscriber.java
  Log:
  Added support for event listening with depth=1
  
  Revision  Changes    Path
  1.6       +14 -8     
jakarta-slide/src/webdav/server/org/apache/slide/webdav/event/Subscriber.java
  
  Index: Subscriber.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-slide/src/webdav/server/org/apache/slide/webdav/event/Subscriber.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Subscriber.java   26 Apr 2004 11:40:58 -0000      1.5
  +++ Subscriber.java   11 May 2004 15:22:54 -0000      1.6
  @@ -30,6 +30,7 @@
   import java.net.URL;
   import java.util.ArrayList;
   import java.util.List;
  +import java.util.StringTokenizer;
   import java.util.TimerTask;
   
   /**
  @@ -83,12 +84,17 @@
       }
   
       public boolean matches(ResourceEvent event) {
  -        boolean matching = false;
           String eventUri = event.getUri();
  -        if ( eventUri != null && uri != null && ((depth == 
AbstractWebdavMethod.INFINITY && eventUri.startsWith(uri.toString())) || (depth == 0 
&& eventUri.equals(uri.toString())))) {
  -            matching = true;
  +        if ( eventUri != null && uri != null ) {
  +             if ( depth == 0 && eventUri.equals(uri.toString()) ) return true;
  +             if ( depth == AbstractWebdavMethod.INFINITY && 
eventUri.startsWith(uri.toString()) ) return true;
  +             if ( eventUri.startsWith(uri.toString() )) {
  +             String subpath = eventUri.substring(uri.toString().length());   
  +             StringTokenizer tokenizer = new StringTokenizer(subpath, "/");
  +             if ( tokenizer.countTokens() <= depth ) return true;
  +             }
           }
  -        return matching;
  +        return false;
       }
   
       public String getCallback() {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to