Package org.jboss.dependency.spi

Examples of org.jboss.dependency.spi.ControllerStateModel


   // TODO - not the nicest impl with 4 trys, but what else can we do?
   public ControllerState lifecycleInvocation(String name, Object[] parameters, String[] signature) throws Throwable
   {
      if (useLifecycleState(name, signature, metaData.getCreate(), "create"))
      {
         ControllerStateModel model = getController().getStates();
         if (model.isAfterState(ControllerState.CREATE, getState()))
            return ControllerState.CREATE;
         else
            return getState();
      }

      if (useLifecycleState(name, signature, metaData.getStart(), "start"))
      {
         ControllerStateModel model = getController().getStates();
         if (model.isAfterState(ControllerState.START, getState()))
            return ControllerState.START;
         else
            return getState();
      }

      if (useLifecycleState(name, signature, metaData.getStop(), "stop"))
      {
         ControllerStateModel model = getController().getStates();
         if (model.isBeforeState(ControllerState.CREATE, getState()))
            return ControllerState.CREATE;
         else
            return getState();
      }

      if (useLifecycleState(name, signature, metaData.getDestroy(), "destroy"))
      {
         ControllerStateModel model = getController().getStates();
         if (model.isBeforeState(ControllerState.CONFIGURED, getState()))
            return ControllerState.CONFIGURED;
         else
            return getState();
      }
View Full Code Here


      deployer.shutdown();
   }
   protected void assertNoBeansExist()
   {
      KernelController controller = kernel.getController();
      ControllerStateModel states = controller.getStates();
      int beanCount = 0;
      for(ControllerState s : states)
      {
         Set<ControllerContext> ctxs = controller.getContextsByState(s);
         beanCount += ctxs.size();
View Full Code Here

   }
   protected void assertBeansExist(Set<String> names)
   {
      HashSet<String> unexpectedBeanNames = new HashSet<String>();
      KernelController controller = kernel.getController();
      ControllerStateModel states = controller.getStates();
      for(ControllerState s : states)
      {
         Set<ControllerContext> ctxs = controller.getContextsByState(s);
         for(ControllerContext ctx : ctxs)
         {
View Full Code Here

      KernelController controller = kernel.getController();
      KernelControllerContext context = (KernelControllerContext) controller.getContext(name, state);
      if (context == null)
      {
         getLog().error("Bean not found " + name + " at state " + state);
         ControllerStateModel states = controller.getStates();
         for(ControllerState s : states)
         {
            getLog().info(s+": "+controller.getContextsByState(s));
         }
         throw new IllegalStateException("Bean not found " + name + " at state " + state);
View Full Code Here

      return module.registerClassLoaderPolicy(system);
   }
  
   protected MockClassLoaderPolicyModule assertModule(KernelControllerContext context) throws Exception
   {
      ControllerStateModel states = context.getController().getStates();
      ControllerState state = context.getState();
      ControllerState next = states.getNextState(state);
      assertEquals(context.getName() + " should be installed: " + state + " unresolved=" + context.getDependencyInfo().getUnresolvedDependencies(next), ControllerState.INSTALLED, context.getState());
      Object target = context.getTarget();
      assertNotNull(target);
      return assertInstanceOf(target, MockClassLoaderPolicyModule.class);
   }
View Full Code Here

      return module.registerClassLoaderPolicy(system);
   }
  
   protected MockClassLoaderPolicyModule assertModule(KernelControllerContext context) throws Exception
   {
      ControllerStateModel states = context.getController().getStates();
      ControllerState state = context.getState();
      ControllerState next = states.getNextState(state);
      assertEquals(context.getName() + " should be installed: " + state + " unresolved=" + context.getDependencyInfo().getUnresolvedDependencies(next), ControllerState.INSTALLED, context.getState());
      Object target = context.getTarget();
      assertNotNull(target);
      return assertInstanceOf(target, MockClassLoaderPolicyModule.class);
   }
View Full Code Here

      String before = stage.getBefore();
      String after = stage.getAfter();
      if (before != null || after != null)
      {
         // Determine where to put the stage
         ControllerStateModel states = controller.getStates();
         for (ControllerState state : states)
         {
            String stateName = state.getStateString();
            if (before != null && before.equals(stateName))
            {
               preceeds = state;
               break;
            }
            if (after != null && after.equals(stateName))
            {
               if (states.getNextState(state) != null)
               {
                  preceeds = states.getNextState(state);
                  break;
               }
            }
         }
      }
View Full Code Here

               toUndeploy.add(deploymentControllerContext);
            }
         }

         // Go through the states in reverse order
         ControllerStateModel states = controller.getStates();
         ListIterator<ControllerState> iter = states.listIteraror();
         while (iter.hasPrevious())
         {
            ControllerState state = iter.previous();
            for (DeploymentControllerContext deploymentControllerContext : toUndeploy)
            {
               ControllerState current = deploymentControllerContext.getState();
               if (ControllerState.ERROR.equals(current) == false && states.isAfterState(current, state))
               {
                  DeploymentContext context = deploymentControllerContext.getDeploymentContext();
                  try
                  {
                     controller.change(deploymentControllerContext, state);
                  }
                  catch (Throwable t)
                  {
                     log.warn("Error during undeploy", t);
                     context.setState(DeploymentState.ERROR);
                     context.setProblem(t);
                  }
               }
               else
               {
                  if (trace)
                     log.trace("Not moving " + deploymentControllerContext + " to state " + state + " it is at " + current);
               }
            }
         }

         // Uninstall the contexts
         for (DeploymentControllerContext deploymentControllerContext : toUndeploy)
         {
            DeploymentContext context = deploymentControllerContext.getDeploymentContext();
            context.getTransientAttachments().removeAttachment(ControllerContext.class);
            try
            {
               controller.uninstall(deploymentControllerContext.getName());
               setState(context, DeploymentState.UNDEPLOYED, null);
               // This is now in the abstract classloader deployer.undeploy,
               // but left here in case somebody isn't using that.
               unregisterMBean(context);
               removeClassLoader(context);
               cleanup(context);
               log.debugf("Fully Undeployed %1s", context.getName());
            }
            catch (Throwable t)
            {
               log.warn("Error during uninstall", t);
               context.setState(DeploymentState.ERROR);
               context.setProblem(t);
            }
         }
      }

      // There is something to deploy
      if (deploy != null && deploy.isEmpty() == false)
      {
         // Create the controller contexts
         for (DeploymentContext context : deploy)
         {
            checkShutdown();

            DeploymentControllerContext deploymentControllerContext = new DeploymentControllerContext(context, this);
            context.getTransientAttachments().addAttachment(ControllerContext.class, deploymentControllerContext);
            try
            {
               controller.install(deploymentControllerContext);
               context.setState(DeploymentState.DEPLOYING);
               log.debugf("Deploying %1s", context.getName());
               if (scopeBuilder != null)
                  context.getTransientAttachments().addAttachment(ScopeBuilder.class, scopeBuilder);
               if (repository != null)
                  context.getTransientAttachments().addAttachment(MutableMetaDataRepository.class, repository);
               registerMBean(context);
            }
            catch (Throwable t)
            {
               // Set the error on the parent
               context.setState(DeploymentState.ERROR);
               context.setProblem(t);
               // Set the children to not deployed
               setState(context, DeploymentState.UNDEPLOYED, DeploymentState.DEPLOYING);
               unregisterMBean(context);
            }
         }

         // Go through the states in order
         ControllerStateModel states = controller.getStates();
         for (ControllerState state : states)
         {
            for (DeploymentContext context : deploy)
            {
               DeploymentControllerContext deploymentControllerContext = context.getTransientAttachments().getAttachment(ControllerContext.class.getName(), DeploymentControllerContext.class);
               ControllerState current = deploymentControllerContext.getState();
               if (ControllerState.ERROR.equals(current) == false && states.isBeforeState(current, state) && current.getStateString().equals(context.getRequiredStage().getName()) == false)
               {
                  checkShutdown();
                  try
                  {
                     controller.change(deploymentControllerContext, state);
View Full Code Here

            if (context.getState().equals(context.getRequiredState()))
               i.remove();
         }
         if (notInstalled.isEmpty() == false)
         {
            ControllerStateModel states = controller.getStates();
            contextsInError = new HashMap<String, Throwable>();
            contextsMissingDependencies = new HashMap<String, Set<MissingDependency>>();
            for (ControllerContext context : notInstalled)
            {
               checkControllerContext(context, contextsInError, contextsMissingDependencies, states);
View Full Code Here

            deploymentsMissingDeployer.add(context.getName());

         if (checkContexts)
         {
            Set<ControllerContext> notInstalled = controller.getNotInstalled();
            ControllerStateModel states = controller.getStates();
            checkComplete(context, contextsInError, contextsMissingDependencies, notInstalled, states);
         }
      }

      // reset if not used
View Full Code Here

TOP

Related Classes of org.jboss.dependency.spi.ControllerStateModel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.