<div dir="ltr"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; Hibernate OGM should define an interface which is appropriate for its</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">own consumption; the Wildfly NoSQL subssystem can have its own</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">interface so to not depend on OGM, but they would be somewhat similar</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">for each given NoSQL technology we intend to support in this way.</span><br style="color:rgb(0,0,0);font-size:12.8px"><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">Then JipiJapa can inject an adaptor into the OGM boostrap phase,</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">delegating from one to the other. So only the OGM specific JipiJapa</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">module would need to depend on both interfaces.</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">If this dependency is not desirable either, then I think we can live</span><br style="color:rgb(0,0,0);font-size:12.8px"><span style="color:rgb(0,0,0);font-size:12.8px">&gt; </span><span style="color:rgb(0,0,0);font-size:12.8px">with a non-typesafe generic provider of things.</span><br style="color:rgb(0,0,0);font-size:12.8px"><div><span style="color:rgb(0,0,0);font-size:12.8px"><br></span></div><div><span style="color:rgb(0,0,0);font-size:12.8px">+1</span></div><div><span style="color:rgb(0,0,0);font-size:12.8px">This looks like a nice trade-off.</span></div><div>It will allow us to create a POC that can eventually evolve into a separate project.</div><div><span style="color:rgb(0,0,0);font-size:12.8px"><br></span></div><div><span style="color:rgb(0,0,0);font-size:12.8px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, May 12, 2016 at 1:41 PM, Sanne Grinovero <span dir="ltr">&lt;<a href="mailto:sanne@hibernate.org" target="_blank">sanne@hibernate.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 12 May 2016 at 12:24, Emmanuel Bernard &lt;<a href="mailto:emmanuel@hibernate.org">emmanuel@hibernate.org</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt; On 11 mai 2016, at 16:02, Scott Marlow &lt;<a href="mailto:smarlow@redhat.com">smarlow@redhat.com</a>&gt; wrote:<br>
&gt;<br>
&gt;&gt;&gt; Hibernate OGM should still be usable without WF; So maybe there should<br>
&gt;&gt;&gt; be a separate project/repo which defines an SPI to obtain/manage<br>
&gt;&gt;&gt; connections and implementations for different NoSQL stores?<br>
&gt;&gt;<br>
&gt;&gt; Excellent suggestion,  perhaps the SPI could be under<br>
&gt;&gt; <a href="https://github.com/jboss" rel="noreferrer" target="_blank">https://github.com/jboss</a>, which is a common area for sharing.  Possible<br>
&gt;&gt; locations for creating the per NoSQL store implementations could be<br>
&gt;&gt; <a href="https://github.com/jboss" rel="noreferrer" target="_blank">https://github.com/jboss</a> or <a href="https://github.com/hibernate" rel="noreferrer" target="_blank">https://github.com/hibernate</a> or<br>
&gt;&gt; <a href="https://github.com/wildfly" rel="noreferrer" target="_blank">https://github.com/wildfly</a>.<br>
&gt;<br>
&gt; I&#39;m starting to think that this might be way overkill. If we are creating a sub project just to share between 20 and 50 lines of code per provider and the overhead code to abstract property configuration to plus OGM and WF ones, we are losing more than gaining.<br>
&gt;<br>
&gt; Thoughts ?<br>
<br>
</span>I agree it&#39;s overkill, and have an alternative proposal:<br>
<br>
Hibernate OGM should define an interface which is appropriate for its<br>
own consumption; the Wildfly NoSQL subssystem can have its own<br>
interface so to not depend on OGM, but they would be somewhat similar<br>
for each given NoSQL technology we intend to support in this way.<br>
<br>
Then JipiJapa can inject an adaptor into the OGM boostrap phase,<br>
delegating from one to the other. So only the OGM specific JipiJapa<br>
module would need to depend on both interfaces.<br>
If this dependency is not desirable either, then I think we can live<br>
with a non-typesafe generic provider of things.<br>
<br>
Thanks,<br>
Sanne<br>
<div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
wildfly-dev mailing list<br>
<a href="mailto:wildfly-dev@lists.jboss.org">wildfly-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/wildfly-dev" rel="noreferrer" target="_blank">https://lists.jboss.org/mailman/listinfo/wildfly-dev</a><br>
</div></div></blockquote></div><br></div>