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

Francesco Chicchiriccò commented on SYNCOPE-420:
------------------------------------------------

I am going to implement such feature differently in 1_1_X and trunk due to 
general constraint of not changing the internal storage schema on maintenance 
releases (as 1.1.5).

Basically, in 1_1_X I am going to create three different interfaces with 
methods for processing attribute values *before* being
 # _saved_ into the internal storage (as consequence of user or role create / 
update)
 # _propagated_ to external resources
 # _synchronized_ from external resources

The core logic will expect to find implementations of such interfaces 
statically declared as Spring bean (in one of available XML files).

The trunk implementation will extend this by providing some more configuration 
options - available via admin console as well - in order to make everything 
similar to the way how [attribute 
validators|https://cwiki.apache.org/confluence/display/SYNCOPE/AttributeValidatorClass],
 
[PropagationActions|https://cwiki.apache.org/confluence/display/SYNCOPE/PropagationActionsClass],
 
[SyncActions|https://cwiki.apache.org/confluence/display/SYNCOPE/SyncActionsClass]:
 implementations will then be configurable for each attribute schema / external 
resource / synchronization task and dynamically loaded.

> Provide an attribute value pre-processing mechanism
> ---------------------------------------------------
>
>                 Key: SYNCOPE-420
>                 URL: https://issues.apache.org/jira/browse/SYNCOPE-420
>             Project: Syncope
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.1.5, 1.2.0
>            Reporter: fabio martelli
>            Assignee: Francesco Chicchiriccò
>             Fix For: 1.1.5, 1.2.0
>
>
> Before storing/propagating/synchronizing a specific attribute it should be 
> called an attribute value pre-processor in order to permit to manipulate each 
> attribute value.
> The idea is to provide an interface to be implemented into the overlay in 
> order to perform custom pre-processing operations.
> The custom implementation class name could be defined into the global 
> configuration.
> This new feature would give the "handle" to provide several attribute value 
> manipulation like specific value translations, or something else.



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

Reply via email to