All,
I'm continuing to tidy up the Isis codebase, and have made a number of further modifications. Before I get into that, just a note of explanation:

- the idea of moving core.runtime -> runtimes.dflt (as performed in 0.1.1-incubating-SNAPSHOT) was so that runtimes could be considered as pluggable. The existing runtime that we inherited from Naked Objects framework will continue to be supported, of course, but I want the ability to support lighterweight implementations in the future. In fact, we do have an alternative "runtime" of sorts, namely runtimes.embedded (for embedding just the metamodel in an arbitrary app).

~~~
With that reminder said, here's what I've done this time round (oai=org.apache.isis)

- reintroduced oai.core.webapp

I've moved a few servlets/filters etc from oai.runtimes.dflt.webapp that would be generic to any runtime implementation back up to core. Those that remain in oai.runtimes.dflt.webapp are to do with bootstrapping the default runtime.

- reintroduced oai.core.runtime

Similarly, I've moved a number of classes that would be relevant to any runtime - most notably AuthenticationManagerStandard and AuthorizationManagerStandard implementations of the security APIs, up from oai.runtimes.dflt back into a oai.core.runtime module.

- I've moved oai.profilestores back to oai.runtimes.dflt.profilestores

I had hoped last time around that the profilestores concept (user preferences/bookmarks etc) would be a component that multiple runtimes could implement... and hopefully this will be so one day. However, the existing profilestores have a couple of fairly tight dependencies to the default runtime, which are difficult to break and are going to need more analysis (stuff I'd rather put off for now).

- bumped to 0.1.2-incubating-SNAPSHOT

Because there's a change in the module structure, I've again bumped up the version from 0.1.1-incubating-SNAPSHOT -> 0.1.2-incubating-SNAPSHOT.

~~~
The most likely thing that could break following from this update is the changed location of servlets/filters from runtimes.dflt.webapp -> core.webapp. You'll find that the trunk/replace.groovy script has the substitutions that should be needed in any existing application code.

I've also updated the archetype and site. I'll be uploading this new version to the snapshot repo this weekend.

That's it for now, I think... any probs, let me know.

Cheers
Dan


Reply via email to