dmsmith555 at yahoo.com
Sun Jun 6 20:40:47 MST 2004
There are several different signatures of ActionPerformed.
I think that this method can be put in ActionFactory:
public void actionPerformed(ActionEvent e, Object caller)
I don't think that the code will have problems if the methods it calls
via reflection are public. I had problems with the reflection before
caller was added.
As to whether they should be public, they should not be. But, we often
have to do otherwise to improve the code in general. (Where is C++'s
friend mechanism to limit collaborations when you need it!)
Perhaps it would be best to put a general comment in the class files
stating that it should be non public. I have seen many ways to do this
on a per method basis:
/* non */ public void doit()
/* private */ public void doit()
Joe Walker wrote:
> Is there any reason why we shouldn't promote the actionPerformed method
> that is implemented many times in the children of ActionFactory to
> ActionFactory itself?
> The only implication that I can see is that the methods called by
> ActionFactory would need to be public and not protected, but this would
> enable us to get rid of a far bit of code by using ActionFactory directly.
> Or did I miss something?
> jsword-devel mailing list
> jsword-devel at crosswire.org
More information about the jsword-devel