Package org.jboss.kernel.spi.dependency

Examples of org.jboss.kernel.spi.dependency.KernelController


      KernelControllerContext context = getControllerContext(name, ControllerState.INSTALLED);
      return context.getTarget();
   }
   protected KernelControllerContext getControllerContext(final Object name, final ControllerState state)
   {
      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);
      }
      return context;
   }
View Full Code Here


   }

   public void testLifecycle() throws Throwable
   {
      Kernel kernel = bootstrap();
      KernelController controller = kernel.getController();

      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder("Name1", BusBean.class.getName());
      builder.addStartParameter(String.class.getName(), "123-Start");
      builder.setStop("doStop");
      builder.setDestroy("executeDestroy");
      builder.addDestroyParameter("int", 123);
      builder.addDestroyParameter(Date.class.getName(), new Date());

      KernelControllerContext context = controller.install(builder.getBeanMetaData());
      assertEquals(ControllerState.INSTALLED, context.getState());

      KernelBus bus = kernel.getBus();
      assertInstanceOf(bus, LifecycleAwareKernelBus.class);
View Full Code Here

   public List<Object> createBeans(String baseName) throws Throwable
   {
      List<Object> result = new ArrayList<Object>();

      KernelController controller = kernel.getController();
      InstanceScope is = metaData.getAnnotation(InstanceScope.class);
      String sflAnn = createAnnotation(is);

      // bean context
      BeanMetaDataBuilder builder = BeanMetaDataBuilder.createBuilder("BeanContext", BaseContext.class.getName());
      builder.addConstructorParameter(BeanContainer.class.getName(), new BeanContainer<Object>());
      builder.addAlias(baseName + "$" + "BeanContext");
      builder.addAnnotation(sflAnn);
      result.add(controller.install(builder.getBeanMetaData()).getTarget());

      // instance interceptor
      builder = BeanMetaDataBuilder.createBuilder("InstanceInterceptor", InstanceInterceptor.class.getName());
      builder.addAlias(baseName + "$" + "InstanceInterceptor");
      builder.addAnnotation(sflAnn);
      builder.addInstallWithThis("addInterceptor", "BeanContext");
      builder.addUninstallWithThis("removeInterceptor", "BeanContext");
      result.add(controller.install(builder.getBeanMetaData()).getTarget());

      return result;
   }
View Full Code Here

      super(name);
   }

   protected KernelControllerContext install(String name, Class<?> clazz) throws Throwable
   {
      KernelController controller = getController();
      return controller.install(new AbstractBeanMetaData(name, clazz.getName()));
   }
View Full Code Here

      }
   }

   public void testInjection() throws Throwable
   {
      KernelController controller = getController();
      controller.install(new AbstractBeanMetaData("pb1", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("pb2", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("pb3", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("deployer", MyDeployer.class.getName()));
      InjectTester tester = new InjectTester();

      testFields(tester, new InjectTesterVerifier(), BeanAccessMode.FIELDS);
      assertTesterAfterUninstall(tester);
View Full Code Here

      assertNull(tester.publicDeployer);
   }

   public void testValueFactory() throws Throwable
   {
      KernelController controller = getController();
      controller.install(new AbstractBeanMetaData("pb1", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("pb2", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("pb3", TestBean.class.getName()));
      ValueFactoryTester tester = new ValueFactoryTester();

      testFields(tester, new VFTesterVerifier(), BeanAccessMode.FIELDS);
      assertTesterAfterInstall(tester);
View Full Code Here

   }

   protected SimpleBean customSetPreInstantiated() throws Throwable
   {
      Kernel kernel = bootstrap();
      KernelController controller = kernel.getController();

      AbstractBeanMetaData bmd = new AbstractBeanMetaData("test1", SimpleBean.class.getName());
      HashSet<PropertyMetaData> properties = new HashSet<PropertyMetaData>();
      bmd.setProperties(properties);
View Full Code Here

      assertNull(tester.publicBean);
   }

   public void testInstalls() throws Throwable
   {
      KernelController controller = getController();
      controller.install(new AbstractBeanMetaData("pb1", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("pb2", TestBean.class.getName()));
      controller.install(new AbstractBeanMetaData("pb3", TestBean.class.getName()));
      CallbacksTester tester = new CallbacksTester();

      testFields(tester, new CallbacksTesterVerifier(), BeanAccessMode.FIELDS);
      assertTesterAfterInstall(tester);
View Full Code Here

   }

   protected UnmodifiableGetterBean unmodifiableSetPreInstantiated() throws Throwable
   {
      Kernel kernel = bootstrap();
      KernelController controller = kernel.getController();

      AbstractBeanMetaData bmd = new AbstractBeanMetaData("test1", UnmodifiableGetterBean.class.getName());
      HashSet<PropertyMetaData> properties = new HashSet<PropertyMetaData>();
      bmd.setProperties(properties);
View Full Code Here

   protected abstract String getFactoryClassName();

   public void testLazy() throws Throwable
   {
      Kernel kernel = bootstrap();
      KernelController controller = kernel.getController();
      try
      {
         AbstractBeanMetaData bean = new AbstractBeanMetaData("bean", RareBean.class.getName());
         bean.setMode(ControllerMode.MANUAL);
         DemandMetaData demand = new AbstractDemandMetaData("foobar");
         ((AbstractDemandMetaData)demand).setWhenRequired(ControllerState.INSTANTIATED);
         bean.setDemands(Collections.singleton(demand));

         KernelControllerContext beanContext = controller.install(bean);
         controller.change(beanContext, ControllerState.NOT_INSTALLED);

         ModifiedLazyMetaData lazy = new ModifiedLazyMetaData("bean", getFactoryClassName());
         lazy.setInterfaces(Collections.singleton(IRare.class.getName()));
         KernelControllerContext lazyContext = controller.install(lazy);

         assertNotNull(lazyContext);
         assertEquals(ControllerState.INSTALLED, lazyContext.getState());

         controller.change(beanContext, ControllerState.DESCRIBED);
         controller.change(lazyContext, ControllerState.INSTALLED);

         IRare lazyRare = (IRare)lazyContext.getTarget();
         assertNotNull(lazyRare);

         try
         {
            lazyRare.getHits();
            throw new RuntimeException("Should not be here.");
         }
         catch(Throwable t)
         {
            assertInstanceOf(t, IllegalArgumentException.class);
         }

         controller.install(new AbstractBeanMetaData("foobar", Object.class.getName()));
         controller.change(beanContext, ControllerState.INSTALLED);

         assertEquals(0, lazyRare.getHits());
         lazyRare.setHits(10);
         assertEquals(5, lazyRare.checkHits(15));

         controller.uninstall(beanContext.getName());
         assertEquals(ControllerState.DESCRIBED, lazyContext.getState());
      }
      finally
      {
         controller.shutdown();
      }
   }
View Full Code Here

TOP

Related Classes of org.jboss.kernel.spi.dependency.KernelController

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.