dev@jax-ws.java.net

Re: RuntimeModel change

From: Vivek Pandey <Vivek.Pandey_at_Sun.COM>
Date: Wed, 11 Jan 2006 10:55:13 -0800

Kohsuke Kawaguchi wrote:

>
> Based on what Venu and Roberto said, I propose that we:
>
> 1. define read-only interfaces for RuntimeModel, and have our current
> runtime model classes implement them. We've been talking about doing
> this for some time now, so hopefully people are OK with it.
>
> (Alternatively, given that RuntimeModeler is the only one to create
> the model, maybe we should move RuntimeModeler to the model package
> and use Java access modifiers (like package-local vs public) to
> enforce read-onlyness for outside while still allowing the modeler to
> modify the model.)
>
Ok. the RuntimeModel and other model interfaces are created under
com.sun.xml.ws.sandbox.api.model package. The wspace is refactored to
use these interfaces.

see
http://kohsuke.sfbay/hudson/job/jax-ws-sandbox/ws/jax-ws-sources/jaxws-ri/build/javadoc/com/sun/xml/ws/sandbox/api/model/package-summary.html.

I liked the idea of exposing the mutable methods on the RuntimeModel
implementation class to have package scope and the changes are made
accordingly. However at some places in existing encoder/decoders uses
the AbstractRuntimeModelImpl class to access some public mutable methods
- such methods are marked deprecated and should be removed once the
existing Encoders/Decoders are removed.

> 2. document the interfaces well.

the interfaces are documented but I think they would need some more work.

-vivek.

>
> 3. move the interfaces eventually to some packages that clearly
> identify that these are part of the internal API. I learned from
> JAXB<->JAX-WS dependency that people often just use classes that they
> aren't supposed to, so putting it to the right package might help.
>
> It would be great if someone can do 1 (and I suspect it'll be mostly
> up to Vivek to gradually do 2), but if no one is willing to do it, I'm
> happy to do the interface/impl split. 3 we can do later, when we move
> 'sandbox' package to other places.
>
>

-- 
Vivek Pandey
Web Services Standards and Technologies
Sun Microsystems Inc.