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

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

Commit e7f97df59ccbb0c996dcd53e5626f67a53a0b0a5 in branch refs/heads/master 
from [~danhaywood]
[ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=e7f97df ]

ISIS-648, ISIS-652, ISIS-653, ISIS-655: bulk actions, request scoped services

ISIS-652: @RequestScoped services
- CDI 1.0 now a dependency of applib (for the @RequestScoped annotation)
- javassist is now a dependency of runtime
- ServiceInitializer, create javassist proxy for request-scoped services/beans
  (delegates to threadlocal held within the proxy)
- functionality in JavassistClassSubstitor now moved into core 
(ClassSubstitutorAbstract) so that
  ObjectSpecifications for @RequestScoped services are automatically setup 
correctly
  (the synthetic methods etc are disregarded)
- old JavassistClassSubstitor in core-bytecode-javassist now marked as 
deprecated
- PersistenceSession#open automatically initializes all request-scoped services 
(by downcasting to RequestScopedService and
  calling __isis_startRequest), and #close() similarly tidies up (by calling to 
__isis_endRequest)
- UserProfileLoaderDefault, when creating the UserProfile object, excludes any 
request-scoped services

ISIS-648, ISIS-655: enhanced bulk update support
- @Bulk#appliesTo property - whether to render action *only* as bulk
  - updates to EntityActionUtil to suppress in UI
- Bulk.InteractionContext#invokedAs added, to tell object whether the action 
called as a bulk or regular
- change in behaviour when invoking bulk actions, navigate to return value of 
action of last object called (if not null)
- ActionResultResponseType (etc) factored out for common handling of results 
from either
  regular actions or bulk actions

ISIS-655, refactored bulk interaction context
- Bulk.InteractionContext is now a request scoped service
  - deprecated the old threadlocal current
  - PersistenceSession#open copies over the service to the threadlocal
- deprecated Bulk.InteractionContext#with(...) methods
  - no longer required, so throw an explanatory exception (yes, this is a tiny 
breaking change...)

ISIS-653, Scratchpad @RequestScoped service
- Scratchpad service to get and set userdata, added to applib
  - allows apps to pass contextual information from one object's action to next
- TodoItem updated to demonstrate usage


> Provide a "Scratchpad" request-scoped service, as a way of passing arbitrary 
> user data from one place to another.  One use case is to coordinate the 
> response of bulk actions.
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ISIS-653
>                 URL: https://issues.apache.org/jira/browse/ISIS-653
>             Project: Isis
>          Issue Type: New Feature
>          Components: Archetype: Simple WRJ, Archetype: ToDoApp WRJ, Core
>    Affects Versions: archetype-simple-wrj-1.3.1, 
> archtype-quickstart-wrj-1.3.1, core-1.3.0
>            Reporter: Dan Haywood
>            Assignee: Dan Haywood
>             Fix For: core-1.4.0
>
>
> This builds on ISIS-652 (request scoped).  The Scratchpad service itself is 
> basically a wrapper around Map, with signature:
> get(Object key)
> put(Object key, Object value)
> clear(Object key)



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to