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]> 
> 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]>
> 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
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