tdraier     2005/10/28 12:08:28 CEST

  Modified files:
    core/src/java/org/jahia/services/importexport 
                                                  ImportHandler.java 
  Log:
  lock fix
  
  Revision  Changes    Path
  1.35      +13 -5     
jahia/core/src/java/org/jahia/services/importexport/ImportHandler.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/services/importexport/ImportHandler.java.diff?r1=1.34&r2=1.35&f=h
  
  
  
  Index: ImportHandler.java
  ===================================================================
  RCS file: 
/home/cvs/repository/jahia/core/src/java/org/jahia/services/importexport/ImportHandler.java,v
  retrieving revision 1.34
  retrieving revision 1.35
  diff -u -r1.34 -r1.35
  --- ImportHandler.java        27 Oct 2005 14:50:13 -0000      1.34
  +++ ImportHandler.java        28 Oct 2005 10:08:27 -0000      1.35
  @@ -107,9 +107,15 @@
               lockKey = LockKey.composeLockKey(LockKey.ADD_CONTAINER_TYPE, 
currentObject.getID(), ((ContentContainerList)currentObject).getPageID());
           } else if (currentObject instanceof ContentContainer) {
               lockKey = LockKey.composeLockKey(LockKey.UPDATE_CONTAINER_TYPE, 
currentObject.getID(), ((ContentContainer)currentObject).getPageID());
  -        }
  -        if (!lock.acquire(lockKey, jParams.getUser(), 
jParams.getUser().getUserKey(), 3600)) {
  -            throw new SAXException("Cannot acquire lock");
  +        } else if (currentObject instanceof ContentField) {
  +            lockKey = LockKey.composeLockKey(LockKey.UPDATE_FIELD_TYPE, 
currentObject.getID(), ((ContentField)currentObject).getPageID());
  +        } else if (currentObject instanceof ContentPage) {
  +            lockKey = LockKey.composeLockKey(LockKey.UPDATE_PAGE_TYPE, 
currentObject.getID(), currentObject.getID());
  +        }
  +        if (lockKey !=null ) {
  +            if (!lock.acquire(lockKey, jParams.getUser(), 
jParams.getUser().getUserKey(), 3600)) {
  +                throw new SAXException("Cannot acquire lock");
  +            }
           }
       }
   
  @@ -148,8 +154,10 @@
           } catch (JahiaException e) {
               throw new SAXException(e);
           }
  -        LockService lock = ServicesRegistry.getInstance().getLockService();
  -        lock.release(lockKey, jParams.getUser(), 
jParams.getUser().getUserKey());
  +        if (lockKey !=null ) {
  +            LockService lock = 
ServicesRegistry.getInstance().getLockService();
  +            lock.release(lockKey, jParams.getUser(), 
jParams.getUser().getUserKey());
  +        }
       }
   
       public void startElement(final String namespaceURI, final String 
localName, final String qName, final Attributes atts) throws SAXException {
  

Reply via email to