3 Replies Latest reply on Nov 8, 2007 5:43 PM by Scott Stark

    Updating InjectionHandler code

    Scott Stark Master

      I updated the org.jboss.metadata.annotation.creator code in the metadata project to start dealing with javaee component resource group entries. So far only @EJB and @Resource annotations are being processed. The
      org.jboss.test.metadata.annotation.repository.MetaDataRepositoryUnitTestCase.testMemoryMetaDataLoader illustrates this for the MyStatelessBean test bean.

      @EJB maps to a new AnnotatedEJBReferenceMetaData type that will have to be mapped to either EjbReferenceMetaData or EjbLocalReferenceMetaData by the ReferenceMetaDataResolverDeployer when it determines what the target is.

      My question at this point is how to update the InjectionHandler impls to run of the resolved metadata view. I'm going to have a call with Carlo and Adrian to sync up on what I have, and discuss what needs to be done to finish the transition to the unified metadata. Either Carlo or myself will follow up here with that outcome.

        • 1. Re: Updating InjectionHandler code
          Scott Stark Master

          The outcome of the call this morning was:

          1. Adrian will update the existing InjectionHandler code to use the correct Advisor.getMetadata/setMetadata calls to use the MetaData repository spi rather than the legacy AnnotationRepository.
          2. I'm finishing a "sufficient" mapping of the standard javaee annotations to the unified pojo metadata model, integration with the AnnotationMetaDataDeployer, and population of the DeploymentUnit attachment with the merged JBossMetaData
          3. Adrian will look at making the pojo view available as an annotation via the MetaData spi to an ejb3 aspect like the org.jboss.ejb3.security.RoleBasedAuthorizationInterceptor to validate that the manageable pojo view drives the container aspects.
          4. I'll look at expanding the mapping of annotations to pojo model to custom jboss annotations like the @Cache to CacheConfigMetaData. For this the ext api Andrew is working on is needed as a dependency of the metadata project.
          5. Carlo hopes to get out of EAP 4.3 soon.

          • 2. Re: Updating InjectionHandler code
            Andrew Rubinger Master

             

            scott.stark@jboss.org wrote:
            I'll look at expanding the mapping of annotations to pojo model to custom jboss annotations like the @Cache to CacheConfigMetaData. For this the ext api Andrew is working on is needed as a dependency of the metadata project.


            I'd assumed that updating the POJO metadata would fall under my responsibility. I'd like to get all required changes in as close together as possible:

            1) Changes to EJB3 Core / Ext API
            2) Propogation to metadata to reflect the Core changes
            3) Update TCK setup with appropriate configurations

            ...if I were to commit 1) to AS Trunk only, it'd break both TCK and all XML-based unit tests. Was planning on handling all three of these cases; how would you like to proceed?

            projects/metadata/trunk now failing to build on "mvn install", though branches/stable is kosher. Current development branch?

            S,
            ALR

            • 3. Re: Updating InjectionHandler code
              Scott Stark Master

              Ok, you can take it. I have plenty to do. The metadata trunk is what you need to use. Its building for me ok, although there are 2 new errors. There should only be one in AnnotationEjb3UnitTestCase:

              Failed tests:
               testEverything(org.jboss.test.metadata.ejb.EjbJar3xEverythingUnitTestCase)
               testEJB3xEverything(org.jboss.test.metadata.ejb.EjbJarJBossMergeEverythingUnitTestCase)
               test1(org.jboss.test.metadata.annotation.ejb3.AnnotationEjb3UnitTestCase)
              
              Tests run: 97, Failures: 3, Errors: 0, Skipped: 0
              ...
              [INFO] ------------------------------------------------------------------------
              [INFO] BUILD SUCCESSFUL
              [INFO] ------------------------------------------------------------------------
              [INFO] Total time: 25 seconds
              [INFO] Finished at: Thu Nov 08 14:40:54 PST 2007
              [INFO] Final Memory: 19M/294M
              [INFO] ------------------------------------------------------------------------