You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by an...@apache.org on 2009/02/06 18:55:33 UTC

svn commit: r741654 [9/9] - in /lenya/trunk: org.apache.lenya.core.ac/src/main/java/org/apache/lenya/ac/impl/ org.apache.lenya.core.ac/src/main/java/org/apache/lenya/cms/ac/ org.apache.lenya.core.ac/src/main/java/org/apache/lenya/cms/cocoon/acting/ org...

Modified: lenya/trunk/org.apache.lenya.optional.jcrsource/src/main/java/org/apache/lenya/cms/jcr/usecases/JCRImport.java
URL: http://svn.apache.org/viewvc/lenya/trunk/org.apache.lenya.optional.jcrsource/src/main/java/org/apache/lenya/cms/jcr/usecases/JCRImport.java?rev=741654&r1=741653&r2=741654&view=diff
==============================================================================
--- lenya/trunk/org.apache.lenya.optional.jcrsource/src/main/java/org/apache/lenya/cms/jcr/usecases/JCRImport.java (original)
+++ lenya/trunk/org.apache.lenya.optional.jcrsource/src/main/java/org/apache/lenya/cms/jcr/usecases/JCRImport.java Fri Feb  6 17:55:28 2009
@@ -27,12 +27,12 @@
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 import javax.jcr.Workspace;
+import javax.servlet.http.HttpServletRequest;
 
-import org.apache.avalon.framework.CascadingRuntimeException;
-import org.apache.cocoon.components.ContextHelper;
-import org.apache.cocoon.environment.Request;
+import org.apache.cocoon.servlet.multipart.MultipartHttpServletRequest;
 import org.apache.cocoon.servlet.multipart.Part;
 import org.apache.lenya.cms.usecase.AbstractUsecase;
+import org.springframework.aop.scope.ScopedObject;
 import org.xml.sax.Attributes;
 import org.xml.sax.InputSource;
 import org.xml.sax.SAXException;
@@ -53,13 +53,18 @@
     private static final String JCR_LENYA_BASE_NAME = "lenya";
     private static final String JCR_LENYA_PUBLICATON_ROOT = "/lenya/pubs";
     
+    private Repository repository;
+    
     /**
      * @see org.apache.lenya.cms.usecase.AbstractUsecase#doExecute()
      */
     protected void doExecute() throws Exception {
-        Request request = ContextHelper.getRequest(this.context);
+        HttpServletRequest request = getRequest();
+        ScopedObject scopedRequest = (ScopedObject) request;
+        MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) scopedRequest
+                .getTargetObject();
         
-        Part jcrImport = (Part)request.get("jcrcontent");
+        Part jcrImport = (Part) multipartRequest.get("jcrcontent");
         
         // Get name of first JCR node ('lenya' or publication name).
         String firstNodeName;
@@ -71,18 +76,11 @@
         if (firstNodeName == null) {
             throw new JCRImportException("Reading repository import data failed");
         }
-
-        Repository repo = null;
-        try {
-            repo = (Repository)manager.lookup(Repository.class.getName());
-        } catch (Exception e) {
-            throw new CascadingRuntimeException("Cannot lookup repository", e);
-        }
         
         try {
             Session session;
             try {
-                session = repo.login();
+                session = getRepository().login();
             } catch (LoginException e1) {
                 throw new JCRImportException("Login to repository failed", e1);
             } catch (RepositoryException e1) {
@@ -167,6 +165,14 @@
         return contentHandler.getFirstNodeName();
     }
     
+    public void setRepository(Repository repository) {
+        this.repository = repository;
+    }
+
+    public Repository getRepository() {
+        return repository;
+    }
+
     class FirstNodeNameHandler extends DefaultHandler
     {
         private static final String NODE_NAME_Q_ATTR = "sv:name";



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@lenya.apache.org
For additional commands, e-mail: commits-help@lenya.apache.org