In my personal use of Chain, I am using it as <String, Object>. So typing as Context<K, V> is good. Though, do we need type T? Shouldn't retrieve(K) just return V?
On Fri, Sep 9, 2011 at 2:21 PM, Simone Tripodi <[email protected]> wrote: > here I am! > sorry I'm late but just terminated to have dinner :P > I think that specifying the <extending Object> can be omitted, and > Paul's suggestion is the way to go, the code is more readable. > > The last added method can be improved, putting the K as argument > instead of String and <T extends V> as a strict check for output > argument: > > public interface Context<K, V> > extends Map<K, V> > { > > <T extends V> T retrieve(K key); > > } > > what I think is not so nice to have, is the Command, Filter, Chain, > ..., notation that, getting Context as argument in their methods, > would require generics... > > Lets' think about it, thanks for sharing your thoughts!!! > All the best, > Simo > > http://people.apache.org/~simonetripodi/ > http://www.99soft.org/ > > > > On Fri, Sep 9, 2011 at 8:56 PM, Elijah Zupancic <[email protected]> wrote: >> Paul, >> >> You may be right. Which one is more idiomatic? >> >> Thanks, >> -Elijah >> >> On Fri, Sep 9, 2011 at 11:51 AM, Paul Benedict <[email protected]> wrote: >>> On Fri, Sep 9, 2011 at 1:47 PM, Elijah Zupancic <[email protected]> >>> wrote: >>>> Thanks for your comments Nail. >>>> >>>> I think that I've come around to see your point after sleeping on it. >>>> What do you think about this: >>>> >>>> Context.java - would be defined as so: >>>> >>>> public interface Context<K extends Object, V extends Object> extends >>>> Map<K, V> >>> >>> Isn't that identical to? >>> public interface Context<K, V> extends Map<K, V> >>> >>>> Then ContextBase.java would be defined like so: >>>> >>>> public class ContextBase extends ConcurrentHashMap<String, Object> >>>> implements Context<String, Object> { >>> >>> Paul >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >>> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
