This is definition document so I don't have to repeat everything on the JIRA tasks
DEPLOYER-OVERVIEW ----------------- The deployer architecture is made up of the following components: VDF - Virtual Deployment Framework The VDF works to abstract deployments meaning the deployers don't have to deal with the physical structure/protocol of the deployments. It is responsible for abstracting away: packed/unpacked deployments copying remote/nested deployments to a temp location supplying logical urls for users/config/codebase-protectiondomain/etc supplying physical urls for classloading/debugging/etc VDF Context A VDF context identifies a deployment/subdeployment holding the information that is identifed by the structural component deployers. Deployer A deployer is made up two components. 1) A structural component that says it recognises a particular deployment and deconstructs the deployment into its VDF contexts. 2) A deployment component that looks at the deployment and constructs the objects. MainDeployer Like the current main deployer it is reponsible for deploy(URL) and undeploy(URL). It also serves as a registry for the other deployers. MicroContainer Any bean that implements the "Deployer interface" will be registered/unregistered with the MainDeployer as it is instantiated. Since the structural components have no dependencies they can be instantiated early and the deployments identified. Deployment Chains Both the structural and deployment components of the deployers are stored inside the MainDeployer registry as a chain in a "priority" order. Structural Chain For the structural chain, the first deployer in "priority" order to recognise the deployer wins. All deployments/subdeployments must be structurally recognised before the deployment chain is processed. Deployment Chain Each deployer gets to process the deployment in the "priority" order. The chain is processed depth first, i.e. priority order over all deployments/subdeployments before moving to the next in the chain Structural Component More Detail To construct the VDF context the structural component must be able to identify: 1) The set of urls that make up the deployment classpath 2) The location of the metadata, e.g. META-INF, WEB-INF, etc. 3) The set of possible subdeployments Deployment Component More Detail This does the job of deployment for this VDF context (not subcontexts/deployments). We want to aim to use the deployment specific metadata to create microcontainer metadata that can be installed (instantiated/configured) according to dependencies. But there are thirdparty components where complete control of the construction/config is not under IOC/microcontainer control RAW Deployers Classloading JAR Bean Classloading Deployer This has no structural component. It forms the highest priority (first) deployment component since very little else can be done reliably until the classes are available. It takes it info from the urls identified by the structural deployments in the VDF contexts. JAR Deployer This is the lowest priority (last) structural component. It takes jars/zips and top level directories (not sub deployments) and adds the url to the VDF context for classloading. There is no deployment component. Bean Deployer The priority of this deployer is unimportant. Structural component It takes .bean with a (META-INF/jboss-bean.xml) or plain -bean.xml files that contain raw microcontainer config in xml format. It identifies the root of the .bean archive (or expanded deployment) as the classloader url. Any file in the root of the .bean is eligible as a subdeployment. Deployment component Parses the -bean.xml and installs it into the microcontainer Profile A profile serves as a collection of deployments. The simplest implementation is the current JBoss directory structure, i.e. a static config and a hot deploy config. A more useful implementation for production is a versioned/persistent list of deployments. The profile feeds URLs to the main deployer. Other Deployers SAR RAR EJB2 EJB3 EAR -ds.xml WAR BSH Hot Deployment Profile The hot deployment profile will need the mechanisms to order deployments like current JBoss View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3860842#3860842 Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3860842 ------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ JBoss-Development mailing list JBoss-Development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jboss-development