On Thu, 2006-09-14 at 13:23 +0530, Deepal Jayasinghe wrote: > Hi Dennis: > please see my comment in line. > > > I'm working on documentation for > > org.apache.axis2.client.ServiceClient, and ran into a few questions. > > First off, the constants ANON_OUT_ONLY_OP, ANON_ROBUST_OUT_ONLY_OP, > > and ANON_OUT_IN_OP; if I'm understanding these correctly they > > represent exactly the opposite of what you'd expect from looking at > > the WSDL definition for an operation. So ANON_OUT_ONLY is an IN_ONLY > > WSDL operation. > > Yes , you are correct. > The reason is in the client side sending a request is equivalent to > server sending the response (both the cases invoke the outFlow). That is > why we introduced opposite operation for the client side. > I agree with you that name are confusing , but at this point I dont > think we can change that , and best solution is (as you have mentioned) > to document them properly.
I also agree that the name is a bit confusing but I do believe its accurate and should not be changed (even if we could). If you describe the behavior in terms of the message flow then it does make sense actually- OUT_IN means the first message to go out of that bit of code is an outgoing message (whether its the client or the server side) and that that it expects a message to come in. By using the approach of sticking to the message flow, we were able to avoid switching on whether its server side or client side, which too is confusing because a server can be a client. The way we have it now, an in-out operation of a service is modeled on the server as an IN_OUT message exchange pattern and on the client as an OUT_IN message exchange pattern. > > This seems very confusing to me, since users are likely to be thinking > > in terms of WSDL. It's probably too late to change the names, but I > > wanted to check if I'm misinterpreting something here. There really > > doesn't even appear to be any reason why these should be exposed as > > part of the public API. Hmmm. Good question- I also don't see why the ANON_* constants are externally visible. We put those to create underlying anonymous AxisOperation objects to make the simple API calls work right and hence should be private IMO. Deepal? Sanjiva. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
