OK - I guess I understand. So for example if I do :
context.addStep( new AbstractDeploymentChainStep() {
protected void execute(DeploymentProcessorTarget processorTarget) {
processorTarget.addDeploymentProcessor(Phase.DEPENDENCIES, Phase.DEPENDENCIES_MODULE, new MyDependencyProcessor());
}
RUNTIME);
}, OperationContext.Stage.
And in MyDependencyProcessor I do:
ModuleSpecification moduleSpecification = deploymentUnit.getAttachment(Attachments.
MODULE_SPECIFICATION);
ModuleDependency dep = new ModuleDependency(Module.getBootModuleLoader(), myModule.getIdentifier(), false, false, false);
dep.addExportFilter(PathFilters.getMetaInfFilter(),
true);
dep.addImportFilter(PathFilters.getMetaInfFilter(),
true); moduleSpecification.addSystemDependency(dep);
where myModule is the blocking service. Then if service still blocks at deployment, then all deployments would fail until the service is up, right ?