On 03/07/2012 15:00, ernst Developer wrote:
Hi Francesco,
I was wondering if the synchronization action classes could be useful
for creating events. What do you think? Is it better than workflow?
I was looking at:
https://cwiki.apache.org/confluence/display/SYNCOPE/SynchronizationActionsClass
Hi Ernst,
this could be useful only for user modifications triggered by SyncJob:
if this fits your scenario, go ahead with it.
Regards.
2012/6/25 ernst Developer <[email protected]
<mailto:[email protected]>>
Hi,
So workflow tasks is the way to go at the moment.
I totally agree upon your proposed event generating approach,
using AOP. Using a configurable event handler implementation makes
it flexible for every use case.
The events do not have to provide all information, but only key
values that can be used to retrieve the relevant extra information
from the syncope database, would be enough I guess.
Thanks for now,
Ernst
2012/6/25 Francesco Chicchiriccò <[email protected]
<mailto:[email protected]>>
On 25/06/2012 12:51, ernst Developer wrote:
Hi Francesco,
Thanks for the reply.
What I understand from your reply is that I can create
reports using the reportlets, that I have to implement
myself. What I basically get by implementing a reportlet is
some sort of client. This client retrieves data from the
syncope database, and transforms this data into html or pdf.
Hope my understanding is correct.
It is, indeed :)
What I would like to have is some sort of event handling
system in syncope, that provides the event data to, for
instance, a database table, or to a publish subscribe queue.
Can you give me some advise how to implement this? Do you
think an approach like this will be available in the future
in syncope? The main goal here is to provide the information
to other users than syncope itself.
I see: currently, the only kind of "events" you can catch are
workflow-related, by using custom Task implementations;
anything happening outside the worklfow cannot be, of course,
handled this way.
However, I think that some sort of "interceptor" feature could
be very interesting to put in roadmap.
For your reference, I'd think to use some good AOP for
implementing this, anyway: this would allow to some high grade
of flexibility while keeping the "main" code clean.
Regards.
2012/6/24 Francesco Chicchiriccò <[email protected]
<mailto:[email protected]>>
On 22/06/2012 14:10, ernst Developer wrote:
Hi,
For reporting reasons we need data about events in
Syncope. These events include:
* create of a user in Syncope;
* provisioning to the resources; including state of
the provisioning;
* update of a user in Syncope;
* provisioning to the resources; including the state
of the provisioning;
* adding of a resource to a user;
* removing of a resource;
* delete of a user;
* ....
I was wondering how I should implement this, using the
standard features of Syncope. Can you please help me out
on this item, and point for instance the direction for
the solution of this requirement.
Hi Ernst,
you should be able to get most (but not everything) of
what you say above in 1.0.0 by implementing your own
reportlet: report feature is one of the newcomers in
Syncope and is unfortunately not yet documented.
Basically, reports are aggregation of reportlets: each
reportlet captures a particular aspect you'd like to
include in you report - for example the UserReportlet
deals with user attributes and resources; reportlets
produce output by SAX events (see [1] for an example).
You can of course write your own reportlet(s) by
implementing [2] or extending [3] + providing a couple of
XSLT files for transforming reportlet data into HTML and
PDF / RTF respectively - see some examples [4].
Once you have deployed your own reportlets, you are able
to configure one or more reports through the admin console.
Hope this helps.
Regards.
[1]
https://svn.apache.org/repos/asf/incubator/syncope/tags/syncope-1.0.0-RC1-incubating/core/src/main/java/org/apache/syncope/core/report/UserReportlet.java
[2]
https://svn.apache.org/repos/asf/incubator/syncope/tags/syncope-1.0.0-RC1-incubating/core/src/main/java/org/apache/syncope/core/report/Reportlet.java
[3]
https://svn.apache.org/repos/asf/incubator/syncope/tags/syncope-1.0.0-RC1-incubating/core/src/main/java/org/apache/syncope/core/report/AbstractReportlet.java
[4]
https://svn.apache.org/repos/asf/incubator/syncope/tags/syncope-1.0.0-RC1-incubating/core/src/main/resources/report/
--
Francesco Chicchiriccò
ASF Member, Apache Cocoon PMC and Apache Syncope PPMC Member
http://people.apache.org/~ilgrosso/