[jboss-dev-forums] [Design the new POJO MicroContainer] - AbstractController add/removeControllerContext

alesj do-not-reply at jboss.com
Fri Aug 10 05:38:22 EDT 2007


"adrian at jboss.org" wrote : 
  | I note you've still not fixed some of the public methods you introduced
  | on the AbstractKernelController that I complained about before.
  | 
  | They need fixing otherwise somebody can break the entire state machine with injudicious
  | (or malign) invocations on those methods.
  | 
  | This is basic OO principles. All public methods should keep the invariant state
  | of the underlying Object, there should be no backdoors. :-)
  | 

Actually it's not AbstractKernelController, it's AbstractController, which complicates things - different package then ScopedKernelController - otherwise I could use package protected. :-(

Looking at the code, I don't see how else I can move context from underlying controller into scoped one.
Except for changing the whole impl, putting the scope information into base controller concept - which doesn't look that trivial to do. :-)

Any ideas how to keep the current impl and at the same time remove this ugly public backdoors?

e.g. ScopedKernelController extends AbstractKernelController extends ScopedController extends AbstractController
And make those methods package protected?
Too ugly and outside concept?


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4072939#4072939

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4072939



More information about the jboss-dev-forums mailing list