Ales Justin [http://community.jboss.org/people/alesj] replied to the discussion

"MemoryFileFactory in jboss-vfs 3.0.0.CR5"

To view the discussion, visit: http://community.jboss.org/message/552818#552818

--------------------------------------------------------------
> The MemoryFileFactory class has been replaced with a InMemoryClassesDeployer 
> which is a deployer targeted at the DESCRIBE stage. 
> 
I wouldn't say replaced, the deployer used to use MFF, but now used different 
approach,
with temp file locations, instead of keeping bytes in-memory.
> What it does is that is mounts a temporary file system (by default in the 
> servers tmp/vfs directory) that other deployments can add things to. In the 
> ESB case, things like a generated servlets class, a wsdl file, and schema 
> files would be added. 
> So our deployers we would do somethings like this:
>  
> VirtualFile inMemRootDir = 
> unit.getAttachment(InMemoryClassesDeployer.DYNAMIC_CLASS_KEY, 
> VirtualFile.class);
> VirtualFile wsdlFile = VFS.getChild(inMemRootDir.getPathName() + "/" + 
> serviceInfo.getWSDLFileName());
> *final* String wsdl = generateWsdl();
> VFSUtils.writeFile(wsdlFile, wsdl.getBytes());
> unit.appendMetaDataLocation(wsdlFile);
> 
> 
>  
> 
> 
> 
> Is this the intended usage of the InMemoryClassesDeployer?
Yes, the IMCD's intent is to create a new temp classpath root.

VirtualFile wsdlFile = VFS.getChild(inMemRootDir.getPathName() + "/" + 
serviceInfo.getWSDLFileName());
--> VirtualFile wsdlFile = 
inMemoryRootDir.getChild(serviceInfo.getWSDLFileName());



For "unit::appendMetaDataLocation", you should append file's owner directory, 
not the file itself.



> Now our deployer do not need to do any clean up in their undeploy methods as 
> this is done by the InMemoryClassesDeployer which will remove the filesystem 
> when the deployment is undeployed.
Yes.

--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/552818#552818]

Start a new discussion in JBoss Microcontainer at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2114]

_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to