Hi Devs,
I'm not a contributor but I think option 3 would be a mistake - it will
contribute to poor separation of concerns through obfuscation. Option 1 is the
best choice of the three presented.
Regards,David.
On Tuesday, 30 December 2014 4:13 AM, Dan Haywood
<[email protected]> wrote:
OK, so it comes down to either:
option 1:
@DomainEntity(persistence=JDO|EXTERNAL)@ViewModel
with
@DomainEntityLayout@ViewModelLayout
where:* is symmetrical* some attributes of @DomainEntity don't apply if
persistence=EXTERNAL* the two layouts are basically identical to each other
--- or ---
option 2:
@DomainEntity(persistence=JDO|EXTERNAL)@ViewModel
with
@DomainObjectLayout
where:* not symmetrical* some attributes of @DomainEntity don't apply if
persistence=EXTERNAL
--- or ---
option 3:
@DomainObject(persistence=JDO|EXTERNAL|VIEW_MODEL)
with
@DomainObjectLayout
where:* is symmetrical* some attributes of @DomainEntity don't apply if
persistence=EXTERNAL or VIEW_MODEL* concept of view model is less visible
Cast your votes, please!
Dan
On 29 December 2014 at 15:02, GESCONSULTOR - Óscar Bou <[email protected]>
wrote:
As currently there's no "special" support for AggregateRoots or
ValueObjects, no more annotations are needed.
Sounds like a vote to deprecate. Jeroen has said the same thing. Perhaps
they should be deleted in v2.0 and reappear, if we want them back, in v3.0.
I agree with Jeroen.
Currently there's nothing specific about Aggregate Roots on Apache Isis, at
least on the most used modules, AFAK.
* replace @DomainObject(viewModel=false) with
@DomainEntity(persistence=JDO)
... this would be the default
I like it :)
* replace @DomainObject(viewModel=true) with
@DomainEntity(persistence=EXTERNAL)
This one also!
... for view models representing externally-persisted entities. In the
Javadoc, say that auditing, publishing and bounded are not supported for
these
* keep @ViewModel
... extend to include the non-entity stuff from @DomainObject that does
apply (basically, I think that's just "objectType" )
... the intention being that this is used for application-layer views.
I agree. It should be kept for those use cases.
keep @DomainObjectLayout, because everything in it applies equally to both
view models (either variety) and JDO entities.
Mmmmm.... I would prefer to keep symmetry... I know it introduces some
redundant checks on implementation but, from the user's perspective, is a
clearer model ...
I'll reply on your points on @Property and @Parameter separately.
Thx
Dan
Óscar Bou Bou
Responsable de Producto
Auditor Jefe de Certificación ISO 27001 en BSI
CISA, CRISC, APMG ISO 20000, ITIL-F
902 900 231 / 620 267 520
http://www.twitter.com/oscarbou
http://es.linkedin.com/in/oscarbou
http://www.GesConsultor.com
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
Gesdatos Software, 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: Gesdatos Software, S.L. ,
Paseo de la Castellana, 153 bajo - 28046 (Madrid), y Avda. Cortes Valencianas
num. 50, 1ºC - 46015 (Valencia). Asimismo, es su responsabilidad comprobar que
este mensaje o sus archivos adjuntos no contengan virus informáticos, y en caso
que los tuvieran eliminarlos.