[ 
https://issues.apache.org/jira/browse/ISIS-2774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17410382#comment-17410382
 ] 

ASF subversion and git services commented on ISIS-2774:
-------------------------------------------------------

Commit 5f095e124ba7ca4e82fa666ee4c1ea96ca98706d in isis's branch 
refs/heads/master from Andi Huber
[ https://gitbox.apache.org/repos/asf?p=isis.git;h=5f095e1 ]

ISIS-2774: introduces ImperativeAspect

in preparation to later support ImperativeFacets to directly access
fields

> Allow members (and their supporting methods) to have non-public visibility.  
> Allow properties/collections to have no getters & setters, or non-public 
> getters and setters.
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISIS-2774
>                 URL: https://issues.apache.org/jira/browse/ISIS-2774
>             Project: Isis
>          Issue Type: Improvement
>          Components: Isis Core
>    Affects Versions: 2.0.0-M5
>            Reporter: Daniel Keir Haywood
>            Assignee: Andi Huber
>            Priority: Major
>             Fix For: 2.0.0-M7
>
>
> See also ISIS-2782, which is closely related.  And discussion at 
> https://the-asf.slack.com/archives/CFC42LWBV/p1625205578149000?thread_ts=1624911448.097500&cid=CFC42LWBV
>  
> ~~~~~~
> Rationale here is: encapsulation, "tell not ask".
> Thus:
>  * Our definition of a property or collection should be _either_ with a 
> publicly available getter or setter, or a field annotated with @Property or 
> @Collection.
>  * Our definition of an action should be _either_ a publicly available method 
> (if explicit actions config property not set), _or_ a method with any 
> visibility and annotated with @Action.
>  * Our definition of a supporting method is either one with public visibility 
> or with some other visibility but annotated with @MemberSupport.
> See this blog 
> [https://thorben-janssen.com/access-strategies-in-jpa-and-hibernate/] for 
> reasons as to why field-level annotations are also recommended for ORMs (JPA 
> in this case).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to