You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@syncope.apache.org by "Francesco Chicchiriccò (JIRA)" <ji...@apache.org> on 2013/12/02 17:49:36 UTC

[jira] [Updated] (SYNCOPE-429) Support ETag-based conditional requests for users and roles

     [ https://issues.apache.org/jira/browse/SYNCOPE-429?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Francesco Chicchiriccò updated SYNCOPE-429:
-------------------------------------------

    Summary: Support ETag-based conditional requests for users and roles  (was: Support ETag-based conditional requests for users, roles and resources)

> Support ETag-based conditional requests for users and roles
> -----------------------------------------------------------
>
>                 Key: SYNCOPE-429
>                 URL: https://issues.apache.org/jira/browse/SYNCOPE-429
>             Project: Syncope
>          Issue Type: Improvement
>            Reporter: Francesco Chicchiriccò
>            Assignee: Francesco Chicchiriccò
>              Labels: rest
>             Fix For: 1.2.0
>
>
> SYNCOPE-15 introduced 'lastChangeDate' and 'creationDate' fields on some entities (namely SyncopeUser, SyncopeRole and ExternalResource); such information is then transferred to matching TO (e.g. UserTO, RoleTO and ResourceTO).
> This means that the respective services (UserService, RoleService and ResourceService) could be enhanced in the following way:
>  1. add ETag response header to any method - directly or indirectly via Response.Entity - generated from creationDate's or lastChangeDate's value
>  2. implement some "conditional GET" logic: depending on the value of If-* request HTTP headers, a value (HTTP status 200) or no value (HTTP status 204) will be returned
>  3. with the same idea, implement some "conditional POST/PUT" logic for update: an effective update request will be effectively accepted only if provided ETag matches the latest modification currently available



--
This message was sent by Atlassian JIRA
(v6.1#6144)