You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by kw...@apache.org on 2021/12/08 17:48:09 UTC

[jackrabbit-filevault] branch master updated: JCRVLT-574 pass connection options to VltContext (#184)

This is an automated email from the ASF dual-hosted git repository.

kwin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/jackrabbit-filevault.git


The following commit(s) were added to refs/heads/master by this push:
     new 93c4f91  JCRVLT-574 pass connection options to VltContext (#184)
93c4f91 is described below

commit 93c4f915d515dd053c094430389fdd90d4c808c5
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Wed Dec 8 18:48:03 2021 +0100

    JCRVLT-574 pass connection options to VltContext (#184)
---
 .../apache/jackrabbit/vault/cli/VaultFsApp.java    |  6 +--
 vault-vlt/pom.xml                                  |  5 +++
 .../apache/jackrabbit/vault/vlt/VltContext.java    | 44 +++++++++++++++++++---
 3 files changed, 45 insertions(+), 10 deletions(-)

diff --git a/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/VaultFsApp.java b/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/VaultFsApp.java
index afba536..ff74af8 100644
--- a/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/VaultFsApp.java
+++ b/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/VaultFsApp.java
@@ -46,7 +46,6 @@ import org.apache.jackrabbit.vault.fs.api.VaultFileSystem;
 import org.apache.jackrabbit.vault.fs.api.VaultFsConfig;
 import org.apache.jackrabbit.vault.fs.api.WorkspaceFilter;
 import org.apache.jackrabbit.vault.fs.config.AbstractVaultFsConfig;
-import org.apache.jackrabbit.vault.fs.config.ConfigurationException;
 import org.apache.jackrabbit.vault.fs.config.DefaultWorkspaceFilter;
 import org.apache.jackrabbit.vault.fs.config.ExportRoot;
 import org.apache.jackrabbit.vault.fs.config.MetaInf;
@@ -151,11 +150,10 @@ public class VaultFsApp extends AbstractApplication {
                 confCredsProvider.setDefaultCredentials(getProperty(KEY_DEFAULT_CREDS));
             }
             File cwd = getPlatformFile("", true).getCanonicalFile();
-            return new VltContext(cwd, localFile, repProvider, credentialsStore);
+            ConnectionOptions options = ConnectionOptions.fromServiceFactoryParameters(getEnv());
+            return new VltContext(cwd, localFile, repProvider, credentialsStore, System.out, options);
         } catch (IOException e) {
             throw new ExecutionException(e);
-        } catch (ConfigurationException e) {
-            throw new ExecutionException(e);
         }
     }
 
diff --git a/vault-vlt/pom.xml b/vault-vlt/pom.xml
index 6637a9e..e0c1ffe 100644
--- a/vault-vlt/pom.xml
+++ b/vault-vlt/pom.xml
@@ -58,6 +58,11 @@
             <artifactId>vault-diff</artifactId>
             <version>3.5.7-SNAPSHOT</version>
         </dependency>
+        <!-- for org.apache.jackrabbit.spi2dav.ConnectionOptions -->
+        <dependency>
+            <groupId>org.apache.jackrabbit</groupId>
+            <artifactId>jackrabbit-spi2dav</artifactId>
+        </dependency>
 
         <!-- JCR Stuff -->
         <dependency>
diff --git a/vault-vlt/src/main/java/org/apache/jackrabbit/vault/vlt/VltContext.java b/vault-vlt/src/main/java/org/apache/jackrabbit/vault/vlt/VltContext.java
index f66308c..d8e913d 100644
--- a/vault-vlt/src/main/java/org/apache/jackrabbit/vault/vlt/VltContext.java
+++ b/vault-vlt/src/main/java/org/apache/jackrabbit/vault/vlt/VltContext.java
@@ -29,6 +29,7 @@ import javax.jcr.Repository;
 import javax.jcr.RepositoryException;
 import javax.jcr.Session;
 
+import org.apache.jackrabbit.spi2dav.ConnectionOptions;
 import org.apache.jackrabbit.vault.fs.Mounter;
 import org.apache.jackrabbit.vault.fs.api.ImportMode;
 import org.apache.jackrabbit.vault.fs.api.PathFilter;
@@ -66,8 +67,10 @@ public class VltContext {
 
     private final ExportRoot exportRoot;
 
+    private final ConnectionOptions connectionOptions;
+
     private Map<RepositoryAddress, VaultFileSystem> fileSystems
-            = new HashMap<RepositoryAddress, VaultFileSystem>();
+            = new HashMap<>();
 
     private RepositoryAddress mountpoint;
 
@@ -87,18 +90,46 @@ public class VltContext {
 
     private PathFilter globalIgnored;
 
+    /**
+     * 
+     * @param cwd
+     * @param localFile
+     * @param repProvider
+     * @param credsProvider
+     * @throws IOException
+     * @deprecated Rather use {@link #VltContext(File, File, RepositoryProvider, CredentialsStore, PrintStream, ConnectionOptions)}
+     */
+    @Deprecated
     public VltContext(File cwd, File localFile,
             RepositoryProvider repProvider,
             CredentialsStore credsProvider)
-                    throws ConfigurationException, IOException {
-        this(cwd, localFile, repProvider, credsProvider, System.out);
+                    throws IOException {
+        this(cwd, localFile, repProvider, credsProvider, System.out, null);
+    }
+
+    /**
+     * 
+     * @param cwd
+     * @param localFile
+     * @param repProvider
+     * @param credsProvider
+     * @param out
+     * @throws IOException
+     * @deprecated Rather use {@link #VltContext(File, File, RepositoryProvider, CredentialsStore, PrintStream, ConnectionOptions)}
+     */
+    @Deprecated
+    public VltContext(File cwd, File localFile,
+            RepositoryProvider repProvider,
+            CredentialsStore credsProvider,
+            PrintStream out) throws IOException {
+        this(cwd, localFile, repProvider, credsProvider, out, null);
     }
 
     public VltContext(File cwd, File localFile,
                         RepositoryProvider repProvider,
                         CredentialsStore credsProvider,
-                        PrintStream out)
-            throws ConfigurationException, IOException {
+                        PrintStream out, ConnectionOptions connectionOptions)
+            throws IOException {
         if (!cwd.exists()) {
             throw new FileNotFoundException(cwd.getAbsolutePath());
         }
@@ -114,6 +145,7 @@ public class VltContext {
             er = new ExportRoot(localFile);
         }
         this.exportRoot = er;
+        this.connectionOptions = connectionOptions;
     }
 
     public RepositoryAddress getMountpoint() throws VltException {
@@ -197,7 +229,7 @@ public class VltContext {
     }
 
     public Session login(RepositoryAddress mountpoint) throws RepositoryException {
-        Repository rep = repProvider.getRepository(mountpoint);
+        Repository rep = repProvider.getRepository(mountpoint, connectionOptions);
         Credentials creds = credsProvider.getCredentials(mountpoint);
         Session s = rep.login(creds);
         // hack to store credentials