Hi,

On Tue, Mar 4, 2014 at 3:11 AM, Chetan Mehrotra
<chetan.mehro...@gmail.com> wrote:
> 1. Configure components - Currently various sub modules are using
> different ways to configure. Some is being done via system properties,
> Security module has its own way of configuring, DataStore support has
> its own

That's why I brought up the new DataStore config mechanism as somewhat
troublesome. Security configuration has the same problem.

System properties are currently used in places where a quick and
simple way is needed to tweak options during testing. If a particular
setting needs to be available in production, it should be made
configurable through a setter or a constructor argument. Then it is
easy to control the setting through OSGi service properties or by
whichever framework or configuration mechanism is being used.

> 2. Expose extension points - Exposing extension points in non OSGi env
> becomes tricky. We faced some issues around LoginModule extensiblity
> earlier

We have plenty of extension points (CommitHook, QueryIndexProvider,
etc.) that work just fine. The problem with LoginModules is caused by
the tricky way JAAS works, not by any inherent flaw in our extension
mechanism.

> PojoSR [1] provides support for using OSGi constructs outside of OSGi 
> framework
>
> I have implemented a POC [2] which makes use of PojoSR to configure
> Oak in pojo env. So far basic stuff seems to work as expected.
>
> Would be worthwhile to investigate further here and possibly provide a
> PojoSR based RespositoryFactory?

Looks nice! Having alternative ways of configuring and running Oak is
useful, as it helps us spot problems like the one you brought up about
the security configuration.

BR,

Jukka Zitting

Reply via email to