I, for one, am of one mind with Hubert on these questions.  I
particularly favor the one context option.

Jack


On Tue, 29 Mar 2005 16:36:56 -0600, Joe Germuska <[EMAIL PROTECTED]> wrote:
> At 3:15 PM -0600 3/29/05, Hubert Rabago wrote:
> >I think the bigger question is, what happens in the future when we
> >decide we need to make changes to the ActionContext interface?  I
> >don't have an answer right now, but I felt like I needed to ask the
> >question.
> >
> >I think this is one of the reasons Craig often cites when asked about
> >the use of superclasses instead of interfaces.  I certainly appreciate
> >the flexibility of making ActionContext an interface, but the cost is
> >we either lock the API or cause possible compatibility problems when
> >changes need to be made.
> 
> Perhaps, although I think it's more about preventing people from
> implementing interfaces on classes which really do something else.
> In any case, the common approach in many APIs is to strongly
> encourage people to implement ActionContext by extending
> ActionContextBase, and maybe that's reason enough.
> 
> >Hmm... what about separating the logic from the data?  We keep
> >ActionContext close to the Context concept, mostly limited to
> >accessors to data, then we have an ActionContextUtil which contains
> >common operations on ActionContext objects.  Methods such as
> >addMessages(), getMessageResources(key), and *Token() can be placed
> >there.   There's still the chance of compatibility problems when
> >there's an API change on ActionContext, but this could minimize it.
> 
> Yeah, I thought about this, and it's just a design style I find
> distasteful.  Not horribly so, but not what I'd choose first.  Still,
> it's perhaps true that it better separates conveniences from the core
> responsibility of the class.
> 
> >Or you could go to the other extreme where the ActionContext
> >disappears and we stick to plain Context, then let ActionContextUtil
> >contain all the Struts-specific operations such as extracting data
> >from the map and casting them to the right class:
> >
> >return context.getMapping().findForward("success");
> >vs.
> >return contextUtil.getMapping(context).findForward("success");
> 
> I suppose, but personally I don't like this one much more.
> 
> Thanks for weighing in, Hubert -- looking forward to hearing some
> other opinions...
> 
> Joe
> 
> --
> Joe Germuska
> [EMAIL PROTECTED]
> http://blog.germuska.com
> "Narrow minds are weapons made for mass destruction"  -The Ex
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


-- 
"You can lead a horse to water but you cannot make it float on its back."
~Dakota Jack~

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to