diff --git a/spring-core/src/main/java/org/springframework/core/io/VfsResource.java b/spring-core/src/main/java/org/springframework/core/io/VfsResource.java index 296e8423655..e9ad9b49050 100644 --- a/spring-core/src/main/java/org/springframework/core/io/VfsResource.java +++ b/spring-core/src/main/java/org/springframework/core/io/VfsResource.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2015 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,9 +28,9 @@ import org.springframework.util.Assert; /** * JBoss VFS based {@link Resource} implementation. * - *
As of Spring 4.0, this class supports VFS 3.x on JBoss AS 6+ (package - * {@code org.jboss.vfs}) and is in particular compatible with JBoss AS 7 and - * WildFly 8. + *
As of Spring 4.0, this class supports VFS 3.x on JBoss AS 6+ + * (package {@code org.jboss.vfs}) and is in particular compatible with + * JBoss AS 7 and WildFly 8+. * * @author Ales Justin * @author Juergen Hoeller @@ -44,6 +44,11 @@ public class VfsResource extends AbstractResource { private final Object resource; + /** + * Create a new {@code VfsResource} wrapping the given resource handle. + * @param resource a {@code org.jboss.vfs.VirtualFile} instance + * (untyped in order to avoid a static dependency on the VFS API) + */ public VfsResource(Object resource) { Assert.notNull(resource, "VirtualFile must not be null"); this.resource = resource; diff --git a/spring-core/src/main/java/org/springframework/core/io/VfsUtils.java b/spring-core/src/main/java/org/springframework/core/io/VfsUtils.java index 36c2019b0d3..1fd36a7abb1 100644 --- a/spring-core/src/main/java/org/springframework/core/io/VfsUtils.java +++ b/spring-core/src/main/java/org/springframework/core/io/VfsUtils.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 the original author or authors. + * Copyright 2002-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -30,9 +30,9 @@ import org.springframework.util.ReflectionUtils; /** * Utility for detecting and accessing JBoss VFS in the classpath. * - *
As of Spring 4.0, this class supports VFS 3.x on JBoss AS 6+ (package - * {@code org.jboss.vfs}) and is in particular compatible with JBoss AS 7 and - * WildFly 8. + *
As of Spring 4.0, this class supports VFS 3.x on JBoss AS 6+ + * (package {@code org.jboss.vfs}) and is in particular compatible with + * JBoss AS 7 and WildFly 8+. * *
Thanks go to Marius Bogoevici for the initial patch. * Note: This is an internal class and should not be used outside the framework. @@ -57,13 +57,13 @@ public abstract class VfsUtils { private static final Method VIRTUAL_FILE_METHOD_TO_URI; private static final Method VIRTUAL_FILE_METHOD_GET_NAME; private static final Method VIRTUAL_FILE_METHOD_GET_PATH_NAME; + private static final Method VIRTUAL_FILE_METHOD_GET_PHYSICAL_FILE; private static final Method VIRTUAL_FILE_METHOD_GET_CHILD; protected static final Class> VIRTUAL_FILE_VISITOR_INTERFACE; protected static final Method VIRTUAL_FILE_METHOD_VISIT; private static final Field VISITOR_ATTRIBUTES_FIELD_RECURSE; - private static final Method GET_PHYSICAL_FILE; static { ClassLoader loader = VfsUtils.class.getClassLoader(); @@ -81,7 +81,7 @@ public abstract class VfsUtils { VIRTUAL_FILE_METHOD_TO_URL = ReflectionUtils.findMethod(virtualFile, "toURL"); VIRTUAL_FILE_METHOD_GET_NAME = ReflectionUtils.findMethod(virtualFile, "getName"); VIRTUAL_FILE_METHOD_GET_PATH_NAME = ReflectionUtils.findMethod(virtualFile, "getPathName"); - GET_PHYSICAL_FILE = ReflectionUtils.findMethod(virtualFile, "getPhysicalFile"); + VIRTUAL_FILE_METHOD_GET_PHYSICAL_FILE = ReflectionUtils.findMethod(virtualFile, "getPhysicalFile"); VIRTUAL_FILE_METHOD_GET_CHILD = ReflectionUtils.findMethod(virtualFile, "getChild", String.class); VIRTUAL_FILE_VISITOR_INTERFACE = loader.loadClass(VFS3_PKG + "VirtualFileVisitor"); @@ -124,7 +124,7 @@ public abstract class VfsUtils { static boolean isReadable(Object vfsResource) { try { - return ((Long) invokeVfsMethod(VIRTUAL_FILE_METHOD_GET_SIZE, vfsResource) > 0); + return (Long) invokeVfsMethod(VIRTUAL_FILE_METHOD_GET_SIZE, vfsResource) > 0; } catch (IOException ex) { return false; @@ -169,7 +169,7 @@ public abstract class VfsUtils { } static File getFile(Object vfsResource) throws IOException { - return (File) invokeVfsMethod(GET_PHYSICAL_FILE, vfsResource); + return (File) invokeVfsMethod(VIRTUAL_FILE_METHOD_GET_PHYSICAL_FILE, vfsResource); } static Object getRoot(URI url) throws IOException {