Package org.jboss.aop.metadata

Examples of org.jboss.aop.metadata.DynamicSimpleClassMetadataLoader


      AdviceBinding binding = null;
      try
      {
         System.out.println("TEST ADD CLASS METADATA");
  
         DynamicSimpleClassMetadataLoader loader = new DynamicSimpleClassMetadataLoader(
               "T1", "TEST", "org.jboss.test.aop.dynamicgenadvisor.POJO");
         loader.addDefaultMetaData("default", "default");
         loader.addClassMetaData("class", "class");
         loader.addMethodMetaData("* someMethod(..)", "fm", "someMethod");
         loader.addFieldMetaData("i", "fm", "i");
         AspectManager.instance().addClassMetaData(loader.getClassMetaDataBinding());
        
         binding = new AdviceBinding("all(org.jboss.test.aop.dynamicgenadvisor.POJO)", null);
         binding.addInterceptor(MetadataInterceptor.class);
         AspectManager.instance().addBinding(binding);
        
         POJO pojo = new POJO();
        
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         pojo.i = 100;
         pojo.notPrepared();
         assertTrue(MetadataInterceptor.intercepted);
         assertEquals(2, MetadataInterceptor.lastDefaultMetadata.size());
         assertEquals(2, MetadataInterceptor.lastClassMetadata.size());
         assertEquals(1, MetadataInterceptor.lastMethodMetadata.size());
         assertEquals(1, MetadataInterceptor.lastFieldMetadata.size());
        
         //Make sure we get the metadata expected
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(0));
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(1));
        
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(0));
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(1));
        
         assertEquals("someMethod", MetadataInterceptor.lastMethodMetadata.get(0));
        
         assertEquals("i", MetadataInterceptor.lastFieldMetadata.get(0));
        
         AspectManager.instance().removeClassMetaData(loader.getClassMetaDataBinding().getName());
  
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         pojo.i = 100;
         pojo.notPrepared();
         assertEquals(0, MetadataInterceptor.lastDefaultMetadata.size());
         assertEquals(0, MetadataInterceptor.lastClassMetadata.size());
         assertEquals(0, MetadataInterceptor.lastMethodMetadata.size());
         assertEquals(0, MetadataInterceptor.lastFieldMetadata.size());
        
         //Try adding metadata again now that instance already exists
         AspectManager.instance().addClassMetaData(loader.getClassMetaDataBinding());
  
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         pojo.i = 100;
         pojo.notPrepared();
         assertEquals(2, MetadataInterceptor.lastDefaultMetadata.size());
         assertEquals(2, MetadataInterceptor.lastClassMetadata.size());
         assertEquals(1, MetadataInterceptor.lastMethodMetadata.size());
         assertEquals(1, MetadataInterceptor.lastFieldMetadata.size());
        
         //Make sure we get the metadata expected
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(0));
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(1));
        
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(0));
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(1));
        
         assertEquals("someMethod", MetadataInterceptor.lastMethodMetadata.get(0));
        
         assertEquals("i", MetadataInterceptor.lastFieldMetadata.get(0));
        
         AspectManager.instance().removeClassMetaData(loader.getClassMetaDataBinding().getName());
  
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         pojo.i = 100;
         pojo.notPrepared();
View Full Code Here


         POJO pojox = new POJO();
         pojox.someMethod(123);
         assertFalse(MetadataInterceptor.intercepted);
        
         //Add metadata so binding takes effect
         DynamicSimpleClassMetadataLoader loader = new DynamicSimpleClassMetadataLoader(
               "DA", "TEST", "org.jboss.test.aop.dynamicgenadvisor.POJO");
               loader.addDefaultMetaData("default", "default");
               loader.addClassMetaData("class", "class");
               loader.addMethodMetaData("* someMethod(..)", "fm", "someMethod");
               loader.addFieldMetaData("i", "fm", "i");
               AspectManager.instance().addClassMetaData(loader.getClassMetaDataBinding());
              
         MetadataInterceptor.clear();
         POJO pojo = new POJO();
         pojo.someMethod(123);
         int i = pojo.i;
         assertTrue(MetadataInterceptor.intercepted);
         assertEquals(3, MetadataInterceptor.lastDefaultMetadata.size());
         assertEquals(3, MetadataInterceptor.lastClassMetadata.size());
         assertEquals(1, MetadataInterceptor.lastMethodMetadata.size());
         assertEquals(1, MetadataInterceptor.lastFieldMetadata.size());
        
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(0));
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(1));
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(2));
        
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(0));
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(1));
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(2));
        
         assertEquals("someMethod", MetadataInterceptor.lastMethodMetadata.get(0));
        
         assertEquals("i", MetadataInterceptor.lastFieldMetadata.get(0));
        
         MetadataInterceptor.clear();
         pojox.someMethod(123);
         assertTrue(MetadataInterceptor.intercepted);
        
         AspectManager.instance().removeClassMetaData("DA");
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         pojo.i = 100;
         assertFalse(MetadataInterceptor.intercepted);
        
         //Add metadata to instance domain so binding takes effect
         getInstanceDomain(pojo).addClassMetaData(loader.getClassMetaDataBinding());
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         i = pojo.i;
         assertTrue(MetadataInterceptor.intercepted);
         assertEquals(2, MetadataInterceptor.lastDefaultMetadata.size());
         assertEquals(2, MetadataInterceptor.lastClassMetadata.size());
         assertEquals(1, MetadataInterceptor.lastMethodMetadata.size());
         assertEquals(1, MetadataInterceptor.lastFieldMetadata.size());
        
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(0));
         assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(1));
        
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(0));
         assertEquals("class", MetadataInterceptor.lastClassMetadata.get(1));
        
         assertEquals("someMethod", MetadataInterceptor.lastMethodMetadata.get(0));
        
         assertEquals("i", MetadataInterceptor.lastFieldMetadata.get(0));
        
         //Clean up
         getInstanceDomain(pojo).removeClassMetaData(loader.getClassMetaDataBinding().getName());
         AspectManager.instance().removeBinding(binding.getName());
         MetadataInterceptor.clear();
         pojo.someMethod(123);
         assertFalse(MetadataInterceptor.intercepted);
      }
View Full Code Here

      System.out.println("TEST ADD METADATA TO INSTANCE");
      POJO pojo1 = new POJO();
      POJO pojo2 = new POJO();
      POJO pojo3 = new POJO();

      DynamicSimpleClassMetadataLoader loader1 = new DynamicSimpleClassMetadataLoader(
            "D1", "TEST", "org.jboss.test.aop.dynamicgenadvisor.POJO");
      loader1.addDefaultMetaData("default", "default1");
      loader1.addClassMetaData("class", "class1");
      loader1.addMethodMetaData("* someMethod(..)", "fm", "someMethod1");
      loader1.addFieldMetaData("i", "fm", "i1");
     
      DynamicSimpleClassMetadataLoader loader2 = new DynamicSimpleClassMetadataLoader(
            "D1", "TEST", "org.jboss.test.aop.dynamicgenadvisor.POJO")//Use same name for loaders, they're in different domains
      loader2.addDefaultMetaData("default", "default2");
      loader2.addClassMetaData("class", "class2");
      loader2.addMethodMetaData("* someMethod(..)", "fm", "someMethod2");
      loader2.addFieldMetaData("i", "fm", "i2");
     
      getInstanceDomain(pojo1).addClassMetaData(loader1.getClassMetaDataBinding());
      AdviceBinding binding1 = new AdviceBinding("all(@TEST)", null);
      binding1.addInterceptor(MetadataInterceptor.class);
      getInstanceDomain(pojo1).addBinding(binding1);
     
      AdviceBinding binding2 = new AdviceBinding("all(@TEST)", null);
      getInstanceDomain(pojo2).addClassMetaData(loader2.getClassMetaDataBinding());
      binding2.addInterceptor(MetadataInterceptor.class);
      getInstanceDomain(pojo2).addBinding(binding2);
     
      AdviceBinding binding3 = new AdviceBinding("all(org.jboss.test.aop.dynamicgenadvisor.POJO)", null);
      binding3.addInterceptor(MetadataInterceptor.class);
View Full Code Here

      AdviceBinding binding1 = new AdviceBinding("all(org.jboss.test.aop.dynamicgenadvisor.POJO)", null);
      binding1.addInterceptor(MetadataInterceptor.class);
      AspectManager.instance().addBinding(binding1);

      DynamicSimpleClassMetadataLoader loader = new DynamicSimpleClassMetadataLoader(
            "TEST", "org.jboss.test.aop.dynamicgenadvisor.POJO");
      loader.addDefaultMetaData("default", "default");
      loader.addClassMetaData("class", "class");
      loader.addMethodMetaData("* someMethod(..)", "fm", "someMethod");
      loader.addFieldMetaData("i", "fm", "i");
      AspectManager.instance().addClassMetaData(loader.getClassMetaDataBinding());
     
      DynamicSimpleClassMetadataLoader instanceLoader = new DynamicSimpleClassMetadataLoader(
            "TEST", "org.jboss.test.aop.dynamicgenadvisor.POJO");
      instanceLoader.addDefaultMetaData("default", "defaultXXX");
      instanceLoader.addClassMetaData("class", "classXXX");
      instanceLoader.addMethodMetaData("* someMethod(..)", "fm", "someMethodXXX");
      instanceLoader.addFieldMetaData("i", "fm", "iXXX");
      getInstanceDomain(pojo1).addClassMetaData(instanceLoader.getClassMetaDataBinding());

      MetadataInterceptor.clear();
      pojo.someMethod(123);
      pojo.i = 1000;
      assertEquals(2, MetadataInterceptor.lastDefaultMetadata.size());
      assertEquals(2, MetadataInterceptor.lastClassMetadata.size());
      assertEquals(1, MetadataInterceptor.lastMethodMetadata.size());
      assertEquals(1, MetadataInterceptor.lastFieldMetadata.size());
     
      //Make sure we get the metadata expected
      assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(0));
      assertEquals("default", MetadataInterceptor.lastDefaultMetadata.get(1));
     
      assertEquals("class", MetadataInterceptor.lastClassMetadata.get(0));
      assertEquals("class", MetadataInterceptor.lastClassMetadata.get(1));
     
      assertEquals("someMethod", MetadataInterceptor.lastMethodMetadata.get(0));
     
      assertEquals("i", MetadataInterceptor.lastFieldMetadata.get(0));

      MetadataInterceptor.clear();
      pojo1.someMethod(123);
      pojo1.i = 1000;
      assertEquals(2, MetadataInterceptor.lastDefaultMetadata.size());
      assertEquals(2, MetadataInterceptor.lastClassMetadata.size());
      assertEquals(1, MetadataInterceptor.lastMethodMetadata.size());
      assertEquals(1, MetadataInterceptor.lastFieldMetadata.size());
     
      //Make sure we get the metadata expected
      assertEquals("defaultXXX", MetadataInterceptor.lastDefaultMetadata.get(0));
      assertEquals("defaultXXX", MetadataInterceptor.lastDefaultMetadata.get(1));
     
      assertEquals("classXXX", MetadataInterceptor.lastClassMetadata.get(0));
      assertEquals("classXXX", MetadataInterceptor.lastClassMetadata.get(1));
     
      assertEquals("someMethodXXX", MetadataInterceptor.lastMethodMetadata.get(0));
     
      assertEquals("iXXX", MetadataInterceptor.lastFieldMetadata.get(0));


      getInstanceDomain(pojo1).removeClassMetaData(instanceLoader.getClassMetaDataBinding().getName());
     
      MetadataInterceptor.clear();
      pojo1.someMethod(123);
      pojo1.i = 1000;
      assertEquals(2, MetadataInterceptor.lastDefaultMetadata.size());
View Full Code Here

TOP

Related Classes of org.jboss.aop.metadata.DynamicSimpleClassMetadataLoader

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.