No, it will not work!
Before I can give you any suggestions, I would like to know what you are trying to achieve with your usecase?
What I am trying to design is a way to have a single deliverable file (something.jar) that has all of the parts needed for a translator/VDB implementation. Then determine what is the easiest way to get this installed into JBoss/Teiid. The concept of a VFS seemed interesting but raised questions on if it would work.
If we write VFS logic to mount, extract and move the elements, then unmount the file. would that still allow for a dynamic delivery and activaction?
VFS is abstraction layer where the medium where the file system is abstracted. So, unzipping that will not work.
1) This below is you want to drop the file in "deployments" directory or use CLI deploy command
What might work is if you package your contents into a special archive (ex: like of WAR, EAR), where the name has unique signature where you can detect this special archive, then writing a deployer for it. In that deployer, you want to make sure all the required files exist (translator jar file, vdb file, and udf jar files), then further engage the individual deployers to deploy the each individual file. To do that, you can get local access to CLI admin and deploy each of them. What I do not know is if AS will choke if deployer it self is engaging other deployers, as they are designed to run in parallel.
2) If you want to write something like what we did in Admin API, you can write some custom code, which takes this archive and deploys each individual file using built in translators. However, to deploy your archive you need to call this method. See AdminFactory, AdminImpl class.
(2) is pretty simple to do, however it will limit how you can deploy, it is not a standard way to deploy in the JBoss AS/Teiid.
BTW, in prior life of Teiid (metamatrix), we did have such feature, which was nothing but all around headache, when it came to propagating the vdb between various environments as configuration and some details are sure to differ.
Thanks Ramesh this helps.
Let me try to state the problem in a slightly different way.
What we are trying to do is determine how to add new VDB/Translators programatically without recycling AS. Taking this to the case of even stopping and replacing specific VDB/Translator items (i.e 1 of n in the set of VDB/Translators installed). Looking to have the AS up as a 24/7 production level server and being able to adjust the VDB/Translator mix.
What would be a recommended way to approach this effort?
You never have to stop to deploy VDBs and transalators. You can deploy them by dropping them in deployments directory or use web-console to deploy. If you are looking for programtic way, then you can use the Admin API provided by Teiid. For details of Admin API see https://docs.jboss.org/author/display/TEIID/Deploying+VDBs
Admin API class
an example usage