jford       2003/08/03 15:36:35

  Modified:    src/java/org/apache/jetspeed/services/registry
                        CastorRegistryService.java
  Log:
  Added synchronize on the watcher to prevent fragment creation while the registry is 
being updated by the watcher.
  
  PR: Bugzilla #20076
  
  Revision  Changes    Path
  1.34      +15 -12    
jakarta-jetspeed/src/java/org/apache/jetspeed/services/registry/CastorRegistryService.java
  
  Index: CastorRegistryService.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed/src/java/org/apache/jetspeed/services/registry/CastorRegistryService.java,v
  retrieving revision 1.33
  retrieving revision 1.34
  diff -u -r1.33 -r1.34
  --- CastorRegistryService.java        23 Jul 2003 19:50:22 -0000      1.33
  +++ CastorRegistryService.java        3 Aug 2003 22:36:35 -0000       1.34
  @@ -625,18 +625,21 @@
   
           try
           {
  -            file = new File(directory, name + extension).getCanonicalPath();
  -
  -            Unmarshaller unmarshaller = new Unmarshaller(this.mapping);
  -            RegistryFragment fragment = (RegistryFragment) 
unmarshaller.unmarshal(reader);
  -
  -            fragment.setChanged(true);
  -
  -            updateFragment(file, fragment);
  -
  -            if (persistent)
  +            synchronized(watcher)
               {
  -                saveFragment(file);
  +                file = new File(directory, name + extension).getCanonicalPath();
  +    
  +                Unmarshaller unmarshaller = new Unmarshaller(this.mapping);
  +                RegistryFragment fragment = (RegistryFragment) 
unmarshaller.unmarshal(reader);
  +    
  +                fragment.setChanged(true);
  +    
  +                updateFragment(file, fragment);
  +    
  +                if (persistent)
  +                {
  +                    saveFragment(file);
  +                }
               }
           }
           catch (Throwable t)
  
  
  

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

Reply via email to