Package jfun.yan

Examples of jfun.yan.Container


      }
    });
    processor.registerNut("service", desc);
  }
  public synchronized Container initContainer(ClassLoader cloader, ServletContext servletContext) {
    final Container yan = super.initContainer(cloader, servletContext);
    //eagerly instantiate all exported Service.
    yan.getInstancesOfType(Service.class);
    return yan;
  }
View Full Code Here


  public void test2()
  throws IOException{
    final NutsProcessor interpreter = new NutsProcessor();
    SpringNuts.setSpringAware("test2", interpreter);
    interpreter.processFile("test/yan/test_spring.xml");
    final Container yan = interpreter.getContainer();
    final Greeter greeter = (Greeter)yan
      .getInstance("myController");
    greeter.greet();
    final Factory factory = (Factory)yan.getInstance("myfactory");
    factory.create();
    final Factory factory2 = (Factory)yan.getInstance("myfactory2");
    factory2.create();
    final FactoryBean fb = SpringAdapter.getFactoryBean(yan, "myController");
    assertNotNull(fb);
  }
View Full Code Here

      return yan.getInstance(id);
    }
    public void testXfireIntegration()
            throws Exception
    {
        Container yan = getContainer();
       
        assertNotNull(yan.getInstance("xfire.serviceFactory"));
        Service service = (Service)yan.getInstance("echo");
        assertNotNull(service);
        assertEquals(org.codehaus.xfire.test.Echo.class,
            service.getServiceInfo().getServiceClass());
        assertEquals("echo", service.getName().getLocalPart());
        ServiceRegistry reg = (ServiceRegistry) yan.getInstance("xfire.serviceRegistry");
    }
View Full Code Here

        return yan;
    }

    public void testUpDownDependenciesCannotBeFollowed()
    throws Exception{
        Container parent = createYanContainer();
        Container child = createYanContainer().inherit(parent);
        //child = trans(child);
        // ComponentF -> ComponentA -> ComponentB+c
        child.registerConstructor(ComponentF.class);
        parent.registerConstructor(ComponentA.class);
        parent.registerConstructor(ComponentB.class);
        child.registerConstructor(ComponentC.class);
        try{
          child.getInstance(ComponentF.class);
          fail("should not resolve C");
        }
        catch(IrresolveableArgumentException e){
          //e.printResolutionTrace();
          assertEquals(3, e.getResolutionTrace().size());
          assertEntry(e, 0, "parameter 1 of <public tests.jfun.yan.tck.BaseContainerTestCase$ComponentA(tests.jfun.yan.tck.BaseContainerTestCase$ComponentB,tests.jfun.yan.tck.BaseContainerTestCase$ComponentC)>");
          assertEntry(e, 1, "parameter 0 of <public tests.jfun.yan.tck.BaseContainerTestCase$ComponentF(tests.jfun.yan.tck.BaseContainerTestCase$ComponentA)>");
          assertEntry(e, 2, "getInstance <class tests.jfun.yan.tck.BaseContainerTestCase$ComponentF>");
          assertParameter(e, 0, ComponentA.class, 1);
          assertParameter(e, 1, ComponentF.class, 0);
          assertEquals(ComponentC.class, e.getParameterType());
        }
       
//      ComponentF1 -> ComponentA1 -> ComponentB1+C1 -> ComponentD
        child.registerConstructor(ComponentF1.class);
        parent.registerConstructor(ComponentA1.class);
        parent.registerConstructor(ComponentB1.class);
        parent.registerConstructor(ComponentC1.class);
        child.registerConstructor(ComponentD.class);
        try{
          child.getInstance(ComponentF1.class);
          fail("should not resolve D");
        }
        catch(IrresolveableArgumentException e){
          //e.printResolutionTrace(System.err);
          assertEquals(4, e.getResolutionTrace().size());
View Full Code Here

    }
  }
  private void prewireNuts(Object id, ClassLoader loader, ResourceLoader rloader, InputSource in)
  throws IOException{
    final NutsProcessor aux = createMetaProcessor(loader, rloader);
    final Container nuts = aux.getContainer();
    aux.process(id, in);
    loadNutsFromContainer(nuts);
  }
View Full Code Here

      this.processor = process(cloader, servletContext);
      if(this.processor==null){
        return null;
      }
     
      Container parent = loadParentContainer(servletContext);
      this.yan = parent!=null?processor.getContainer().inherit(parent)
        : processor.getContainer();
      this.lifecycle_manager = processor.getLifecycleManager();
      servletContext.setAttribute(CONTAINER_ROOT, this.yan);
      servletContext.setAttribute(LIFECYCLE_MANAGER_ROOT, this.yan);
View Full Code Here

TOP

Related Classes of jfun.yan.Container

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.