Interface DeploymentUnitProcessor

All Known Implementing Classes:
AnnotationIndexProcessor, ClassTransformerProcessor, CleanupAnnotationIndexProcessor, CleanupReflectionIndexProcessor, CompositeIndexProcessor, DeferredDeploymentOverlayDeploymentUnitProcessor, DeploymentCompleteServiceProcessor, DeploymentDependenciesProcessor, DeploymentOverlayDeploymentUnitProcessor, DeploymentRootMountProcessor, DeploymentStructureDescriptorParser, DeploymentVisibilityProcessor, DriverDependenciesProcessor, InstallReflectionIndexProcessor, JBossAllXmlParserRegisteringProcessor, JBossAllXMLParsingProcessor, ManifestAttachmentProcessor, ManifestClassPathProcessor, ManifestDependencyProcessor, ManifestExtensionListProcessor, ManifestExtensionNameProcessor, ModuleClassPathProcessor, ModuleDependencyProcessor, ModuleExtensionListProcessor, ModuleExtensionNameProcessor, ModuleIdentifierProcessor, ModuleSpecProcessor, ServerDependenciesProcessor, ServiceActivatorDependencyProcessor, ServiceActivatorProcessor, ServiceLoaderProcessor, SubDeploymentDependencyProcessor, SubDeploymentProcessor

public interface DeploymentUnitProcessor
A deployment processor. Instances of this interface represent a step in the deployer chain. They may perform a variety of tasks, including (but not limited to):
  1. Parsing a deployment descriptor and adding it to the context
  2. Reading a deployment descriptor's data and using it to produce deployment items
  3. Replacing a deployment descriptor with a transformed version of that descriptor
  4. Removing a deployment descriptor to prevent it from being processed
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Perform a single step in processing the deployment phase.
    default void
    Undo the deployment processing.
  • Method Details

    • deploy

      Perform a single step in processing the deployment phase. The resulting state after executing this method should be that either the method completes normally and all changes are made, or an exception is thrown and all changes made in this method are reverted such that the original pre-invocation state is restored.

      Data stored on the phase context only exists until the end of the phase. The deployment unit context which is persistent is available via context.getDeploymentUnitContext().

      Parameters:
      phaseContext - the deployment unit context
      Throws:
      DeploymentUnitProcessingException - if an error occurs during processing
    • undeploy

      default void undeploy(DeploymentUnit context)
      Undo the deployment processing. This method should undo any action taken by deploy(); however, if the deploy() method added services, they need not be removed here (they will automatically be removed).

      This method should avoid throwing exceptions; any exceptions thrown are logged and ignored. Implementations of this method cannot assume that the deployment process has (or has not) proceeded beyond the current processor, nor can they assume that the undeploy() method will be called from the same thread as the deploy() method.

      Parameters:
      context - the deployment unit context