Yes ..!!!  xD xD xD 

Just planning to explore Boot and Play, and missing my beloved Domain metamodel 
!!!

If you want to guide me I’ll be more than delighted ;)


Martin seems to be actively working with Boot currently also. 

@Martin
Any comments about what could we used this with Boot?


Thanks!



> El 1 feb 2017, a las 10:47, Dan Haywood <[email protected]> 
> escribió:
> 
> When you say "let's", are you volunteering? :-)  I'd like to see the output 
> of this.
> 
> I've just committed to do a mini-book for InfoQ over the next few months; I 
> could see that this would make a nice topic to include?
> 
> D
> 
> On Wed, 1 Feb 2017 at 09:30 Óscar Bou - GOVERTIS <[email protected] 
> <mailto:[email protected]>> wrote:
> Hi Dan,
> 
> Thanks for pointing me there.
> 
> It would be really nice to have all metamodel info. available on Spring Boot, 
> for example.
> 
> The Services Injector, in your taxonomy, should correspond to the runtime, so 
> it should be a responsibility of Spring Boot.
> If Isis need it for its own runtime, a Spring-based implementation would be 
> needed.
> 
> But I was just trying to know if it would be possible to have a Domain 
> Metamodel, and seems feasible.
> 
> Let’s explore it.
> 
> Thanks!
> 
> 
> 
>> El 1 feb 2017, a las 1:04, Dan Haywood <[email protected] 
>> <mailto:[email protected]>> escribió:
>> 
>> Hi Oscar,
>> 
>> One can think of the framework as breaking into two:
>> - the metamodel  ... Isis' reflection stuff, cf java.lang.Class
>> - the runtime  ... Isis' object mgmt stuff, leaning heavily on
>> JDO/DataNucleus, cf java.lang.Object.
>> 
>> The metamodel piece is relatively decoupled from the runtime piece, so it
>> should be fairly easy to embed it.
>> 
>> In IsisMojoAbstract - the superclass for the maven plugin goals - you'll
>> see the code:
>> 
>>        final AppManifest manifest =
>> InstanceUtil.createInstance(this.appManifest, AppManifest.class);
>> 
>>        final IsisSessionFactoryBuilder isisSessionFactoryBuilder = new
>> IsisSessionFactoryBuilder(manifest);
>>        IsisSessionFactory isisSessionFactory =
>> isisSessionFactoryBuilder.buildSessionFactory();
>> 
>> from which you can call:
>> 
>>        final SpecificationLoader specificationLoader =
>> isisSessionFactory.getSpecificationLoader();
>>        final ServicesInjector servicesInjector =
>> isisSessionFactory.getServicesInjector();
>> 
>> The SpecificationLoader is the internal (private) API to the entire
>> metamodel.
>> 
>> The ServicesInjector can be used to inject services into any arbitrary
>> object (annotated with @javax.inject.Inject).  One caveat: some services
>> are implemented by the runtime, which probably won't be available.
>> 
>> These are all basically singletons.
>> 
>> Probably the easiest thing to do is to write a simple servlet or Spring
>> boot app, then embed the above code somewhere in the bootstrapping, and see
>> how you get on.
>> 
>> HTH
>> Dan
>> 
>> 
>> 
>> On Thu, 19 Jan 2017 at 11:45 Óscar Bou - GOVERTIS <[email protected] 
>> <mailto:[email protected]>>
>> wrote:
>> 
>>> 
>>> Hi all.
>>> 
>>> I’m sure the Isis Domain meta-model can add a lot of value to Domains
>>> developed in another frameworks.
>>> 
>>> It’s different from reflection in the way it allows you to determine, for
>>> example:
>>> - which public methods are effectively domain actions.
>>> - which Java properties should be considered “Domain” properties.
>>> - which actions or properties are available depending on the business
>>> logic.
>>> - etc.
>>> 
>>> And all that with the ability to properly test it.
>>> 
>>> Over that, we’ve built the Wicket viewer, the RESTful Objects viewer, the
>>> JDO-based persistence, the custom injection mechanism, …
>>> 
>>> But I’m pretty sure it could be really useful when using other
>>> platforms/frameworks.
>>> 
>>> Do you agree?
>>> 
>>> How should we quantify the tasks and effort?
>>> 
>>> 
>>> Cheers,
>>> 
>>> Oscar
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
> 
> 
> 
> Óscar Bou Bou
> Socio - IT & GRC Management Services Director
> m: +34 620 267 520 <tel:+34%20620%2026%2075%2020>
> s:  <http://www.govertis.com/>www.govertis.com <http://www.govertis.com/> e: 
> [email protected] <mailto:[email protected]>
> 
> LinkedIn: https://www.linkedin.com/in/oscarbou 
> <https://www.linkedin.com/in/oscarbou>
> Twitter:      @oscarbou <https://twitter.com/oscarbou>
> 
> 
> 
> Este mensaje y los ficheros anexos son confidenciales. Los mismos contienen 
> información reservada que no puede ser difundida. Si usted ha recibido este 
> correo por error, tenga la amabilidad de eliminarlo de su sistema y avisar al 
> remitente mediante reenvío a su dirección electrónica; no deberá copiar el 
> mensaje ni divulgar su contenido a ninguna persona.
> 
> Su dirección de correo electrónico junto a sus datos personales constan en un 
> fichero titularidad de GOVERTIS ADVISORY SERVICES, S.L. cuya finalidad es la 
> de mantener el contacto con Ud. Si quiere saber de qué información disponemos 
> de Ud., modificarla, y en su caso, cancelarla, puede hacerlo enviando un 
> escrito al efecto, acompañado de una fotocopia de su D.N.I. a la siguiente 
> dirección: GOVERTIS ADVISORY SERVICES, S.L. Avda Cortes Valencianas, 58 – 8º 
> - 6ª. 46015 - Valencia,  y Paseo de la Castellana, 153, 28045 - MADRID. 
> Asimismo, es su responsabilidad comprobar que este mensaje o sus archivos 
> adjuntos no contengan virus informáticos, y en caso que los tuvieran 
> eliminarlos.
> 
> 

Reply via email to