diff --git a/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/util/Paths.java b/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/util/Paths.java index 76d2353a0f..767f398efc 100644 --- a/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/util/Paths.java +++ b/uberfire-backend/uberfire-backend-server/src/main/java/org/uberfire/backend/server/util/Paths.java @@ -20,8 +20,6 @@ import java.util.HashMap; import java.util.Map; -import org.apache.commons.httpclient.URIException; -import org.apache.commons.httpclient.util.URIUtil; import org.uberfire.backend.vfs.FileSystem; import org.uberfire.backend.vfs.FileSystemFactory; import org.uberfire.backend.vfs.Path; @@ -38,10 +36,10 @@ public static Path convert( final org.uberfire.java.nio.file.Path path ) { } if ( path.getFileName() == null ) { - return newPath( convert( path.getFileSystem() ), "/", encodePath( path.toUri().toString() ) ); + return newPath( convert( path.getFileSystem() ), "/", path.toUri().toString() ); } - return newPath( convert( path.getFileSystem() ), path.getFileName().toString(), encodePath( path.toUri().toString() ) ); + return newPath( convert( path.getFileSystem() ), path.getFileName().toString(), path.toUri().toString() ); } public static org.uberfire.java.nio.file.Path convert( final Path path ) { @@ -49,23 +47,7 @@ public static org.uberfire.java.nio.file.Path convert( final Path path ) { return null; } - return org.uberfire.java.nio.file.Paths.get( URI.create( decodePath( path.toURI() ) ) ); - } - - private static String encodePath( final String uriPath ) { - try { - return URIUtil.encodePath( uriPath ); - } catch ( final URIException e ) { - return null; - } - } - - private static String decodePath( final String uriPath ) { - try { - return URIUtil.decode( uriPath ); - } catch ( final URIException e ) { - return null; - } + return org.uberfire.java.nio.file.Paths.get( URI.create( path.toURI() ) ); } public static FileSystem convert( final org.uberfire.java.nio.file.FileSystem fs ) { diff --git a/uberfire-backend/uberfire-backend-server/src/test/java/org/uberfire/backend/server/util/TestPaths.java b/uberfire-backend/uberfire-backend-server/src/test/java/org/uberfire/backend/server/util/TestPaths.java new file mode 100644 index 0000000000..9fb74ea49a --- /dev/null +++ b/uberfire-backend/uberfire-backend-server/src/test/java/org/uberfire/backend/server/util/TestPaths.java @@ -0,0 +1,49 @@ +package org.uberfire.backend.server.util; + +import org.junit.Test; + +import static org.junit.Assert.*; + +public class TestPaths { + + @Test + public void test() { + { + final String FILENAME = "file name.txt"; + final org.uberfire.java.nio.file.Path path = org.uberfire.java.nio.file.Paths.get( "file://reponame/path/to/" ).resolve( FILENAME ); + + assertEquals( FILENAME, path.getFileName().toString() ); + assertEquals( FILENAME, Paths.convert( path ).getFileName() ); + assertEquals( FILENAME, Paths.convert( Paths.convert( path ) ).getFileName().toString() ); + System.out.println( path.toUri().toString() ); + System.out.println( Paths.convert( path ).toURI() ); + System.out.println( Paths.convert( Paths.convert( path ) ).toUri().toString() ); + } + + { + final String FILENAME = "file_name.txt"; + final org.uberfire.java.nio.file.Path path = org.uberfire.java.nio.file.Paths.get( "file://reponame/path/to/" ).resolve( FILENAME ); + + assertEquals( FILENAME, path.getFileName().toString() ); + assertEquals( FILENAME, Paths.convert( path ).getFileName() ); + assertEquals( FILENAME, Paths.convert( Paths.convert( path ) ).getFileName().toString() ); + System.out.println( path.toUri().toString() ); + System.out.println( Paths.convert( path ).toURI() ); + System.out.println( Paths.convert( Paths.convert( path ) ).toUri().toString() ); + } + + { + final String FILENAME = "file+name.txt"; + final org.uberfire.java.nio.file.Path path = org.uberfire.java.nio.file.Paths.get( "file://reponame/path/to/" ).resolve( FILENAME ); + + assertEquals( FILENAME, path.getFileName().toString() ); + assertEquals( FILENAME, Paths.convert( path ).getFileName() ); + assertEquals( FILENAME, Paths.convert( Paths.convert( path ) ).getFileName().toString() ); + + System.out.println( path.toUri().toString() ); + System.out.println( Paths.convert( path ).toURI() ); + System.out.println( Paths.convert( Paths.convert( path ) ).toUri().toString() ); + } + } + +} diff --git a/uberfire-nio2-backport/uberfire-nio2-model/src/main/java/org/uberfire/java/nio/base/AbstractBasicFileAttributeView.java b/uberfire-nio2-backport/uberfire-nio2-model/src/main/java/org/uberfire/java/nio/base/AbstractBasicFileAttributeView.java index 0c8ad998db..4c1f4c6c74 100644 --- a/uberfire-nio2-backport/uberfire-nio2-model/src/main/java/org/uberfire/java/nio/base/AbstractBasicFileAttributeView.java +++ b/uberfire-nio2-backport/uberfire-nio2-model/src/main/java/org/uberfire/java/nio/base/AbstractBasicFileAttributeView.java @@ -33,15 +33,15 @@ public abstract class AbstractBasicFileAttributeView
implements BasicFileAttributeView,
ExtendedAttributeView {
- private static final String IS_REGULAR_FILE = "isRegularFile";
- private static final String IS_DIRECTORY = "isDirectory";
- private static final String IS_SYMBOLIC_LINK = "isSymbolicLink";
- private static final String IS_OTHER = "isOther";
- private static final String SIZE = "size";
- private static final String FILE_KEY = "fileKey";
- private static final String LAST_MODIFIED_TIME = "lastModifiedTime";
- private static final String LAST_ACCESS_TIME = "lastAccessTime";
- private static final String CREATION_TIME = "creationTime";
+ static final String IS_REGULAR_FILE = "isRegularFile";
+ static final String IS_DIRECTORY = "isDirectory";
+ static final String IS_SYMBOLIC_LINK = "isSymbolicLink";
+ static final String IS_OTHER = "isOther";
+ static final String SIZE = "size";
+ static final String FILE_KEY = "fileKey";
+ static final String LAST_MODIFIED_TIME = "lastModifiedTime";
+ static final String LAST_ACCESS_TIME = "lastAccessTime";
+ static final String CREATION_TIME = "creationTime";
private static final Set