Russell Butek wrote: > >> Example: define a subclass for each holder which is intended to be used for >> input only arguments. Or define static methods (e.g. getParameterMode >> analogous to the existing getParameterName) which can be used to determine >> the parameter mode. > > Ah! I understand, now. > > At this point in time I'd prefer reflection over dd. I think I'd prefer a > marker interface, too. Holders are inout unless they implement an > OutOnlyHolder interface (or vice versa?). That way we can generate our > holders with or without the marker. And we can have a set of primitive > holders of our own that extend the JAX-RPC holders and implement the > marker. (That way we wouldn't have to bring JAX-RPC in line with this idea > just yet. I think they'd be very reluctant.) > > This is just a quick thought. I haven't considered this too seriously, > yet.
Even with reflection, there are two approaches. You seem to have caught the first which requires a proliferation of holder classes. Note that getParameterName is a method on the Service object itself. One could envision a getParameterMode in the same place. Consider it seriously. The solution you chose doesn't even have to be the final one - until we release you can always go back and fix the code and examples if a better approach is found. By addressing the first wave of issues, we can move quickly onto the next. We are soon going to be in the position where we can get feedback from perhaps dozens of implementations. It would be a shame if a significant fraction of them were blocked by a common issue. - Sam Ruby