Awesome work Giacomo. Hadrian
On Friday 04 April 2014 06:07:51 Giacomo Lamonaco wrote: > Hi all, > as you know, in the previous months I worked on an early integration of > Apache Camel in Syncope. The original purpose was to introduce a new > component, the provisioning manager, that deals with user and role > management. We decided to use Camel as base of the new component: we > supposed that Camel routes could be used to express the provisioning > logic.. and maybe we were right. > > In these months I simplified both the user and the role controller: every > operation that had to do with these two concepts (i.e. user creation),has > been moved in the provisioning manager and now it's expressed using a > route. This means that now we have a more accurate control on what's > happening in the provisioning process and, using the right syntax, we can > define complex behaviour. > > In the last part of the work, we decided to focus more on the Syncope > Console: we decided to add a new REST service that allows to read the > routes definitions, and possibly modify them. You can find this new > service under the Configuration section. In this case, routes are > expressed through Spring DSL. > > We decided to extend the Syncope Console for one main reason: Camel allows > to add/remove routes at runtime, without stopping its context. In our > case, since Camel routes represent part of Syncope provisioning logic, we > are able to update some provisioning behaviour by changing the route > content. In other word, if we want to change some provisioning logic, now > we don't need to stop Syncope and create a new classes: we can do it > directly in the console, without stopping Syncope. > > As a final result, I made a video [1] that shows how to work with the new > component. In my case, I'm updating the user creation route at runtime: > with this modification, every time a new user is added, an email is sent > to system administrator. > > What do you think? It make sense to integrate this work in Syncope? > Let me know! > > Thanks for your attention. > > [1]https://www.youtube.com/watch?v=H25BFqaI8qw >