7 Replies Latest reply on Mar 1, 2002 2:55 AM by juha

    new code is in

    Trevor Squires Novice

      The new code is in.

      A quick rundown is in order.

      1 - the capability package is going away. The stuff in there is waiting for a better home.

      2 - DispatcherFactory will eventually be pluggable and will need to be classloader aware (extra CL arg to create() methods). This is how we'll facilitate BCEL generation and loading of classes.

      3 - Interceptors should be completely stateless and runtime configurable via the JMX agent. I've got that mapped out. However, to facilitate XMBean portability and the existing interceptor architecture in the JBoss codebase, our JMX agent will recognise when an MBean is interceptor aware (which XMBean will be but RequiredModelMBean will not).

      4 - Ultimately I would prefer that the MBeanServerImpl only spoke MBeanInvocation objects when interacting with a managed resource. It would really simplify things (eliminating the new MBeanDelegate interface). I'll argue the case for that one later.

      5 - I'm going to get rid of the OLDInvoker and related classes next and convert dependencies.


        • 1. Re: new code is in
          Trevor Squires Novice


          I'm making good progress. In fact, I'm totally wetting myself over how cool the XMBeans/Interceptors stuff is looking, especially WRT how it would work in a different implementation of a JMX agent.

          One thing that will appear shortly is our first agent-implementation specific MBean (other than the MBeanServerDelegate). I'm ok to keep it in the JMImplementation domain still right?


          • 2. Re: new code is in
            Adrian Brock Master

            I was wondering this.

            Juha has defined a JBOSSMX_DOMAIN in

            That domain isn't protected from register/unregister
            like JMImplementation.


            • 3. Re: new code is in

              the difference between JBOSSMX domain and JMIMPLEMENTATION domain:

              1) use JMIMPLEMENTATION if you have an MBean that is meant for the internal use of the JBossMX server only; that is the MBean will never be needed on any other system, relies on implementation details of the JBossMX server and would not work anywhere else

              2) use JBOSSMX domain in case you have a support MBeans you want to register into a known namespace. For instance, if an XMBean or Interceptor MBeans need to register support components you can use JBOSSMX domain that continues to work even if the host server is not JBossMX. For example, the persistence interceptor for XMBean registers a Timer MBean in JBOSSMX domain that it uses to get notifications for OnTimer persistence policy.

              -- Juha

              • 4. Re: new code is in
                Trevor Squires Novice

                Cool, cool. This is great.


                • 5. Re: new code is in
                  David Jencks Master

                  Am I missing something or is very little of the modelmbean descriptor implementation actually written? I've modified xmbean to work with the updated dtd I've been working on, and the user bean loads ok, but I can't set any values on it, I get NYI errors from ModelMBeanInfoSupport.setDescriptor. (I've added lots more descriptors using the xdoclet generator I'm working on in parallel). Is there anything especially tricky about writing this apparently missing code?

                  I'm seeing invocations go through OLDMBeanInvoker. Is this still expected?

                  I've just suggested on the main dev list that jboss use the xdoclet @todo tags to keep track of whats to do. I think this would be especially valuable for jbossmx. Any opinions?

                  • 6. Re: new code is in
                    Trevor Squires Novice

                    Everyone is waiting on me David so there's a lot of NYIs hanging around.

                    It's coming really.

                    • 7. Re: new code is in

                      waiting, waiting, waiting....

                      -- Juha