One problem that I have noticed with MountHandle.getMountSource() is
that it doesn't seem to exist for exploded deployments (AS7 ResourceRoot
getMountHandle() returns null).
For my current (exploded) test case,
deploymentRoot.getRoot().getPhysicalFile() seems to return the complete
persistence unit root.
On 11/15/2012 11:44 AM, Scott Marlow wrote:
It looks like VirtualFile.getPhysicalFile() uses the FileSystem API.
How does the FileSystem.getFile() compare to the
MountHandle.getMountSource()?
Javadoc from VirtualFile.getPhysicalFile:
"
Get a physical file for this virtual file. Depending on the underlying
file system type, this may simply return an already-existing file; it
may create a copy of a file; or it may reuse a preexisting copy of the
file. Furthermore, the retured file may or may not have any
relationship to other files from the same or any other virtual directory.
@return the physical file
"
MountHandle.getMountSource() javadoc:
"Get the source file used for the mount.
"
On 11/15/2012 09:45 AM, Scott Marlow wrote:
> I think that a FileSystem is probably already created for the mount
> point (since the application deployment is already mounted when I need
> to access it).
>
> How can I gain access to the already mounted FileSystem instance?
>
> On 11/15/2012 06:25 AM, Ales Justin wrote:
>>> Does that require a VFS change to allow the AS7/JPA subsystem to access
FileSystem? Or is there a back door to get to it?
>>
>> No change needed, that's already part of VFS3.
>> You just need to get a hold of the right params - mount point and target.
>> Imo, it should be doable in AS7 subsystem.
>>
>>> On 11/14/2012 11:42 AM, Ales Justin wrote:
>>>> Re-sending ...
>>>>
>>>>> What about using FileSystem's API?
>>>>>
>>>>> File getFile(VirtualFile mountPoint, VirtualFile target) throws
IOException;
>>>>>
>>>>> -Ales
>>>>>
>>>>> On Nov 14, 2012, at 5:40 PM, Scott Marlow <smarlow(a)redhat.com>
wrote:
>>>>>
>>>>>> It looks like the deployment root has the mounted VFS handle.
From what
>>>>>> I read in JBVFS-147 comments, there should only be one mounter of
each
>>>>>> deployment. So, I probably need to borrow the (private) mount
handle
>>>>>> from org.jboss.as.server.deployment.module.MountHandle.
>>>>>>
>>>>>> Something like the following:
>>>>>> (MountHandle)((BasicMountHandle)
>>>>>> (deploymentRoot.getMountHandle().handle)).getMountSource()
evaluates to
>>>>>> my unit test
>>>>>>
/home/smarlow/work/as7/build/target/jboss-as-7.2.0.Alpha1-SNAPSHOT/standalone/tmp/vfs/deployment7c320fbb00ead579/ejbjar.jar-47d0861a51443513/ejbjar.jar
>>>>>> which has what I need.
>>>>>>
>>>>>> On 11/13/2012 08:29 AM, Scott Marlow wrote:
>>>>>>> One thing that I don't want to do, is to walk through
deployments and
>>>>>>> make separate file copies of the contents (that would slow
the
>>>>>>> deployment phase down).
>>>>>>>
>>>>>>> I also don't want to give up on converting VFS urls to
FILE urls.
>>>>>>>
>>>>>>> Any other suggestions?
>>>>>>>
>>>>>>> Scott
>>>>>>>
>>>>>>> On 11/07/2012 03:53 PM, Scott Marlow wrote:
>>>>>>>> We need a proper implementation of JPA
getPersistenceUnitRootUrl():
>>>>>>>>
>>>>>>>> "
>>>>>>>>
javax.persistence.spi.PersistenceUnitInfo.getPersistenceUnitRootUrl()
>>>>>>>>
>>>>>>>> Returns the URL for the jar file or directory that is the
root of the
>>>>>>>> persistence unit. (If the persistence unit is rooted in
the
>>>>>>>> WEB-INF/classes directory, this will be the URL of that
directory.)
>>>>>>>>
>>>>>>>> The URL will either be a file: URL referring to a jar
file
>>>>>>>> or referring to a directory that contains an exploded
jar
>>>>>>>> file, or some other URL from which an InputStream in jar
>>>>>>>> format can be obtained.
>>>>>>>> "
>>>>>>>>
>>>>>>>> VFSFile.getPhysicalFile() doesn't seem to extract the
children, so that
>>>>>>>> isn't helpful by itself.
>>>>>>>>
>>>>>>>> Do we have something like VFSFile.getPhysicalFile() that
gets a physical
>>>>>>>> file representation of all of the files in a deployment
root?
>>>>>>>>
>>>>>>>> Scott
>>>>>>>> _______________________________________________
>>>>>>>> jboss-as7-dev mailing list
>>>>>>>> jboss-as7-dev(a)lists.jboss.org
>>>>>>>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> jboss-as7-dev mailing list
>>>>>>> jboss-as7-dev(a)lists.jboss.org
>>>>>>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> jboss-as7-dev mailing list
>>>>>> jboss-as7-dev(a)lists.jboss.org
>>>>>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> jboss-as7-dev mailing list
>>>> jboss-as7-dev(a)lists.jboss.org
>>>>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>
>>>
>>
>
> _______________________________________________
> jboss-as7-dev mailing list
> jboss-as7-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>
_______________________________________________
jboss-as7-dev mailing list
jboss-as7-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev