db.table: how to filter a pull

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

db.table: how to filter a pull

Tech
Dear experts,

using the db.table we would like to implement some filter like "where
firstName = 'John' ", how should we do this?

Thanks

Reply | Threaded
Open this post in threaded view
|

Re: db.table: how to filter a pull

ilgrosso
Administrator
On 30/03/2017 08:43, Tech wrote:
> Dear experts,
>
> using the db.table we would like to implement some filter like "where
> firstName = 'John' ", how should we do this?

Hi,
first implement the ReconciliationFilterBuilder interface in your own
sources (with the filtering condition), then select 'FILTERED
RECONCILIATION' as pull mode for your pull task.

In the method from ReconciliationFilterBuilder you might want to return
an instance of EqualsFilter [2] or ContainsFilter [3] or one of the
already existing implementations.

HTH
Regards.

[1]
https://github.com/apache/syncope/blob/syncope-2.0.2/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconciliationFilterBuilder.java
[2]
http://connid.tirasa.net/apidocs/1.4/org/identityconnectors/framework/common/objects/filter/EqualsFilter.html
[3]
http://connid.tirasa.net/apidocs/1.4/org/identityconnectors/framework/common/objects/filter/ContainsFilter.html


Reply | Threaded
Open this post in threaded view
|

Re: db.table: how to filter a pull

Tech
Hello,

I'm not sure if I understood well, but in the case I might want to pull
users starting with 'A' and after the users starting with 'B' I might be
forced to recompile the code?




On 30.03.17 09:18, Francesco Chicchiriccò wrote:

> On 30/03/2017 08:43, Tech wrote:
>> Dear experts,
>>
>> using the db.table we would like to implement some filter like "where
>> firstName = 'John' ", how should we do this?
>
> Hi,
> first implement the ReconciliationFilterBuilder interface in your own
> sources (with the filtering condition), then select 'FILTERED
> RECONCILIATION' as pull mode for your pull task.
>
> In the method from ReconciliationFilterBuilder you might want to
> return an instance of EqualsFilter [2] or ContainsFilter [3] or one of
> the already existing implementations.
>
> HTH
> Regards.
>
> [1]
> https://github.com/apache/syncope/blob/syncope-2.0.2/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconciliationFilterBuilder.java
> [2]
> http://connid.tirasa.net/apidocs/1.4/org/identityconnectors/framework/common/objects/filter/EqualsFilter.html
> [3]
> http://connid.tirasa.net/apidocs/1.4/org/identityconnectors/framework/common/objects/filter/ContainsFilter.html
>
>

Reply | Threaded
Open this post in threaded view
|

Re: db.table: how to filter a pull

ilgrosso
Administrator
On 30/03/2017 10:20, Tech wrote:
> Hello,
>
> I'm not sure if I understood well, but in the case I might want to
> pull users starting with 'A' and after the users starting with 'B' I
> might be forced to recompile the code?

That's the current status of such feature yes: filtered reconciliation
is somehow new in 2.0 and might need some adjustments / improvements.

FYI other connector bundles - as LDAP or AD - provide such filtering
feature by themselves.

Regards.

> On 30.03.17 09:18, Francesco Chicchiriccò wrote:
>> On 30/03/2017 08:43, Tech wrote:
>>> Dear experts,
>>>
>>> using the db.table we would like to implement some filter like
>>> "where firstName = 'John' ", how should we do this?
>>
>> Hi,
>> first implement the ReconciliationFilterBuilder interface in your own
>> sources (with the filtering condition), then select 'FILTERED
>> RECONCILIATION' as pull mode for your pull task.
>>
>> In the method from ReconciliationFilterBuilder you might want to
>> return an instance of EqualsFilter [2] or ContainsFilter [3] or one
>> of the already existing implementations.
>>
>> HTH
>> Regards.
>>
>> [1]
>> https://github.com/apache/syncope/blob/syncope-2.0.2/core/provisioning-api/src/main/java/org/apache/syncope/core/provisioning/api/pushpull/ReconciliationFilterBuilder.java
>> [2]
>> http://connid.tirasa.net/apidocs/1.4/org/identityconnectors/framework/common/objects/filter/EqualsFilter.html
>> [3]
>> http://connid.tirasa.net/apidocs/1.4/org/identityconnectors/framework/common/objects/filter/ContainsFilter.html

--
Francesco Chicchiriccò

Tirasa - Open Source Excellence
http://www.tirasa.net/

Member at The Apache Software Foundation
Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail
http://home.apache.org/~ilgrosso/