You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Raul Kripalani <ra...@apache.org> on 2015/11/12 13:22:31 UTC

ignite-platform module

Hello,

Currently we have a single ignite-platform module aggregating all sources
for .NET and CPP integration.

For the OSGi integration I'm working on, I need to add two modules to the
Ignite codebase to facilitate deploying Ignite on top of Apache Karaf (OSGi
container).

One can regard Apache Karaf as another platform, so semantically it feels
natural is to nest these modules under platform/karaf.

However, this would require some refactoring so that platform can contain
modules:

platform
   |---------dotnet
   |---------java
   |---------cpp
   |---------pom.xml

What do you think?

Regards,

*Raúl Kripalani*
PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
Messaging Engineer
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

Re: ignite-platform module

Posted by Dmitriy Setrakyan <ds...@apache.org>.
On Thu, Nov 12, 2015 at 5:37 AM, Raul Kripalani <ra...@apache.org> wrote:

> On Thu, Nov 12, 2015 at 12:58 PM, Vladimir Ozerov <vo...@gridgain.com>
> wrote:
>
> >
> > "platform" currently refers to some non-Java integration. OSGI/Karaf are
> > not "platforms" in this terminology.
>
>
> Yep, I suspected so. So you recommend creating an "osgi-karaf" directory
> under modules/ with all Karaf-related modules?
>

Raul, if we need to have a dependency on Karaf, then you are right, we
should have ignite-karaf module. However, I would prefer to have one
integration for all OSGI containers, not just Karaf, in which case the
module would be called “ignite-osgi” and put into “osgi" folder.


>
> Regards,
>
> *Raúl Kripalani*
> PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
> Messaging Engineer
> http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
> http://blog.raulkr.net | twitter: @raulvk
>

Re: ignite-platform module

Posted by Raul Kripalani <ra...@apache.org>.
On Thu, Nov 12, 2015 at 8:24 PM, Dmitriy Setrakyan <ds...@apache.org>
wrote:

> How about renaming your module folders as following:
>
> - modules
>     |————— osgi
>     |————— osgi-karaf
>     |————— osgi-paxlogging
>

Sounds good to me!

*Raúl Kripalani*
PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
Messaging Engineer
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

Re: ignite-platform module

Posted by Raul Kripalani <ra...@apache.org>.
On Thu, Nov 12, 2015 at 8:24 PM, Dmitriy Setrakyan <ds...@apache.org>
wrote:

> Raul, following this logic, we should also group all streaming integration
> into one streaming folder and so on… My vote is to keep the structure
> consistent and flat for now, and if the community decides that grouping
> should serve us better, we will restructure the project modules in one
> step.
>

It's not the same situation. Conceptually there are no single-themed
streaming modules in Ignite. There are modules that integrate Ignite with a
given technology, where one of the elements of that integration – and
mostly the only one for now – is streaming. In other words, conceptually
speaking they are not limited to streaming even if streaming is their sole
functionality for the time being.

On the other hand, everything nested under osgi would be grouped under a
single theme: OSGi.

But anyway, I don't have strong feelings for this, so let's just keep the
structure linear for now.

Regards,

*Raúl Kripalani*
PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
Messaging Engineer
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

Re: ignite-platform module

Posted by Dmitriy Setrakyan <ds...@apache.org>.
Raul, following this logic, we should also group all streaming integration
into one streaming folder and so on… My vote is to keep the structure
consistent and flat for now, and if the community decides that grouping
should serve us better, we will restructure the project modules in one step.

Now, I am not sure I agree with the module names you suggested. If you look
at the module names in Ignite, you will notice that they are all very
concise (1 word) and to the point.

How about renaming your module folders as following:

- modules
    |————— osgi
    |————— osgi-karaf
    |————— osgi-paxlogging

D.

On Thu, Nov 12, 2015 at 12:11 PM, Raul Kripalani <ra...@apache.org> wrote:

> On Thu, Nov 12, 2015 at 5:23 PM, Dmitriy Setrakyan <ds...@apache.org>
> wrote:
>
> > Vladimir, I think it is unclear how one approach is better than the other
> > apart from just being different. I would avoid undertaking this type of
> > restructuring unless we have a really compelling reason.
> >
>
> I need three modules for OSGi:
>
> * ignite-osgi-support => provides an IgniteOsgiHelper in a manner similar
> to IgniteSpringHelper.
> * ignite-osgi-karaf-features => a Maven module of POM packaging which
> simply provides a features.xml for quick installation in Karaf.
> * ignite-osgi-paxlogging-fragment => a fragment for Pax Logging that
> exposes the extra packages from log4j that Ignite uses
> (o.a.log4j.[varia/xml]).
>
> It would clutter the modules folder to have them at that level. So I
> suggest:
>
> modules
>      |---------- osgi
>                       |--------- support
>                       |--------- karaf-features
>                       |--------- paxlogging-fragment
>
> Regards,
>
> *Raúl Kripalani*
> PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
> Messaging Engineer
> http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
> http://blog.raulkr.net | twitter: @raulvk
>

Re: ignite-platform module

Posted by Raul Kripalani <ra...@apache.org>.
On Thu, Nov 12, 2015 at 5:23 PM, Dmitriy Setrakyan <ds...@apache.org>
wrote:

> Vladimir, I think it is unclear how one approach is better than the other
> apart from just being different. I would avoid undertaking this type of
> restructuring unless we have a really compelling reason.
>

I need three modules for OSGi:

* ignite-osgi-support => provides an IgniteOsgiHelper in a manner similar
to IgniteSpringHelper.
* ignite-osgi-karaf-features => a Maven module of POM packaging which
simply provides a features.xml for quick installation in Karaf.
* ignite-osgi-paxlogging-fragment => a fragment for Pax Logging that
exposes the extra packages from log4j that Ignite uses
(o.a.log4j.[varia/xml]).

It would clutter the modules folder to have them at that level. So I
suggest:

modules
     |---------- osgi
                      |--------- support
                      |--------- karaf-features
                      |--------- paxlogging-fragment

Regards,

*Raúl Kripalani*
PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
Messaging Engineer
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

Re: ignite-platform module

Posted by Dmitriy Setrakyan <ds...@apache.org>.
On Thu, Nov 12, 2015 at 5:51 AM, Vladimir Ozerov <vo...@gridgain.com>
wrote:

>
> If you follow this rule, you will place each module directly unders
> "modules". But may be it makes sense to rethink this approach and group
> realted modules under a single subdirectory: modules/[feature_name].
>

Vladimir, I think it is unclear how one approach is better than the other
apart from just being different. I would avoid undertaking this type of
restructuring unless we have a really compelling reason.


>
> Vladimir.
>
>

Re: ignite-platform module

Posted by Vladimir Ozerov <vo...@gridgain.com>.
I do not keep track on OSGI integration efforts, so I am afraid I cannot
advise anything here.

Normally each folder inside "modules" corresponds to a single Java project
with some isolated feature. E.g. we have several logging modules: log4j,
log4j2, slf4j. They are very similar to each other, but located as:
-- modules/log4j
-- modules/log4j2
-- modules/slf4j

not as
-- modules/logging/log4j
-- modules/logging/log4j2
-- modules/logging/slf4j

If you follow this rule, you will place each module directly unders
"modules". But may be it makes sense to rethink this approach and group
realted modules under a single subdirectory: modules/[feature_name].

Vladimir.

On Thu, Nov 12, 2015 at 4:37 PM, Raul Kripalani <ra...@apache.org> wrote:

> On Thu, Nov 12, 2015 at 12:58 PM, Vladimir Ozerov <vo...@gridgain.com>
> wrote:
>
> >
> > "platform" currently refers to some non-Java integration. OSGI/Karaf are
> > not "platforms" in this terminology.
>
>
> Yep, I suspected so. So you recommend creating an "osgi-karaf" directory
> under modules/ with all Karaf-related modules?
>
> Regards,
>
> *Raúl Kripalani*
> PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
> Messaging Engineer
> http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
> http://blog.raulkr.net | twitter: @raulvk
>

Re: ignite-platform module

Posted by Raul Kripalani <ra...@apache.org>.
On Thu, Nov 12, 2015 at 12:58 PM, Vladimir Ozerov <vo...@gridgain.com>
wrote:

>
> "platform" currently refers to some non-Java integration. OSGI/Karaf are
> not "platforms" in this terminology.


Yep, I suspected so. So you recommend creating an "osgi-karaf" directory
under modules/ with all Karaf-related modules?

Regards,

*Raúl Kripalani*
PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
Messaging Engineer
http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
http://blog.raulkr.net | twitter: @raulvk

Re: ignite-platform module

Posted by Vladimir Ozerov <vo...@gridgain.com>.
Raul,

"platform" currently refers to some non-Java integration. OSGI/Karaf are
not "platforms" in this terminology.

On Thu, Nov 12, 2015 at 3:22 PM, Raul Kripalani <ra...@apache.org> wrote:

> Hello,
>
> Currently we have a single ignite-platform module aggregating all sources
> for .NET and CPP integration.
>
> For the OSGi integration I'm working on, I need to add two modules to the
> Ignite codebase to facilitate deploying Ignite on top of Apache Karaf (OSGi
> container).
>
> One can regard Apache Karaf as another platform, so semantically it feels
> natural is to nest these modules under platform/karaf.
>
> However, this would require some refactoring so that platform can contain
> modules:
>
> platform
>    |---------dotnet
>    |---------java
>    |---------cpp
>    |---------pom.xml
>
> What do you think?
>
> Regards,
>
> *Raúl Kripalani*
> PMC & Committer @ Apache Ignite, Apache Camel | Integration, Big Data and
> Messaging Engineer
> http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani
> http://blog.raulkr.net | twitter: @raulvk
>