Author: ggregory
Date: Wed Aug 10 00:03:57 2016
New Revision: 1755658

URL: http://svn.apache.org/viewvc?rev=1755658&view=rev
Log:
[VFS-621] Add API VFS.setManager(FileSystemManager).

Added:
    
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/VFSTest.java
Modified:
    commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/VFS.java

Modified: 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/VFS.java
URL: 
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/VFS.java?rev=1755658&r1=1755657&r2=1755658&view=diff
==============================================================================
--- 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/VFS.java 
(original)
+++ 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs2/VFS.java 
Wed Aug 10 00:03:57 2016
@@ -113,4 +113,14 @@ public final class VFS
         }
         VFS.uriStyle = Boolean.valueOf(uriStyle);
     }
+
+    /**
+     * Sets the file system manager
+     * 
+     * @param manager the file system manager
+     * @since 2.2
+     */
+    public static void setManager(FileSystemManager manager) {
+        VFS.instance = manager;
+    }
 }

Added: 
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/VFSTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/VFSTest.java?rev=1755658&view=auto
==============================================================================
--- 
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/VFSTest.java
 (added)
+++ 
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs2/VFSTest.java
 Wed Aug 10 00:03:57 2016
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.commons.vfs2;
+
+import org.apache.commons.vfs2.impl.StandardFileSystemManager;
+import org.junit.Assert;
+import org.junit.Test;
+
+public class VFSTest {
+
+    @Test
+    public void test_setManager() throws FileSystemException {
+        final StandardFileSystemManager fileSystemManager = new 
StandardFileSystemManager();
+        VFS.setManager(fileSystemManager);
+        Assert.assertEquals(fileSystemManager, VFS.getManager());
+        // Reset global for other tests
+        VFS.setManager(null);
+        Assert.assertNotNull(VFS.getManager());
+        Assert.assertNotEquals(fileSystemManager, VFS.getManager());
+    }
+}


Reply via email to