You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Alexey Kuznetsov <ak...@gridgain.com> on 2015/04/13 11:34:41 UTC

Re: Ignite custom Spring XML schema

How about to use Spring *"http://www.springframework.org/schema/p
<http://www.springframework.org/schema/p>"* ?

With this schema XML will be like this:

<bean class="org.apache.ignite.configuration.CacheConfiguration"
      p:name="test-cache"
      p:backups="1"
      p:cacheMode="PARTITIONED"
      p:atomicityMode="ATOMIC"
      p:preloadMode="SYNC"
      p:startSize="3000000">

Thoughts?


On Thu, Mar 26, 2015 at 6:15 AM, Konstantin Boudnik <co...@apache.org> wrote:

> I will harp once again on the beauty of DSLs ;)
>
> On Wed, Mar 25, 2015 at 11:21AM, Vladimir Ozerov wrote:
> > This is important question. As far as I know none of our competitors use
> > plain Spring XMLs. Disadvantage of this approach is that users have to
> > learn new synthax for configuration.
> >
> > But on the other hand this gives us independency of Spring format. It is
> > very important from interoperability point of view. For instance,
> currently
> > in GridGain .Net client we can do nothing with Spring XML configuration:
> we
> > cannot load it, modify it, pass object model to Java, etc.. Therefore, we
> > cannot take advantage of new dynamic cache start without introducing
> > boilerplate code responsible for marshalling .Net cache config data model
> > to bytes and unmarshalling it to Java data model in JVM. Also, our
> further
> > non-Java users will have to learn Spring format which can be very
> uncommon
> > for their platform and environment.
> > I believe we will face lots of such problems when developing open-source
> > integration with other platforms.
> >
> > So, I -1 for customSpring XML schemas, but +1 for thinking about new
> > completely independent XML schema _in_addition_ to current Spring
> features.
> >
> > On Wed, Mar 25, 2015 at 11:02 AM, Sergi Vladykin <
> sergi.vladykin@gmail.com>
> > wrote:
> >
> > > -1
> > >
> > > Agree with Dmitriy.
> > >
> > > Sergi
> > >
> > > 2015-03-25 10:05 GMT+03:00 Dmitriy Setrakyan <ds...@apache.org>:
> > >
> > > > -1
> > > >
> > > > I don't agree from usability standpoint. I like our default Spring
> config
> > > > syntax because it does not require learning of our XML syntax. The
> less
> > > > user has to learn, the better.
> > > >
> > > > D.
> > > >
> > > > On Tue, Mar 24, 2015 at 11:44 PM, Alexey Goncharuk <
> > > agoncharuk@apache.org>
> > > > wrote:
> > > >
> > > > > +1. Totally agree with Alexey on this idea.
> > > > >
> > > > > 2015-03-24 20:45 GMT-07:00 Alexey Kuznetsov <
> akuznetsov@gridgain.com>:
> > > > >
> > > > > > Hi!
> > > > > >
> > > > > > What do you think about creating custom Spring XML schema?
> > > > > >
> > > > > > For example Spring AMQP has its own schema that looks like:
> > > > > >
> > > > > > <rabbit:connection-factory id="connectionFactory" />
> > > > > >
> > > > > > <rabbit:template id="amqpTemplate"
> > > > connection-factory="connectionFactory"
> > > > > >     exchange="myExchange" routing-key="foo.bar"/>
> > > > > >
> > > > > > <rabbit:admin connection-factory="connectionFactory" />
> > > > > >
> > > > > > <rabbit:queue name="myQueue" />
> > > > > >
> > > > > > <rabbit:topic-exchange name="myExchange">
> > > > > >     <rabbit:bindings>
> > > > > >         <rabbit:binding queue="myQueue" pattern="foo.*" />
> > > > > >     </rabbit:bindings>
> > > > > > </rabbit:topic-exchange>
> > > > > >
> > > > > > We could have something similar for Ignite. That will make Ignite
> > > > Spring
> > > > > > XML configs much smaller.
> > > > > > No need to use full class names.
> > > > > >
> > > > > > Thoughts?
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Alexey Kuznetsov
> > > > > > GridGain Systems
> > > > > > www.gridgain.com
> > > > > >
> > > > >
> > > >
> > >
>



-- 
Alexey Kuznetsov
GridGain Systems
www.gridgain.com

Re: Ignite custom Spring XML schema

Posted by Alexey Kuznetsov <ak...@gridgain.com>.
Yes, it is standard Spring.

On Thu, Apr 16, 2015 at 12:16 PM, Dmitriy Setrakyan <ds...@apache.org>
wrote:

> From what I can tell, this is standard Spring. No changes required to
> Ignite, right?
>
> On Wed, Apr 15, 2015 at 11:59 PM, Konstantin Boudnik <co...@apache.org>
> wrote:
>
> > It seems way cleaner! And considering that a DSL will require some extra
> > work
> > to work on the language and create the builder classes - perhaps going
> your
> > way would be more efficient.
> >
> > Thanks!
> >   Cos
> >
> > On Mon, Apr 13, 2015 at 04:34PM, Alexey Kuznetsov wrote:
> > > How about to use Spring *"http://www.springframework.org/schema/p
> > > <http://www.springframework.org/schema/p>"* ?
> > >
> > > With this schema XML will be like this:
> > >
> > > <bean class="org.apache.ignite.configuration.CacheConfiguration"
> > >       p:name="test-cache"
> > >       p:backups="1"
> > >       p:cacheMode="PARTITIONED"
> > >       p:atomicityMode="ATOMIC"
> > >       p:preloadMode="SYNC"
> > >       p:startSize="3000000">
> > >
> > > Thoughts?
> > >
> > >
> > > On Thu, Mar 26, 2015 at 6:15 AM, Konstantin Boudnik <co...@apache.org>
> > wrote:
> > >
> > > > I will harp once again on the beauty of DSLs ;)
> > > >
> > > > On Wed, Mar 25, 2015 at 11:21AM, Vladimir Ozerov wrote:
> > > > > This is important question. As far as I know none of our
> competitors
> > use
> > > > > plain Spring XMLs. Disadvantage of this approach is that users have
> > to
> > > > > learn new synthax for configuration.
> > > > >
> > > > > But on the other hand this gives us independency of Spring format.
> > It is
> > > > > very important from interoperability point of view. For instance,
> > > > currently
> > > > > in GridGain .Net client we can do nothing with Spring XML
> > configuration:
> > > > we
> > > > > cannot load it, modify it, pass object model to Java, etc..
> > Therefore, we
> > > > > cannot take advantage of new dynamic cache start without
> introducing
> > > > > boilerplate code responsible for marshalling .Net cache config data
> > model
> > > > > to bytes and unmarshalling it to Java data model in JVM. Also, our
> > > > further
> > > > > non-Java users will have to learn Spring format which can be very
> > > > uncommon
> > > > > for their platform and environment.
> > > > > I believe we will face lots of such problems when developing
> > open-source
> > > > > integration with other platforms.
> > > > >
> > > > > So, I -1 for customSpring XML schemas, but +1 for thinking about
> new
> > > > > completely independent XML schema _in_addition_ to current Spring
> > > > features.
> > > > >
> > > > > On Wed, Mar 25, 2015 at 11:02 AM, Sergi Vladykin <
> > > > sergi.vladykin@gmail.com>
> > > > > wrote:
> > > > >
> > > > > > -1
> > > > > >
> > > > > > Agree with Dmitriy.
> > > > > >
> > > > > > Sergi
> > > > > >
> > > > > > 2015-03-25 10:05 GMT+03:00 Dmitriy Setrakyan <
> > dsetrakyan@apache.org>:
> > > > > >
> > > > > > > -1
> > > > > > >
> > > > > > > I don't agree from usability standpoint. I like our default
> > Spring
> > > > config
> > > > > > > syntax because it does not require learning of our XML syntax.
> > The
> > > > less
> > > > > > > user has to learn, the better.
> > > > > > >
> > > > > > > D.
> > > > > > >
> > > > > > > On Tue, Mar 24, 2015 at 11:44 PM, Alexey Goncharuk <
> > > > > > agoncharuk@apache.org>
> > > > > > > wrote:
> > > > > > >
> > > > > > > > +1. Totally agree with Alexey on this idea.
> > > > > > > >
> > > > > > > > 2015-03-24 20:45 GMT-07:00 Alexey Kuznetsov <
> > > > akuznetsov@gridgain.com>:
> > > > > > > >
> > > > > > > > > Hi!
> > > > > > > > >
> > > > > > > > > What do you think about creating custom Spring XML schema?
> > > > > > > > >
> > > > > > > > > For example Spring AMQP has its own schema that looks like:
> > > > > > > > >
> > > > > > > > > <rabbit:connection-factory id="connectionFactory" />
> > > > > > > > >
> > > > > > > > > <rabbit:template id="amqpTemplate"
> > > > > > > connection-factory="connectionFactory"
> > > > > > > > >     exchange="myExchange" routing-key="foo.bar"/>
> > > > > > > > >
> > > > > > > > > <rabbit:admin connection-factory="connectionFactory" />
> > > > > > > > >
> > > > > > > > > <rabbit:queue name="myQueue" />
> > > > > > > > >
> > > > > > > > > <rabbit:topic-exchange name="myExchange">
> > > > > > > > >     <rabbit:bindings>
> > > > > > > > >         <rabbit:binding queue="myQueue" pattern="foo.*" />
> > > > > > > > >     </rabbit:bindings>
> > > > > > > > > </rabbit:topic-exchange>
> > > > > > > > >
> > > > > > > > > We could have something similar for Ignite. That will make
> > Ignite
> > > > > > > Spring
> > > > > > > > > XML configs much smaller.
> > > > > > > > > No need to use full class names.
> > > > > > > > >
> > > > > > > > > Thoughts?
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > --
> > > > > > > > > Alexey Kuznetsov
> > > > > > > > > GridGain Systems
> > > > > > > > > www.gridgain.com
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Alexey Kuznetsov
> > > GridGain Systems
> > > www.gridgain.com
> >
>



-- 
Alexey Kuznetsov
GridGain Systems
www.gridgain.com

Re: Ignite custom Spring XML schema

Posted by Dmitriy Setrakyan <ds...@apache.org>.
>From what I can tell, this is standard Spring. No changes required to
Ignite, right?

On Wed, Apr 15, 2015 at 11:59 PM, Konstantin Boudnik <co...@apache.org> wrote:

> It seems way cleaner! And considering that a DSL will require some extra
> work
> to work on the language and create the builder classes - perhaps going your
> way would be more efficient.
>
> Thanks!
>   Cos
>
> On Mon, Apr 13, 2015 at 04:34PM, Alexey Kuznetsov wrote:
> > How about to use Spring *"http://www.springframework.org/schema/p
> > <http://www.springframework.org/schema/p>"* ?
> >
> > With this schema XML will be like this:
> >
> > <bean class="org.apache.ignite.configuration.CacheConfiguration"
> >       p:name="test-cache"
> >       p:backups="1"
> >       p:cacheMode="PARTITIONED"
> >       p:atomicityMode="ATOMIC"
> >       p:preloadMode="SYNC"
> >       p:startSize="3000000">
> >
> > Thoughts?
> >
> >
> > On Thu, Mar 26, 2015 at 6:15 AM, Konstantin Boudnik <co...@apache.org>
> wrote:
> >
> > > I will harp once again on the beauty of DSLs ;)
> > >
> > > On Wed, Mar 25, 2015 at 11:21AM, Vladimir Ozerov wrote:
> > > > This is important question. As far as I know none of our competitors
> use
> > > > plain Spring XMLs. Disadvantage of this approach is that users have
> to
> > > > learn new synthax for configuration.
> > > >
> > > > But on the other hand this gives us independency of Spring format.
> It is
> > > > very important from interoperability point of view. For instance,
> > > currently
> > > > in GridGain .Net client we can do nothing with Spring XML
> configuration:
> > > we
> > > > cannot load it, modify it, pass object model to Java, etc..
> Therefore, we
> > > > cannot take advantage of new dynamic cache start without introducing
> > > > boilerplate code responsible for marshalling .Net cache config data
> model
> > > > to bytes and unmarshalling it to Java data model in JVM. Also, our
> > > further
> > > > non-Java users will have to learn Spring format which can be very
> > > uncommon
> > > > for their platform and environment.
> > > > I believe we will face lots of such problems when developing
> open-source
> > > > integration with other platforms.
> > > >
> > > > So, I -1 for customSpring XML schemas, but +1 for thinking about new
> > > > completely independent XML schema _in_addition_ to current Spring
> > > features.
> > > >
> > > > On Wed, Mar 25, 2015 at 11:02 AM, Sergi Vladykin <
> > > sergi.vladykin@gmail.com>
> > > > wrote:
> > > >
> > > > > -1
> > > > >
> > > > > Agree with Dmitriy.
> > > > >
> > > > > Sergi
> > > > >
> > > > > 2015-03-25 10:05 GMT+03:00 Dmitriy Setrakyan <
> dsetrakyan@apache.org>:
> > > > >
> > > > > > -1
> > > > > >
> > > > > > I don't agree from usability standpoint. I like our default
> Spring
> > > config
> > > > > > syntax because it does not require learning of our XML syntax.
> The
> > > less
> > > > > > user has to learn, the better.
> > > > > >
> > > > > > D.
> > > > > >
> > > > > > On Tue, Mar 24, 2015 at 11:44 PM, Alexey Goncharuk <
> > > > > agoncharuk@apache.org>
> > > > > > wrote:
> > > > > >
> > > > > > > +1. Totally agree with Alexey on this idea.
> > > > > > >
> > > > > > > 2015-03-24 20:45 GMT-07:00 Alexey Kuznetsov <
> > > akuznetsov@gridgain.com>:
> > > > > > >
> > > > > > > > Hi!
> > > > > > > >
> > > > > > > > What do you think about creating custom Spring XML schema?
> > > > > > > >
> > > > > > > > For example Spring AMQP has its own schema that looks like:
> > > > > > > >
> > > > > > > > <rabbit:connection-factory id="connectionFactory" />
> > > > > > > >
> > > > > > > > <rabbit:template id="amqpTemplate"
> > > > > > connection-factory="connectionFactory"
> > > > > > > >     exchange="myExchange" routing-key="foo.bar"/>
> > > > > > > >
> > > > > > > > <rabbit:admin connection-factory="connectionFactory" />
> > > > > > > >
> > > > > > > > <rabbit:queue name="myQueue" />
> > > > > > > >
> > > > > > > > <rabbit:topic-exchange name="myExchange">
> > > > > > > >     <rabbit:bindings>
> > > > > > > >         <rabbit:binding queue="myQueue" pattern="foo.*" />
> > > > > > > >     </rabbit:bindings>
> > > > > > > > </rabbit:topic-exchange>
> > > > > > > >
> > > > > > > > We could have something similar for Ignite. That will make
> Ignite
> > > > > > Spring
> > > > > > > > XML configs much smaller.
> > > > > > > > No need to use full class names.
> > > > > > > >
> > > > > > > > Thoughts?
> > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > > Alexey Kuznetsov
> > > > > > > > GridGain Systems
> > > > > > > > www.gridgain.com
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > >
> >
> >
> >
> > --
> > Alexey Kuznetsov
> > GridGain Systems
> > www.gridgain.com
>

Re: Ignite custom Spring XML schema

Posted by Konstantin Boudnik <co...@apache.org>.
It seems way cleaner! And considering that a DSL will require some extra work
to work on the language and create the builder classes - perhaps going your
way would be more efficient.

Thanks!
  Cos

On Mon, Apr 13, 2015 at 04:34PM, Alexey Kuznetsov wrote:
> How about to use Spring *"http://www.springframework.org/schema/p
> <http://www.springframework.org/schema/p>"* ?
> 
> With this schema XML will be like this:
> 
> <bean class="org.apache.ignite.configuration.CacheConfiguration"
>       p:name="test-cache"
>       p:backups="1"
>       p:cacheMode="PARTITIONED"
>       p:atomicityMode="ATOMIC"
>       p:preloadMode="SYNC"
>       p:startSize="3000000">
> 
> Thoughts?
> 
> 
> On Thu, Mar 26, 2015 at 6:15 AM, Konstantin Boudnik <co...@apache.org> wrote:
> 
> > I will harp once again on the beauty of DSLs ;)
> >
> > On Wed, Mar 25, 2015 at 11:21AM, Vladimir Ozerov wrote:
> > > This is important question. As far as I know none of our competitors use
> > > plain Spring XMLs. Disadvantage of this approach is that users have to
> > > learn new synthax for configuration.
> > >
> > > But on the other hand this gives us independency of Spring format. It is
> > > very important from interoperability point of view. For instance,
> > currently
> > > in GridGain .Net client we can do nothing with Spring XML configuration:
> > we
> > > cannot load it, modify it, pass object model to Java, etc.. Therefore, we
> > > cannot take advantage of new dynamic cache start without introducing
> > > boilerplate code responsible for marshalling .Net cache config data model
> > > to bytes and unmarshalling it to Java data model in JVM. Also, our
> > further
> > > non-Java users will have to learn Spring format which can be very
> > uncommon
> > > for their platform and environment.
> > > I believe we will face lots of such problems when developing open-source
> > > integration with other platforms.
> > >
> > > So, I -1 for customSpring XML schemas, but +1 for thinking about new
> > > completely independent XML schema _in_addition_ to current Spring
> > features.
> > >
> > > On Wed, Mar 25, 2015 at 11:02 AM, Sergi Vladykin <
> > sergi.vladykin@gmail.com>
> > > wrote:
> > >
> > > > -1
> > > >
> > > > Agree with Dmitriy.
> > > >
> > > > Sergi
> > > >
> > > > 2015-03-25 10:05 GMT+03:00 Dmitriy Setrakyan <ds...@apache.org>:
> > > >
> > > > > -1
> > > > >
> > > > > I don't agree from usability standpoint. I like our default Spring
> > config
> > > > > syntax because it does not require learning of our XML syntax. The
> > less
> > > > > user has to learn, the better.
> > > > >
> > > > > D.
> > > > >
> > > > > On Tue, Mar 24, 2015 at 11:44 PM, Alexey Goncharuk <
> > > > agoncharuk@apache.org>
> > > > > wrote:
> > > > >
> > > > > > +1. Totally agree with Alexey on this idea.
> > > > > >
> > > > > > 2015-03-24 20:45 GMT-07:00 Alexey Kuznetsov <
> > akuznetsov@gridgain.com>:
> > > > > >
> > > > > > > Hi!
> > > > > > >
> > > > > > > What do you think about creating custom Spring XML schema?
> > > > > > >
> > > > > > > For example Spring AMQP has its own schema that looks like:
> > > > > > >
> > > > > > > <rabbit:connection-factory id="connectionFactory" />
> > > > > > >
> > > > > > > <rabbit:template id="amqpTemplate"
> > > > > connection-factory="connectionFactory"
> > > > > > >     exchange="myExchange" routing-key="foo.bar"/>
> > > > > > >
> > > > > > > <rabbit:admin connection-factory="connectionFactory" />
> > > > > > >
> > > > > > > <rabbit:queue name="myQueue" />
> > > > > > >
> > > > > > > <rabbit:topic-exchange name="myExchange">
> > > > > > >     <rabbit:bindings>
> > > > > > >         <rabbit:binding queue="myQueue" pattern="foo.*" />
> > > > > > >     </rabbit:bindings>
> > > > > > > </rabbit:topic-exchange>
> > > > > > >
> > > > > > > We could have something similar for Ignite. That will make Ignite
> > > > > Spring
> > > > > > > XML configs much smaller.
> > > > > > > No need to use full class names.
> > > > > > >
> > > > > > > Thoughts?
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Alexey Kuznetsov
> > > > > > > GridGain Systems
> > > > > > > www.gridgain.com
> > > > > > >
> > > > > >
> > > > >
> > > >
> >
> 
> 
> 
> -- 
> Alexey Kuznetsov
> GridGain Systems
> www.gridgain.com