Hi, inline:
On 04/24/2013 10:58 AM, Francesco Chicchiricc� wrote:
> On 23/04/2013 20:30,
Gael.A...@forgerock.com wrote:
>> [...]
>>
>> Hi Francesco,
>>
>> Forgerock wishes to participate in a common discussion around the
>> specifications and evolutions of the Identity connectors framework.
>> This will guarantee connectors compatibility throughout the 3 projects
>> (OpenICF/ConnID/MidPoint).
>> This will also ease the contribution model, giving freedom for
>> developers to chose where their connector contribution is hosted.
>>
>> As an FYI, we are planning to move to GIT soon.
>
> Hi Gael, and welcome to this discussion.
>
> I agree with you, let's focus on the framework, targeting the full
> interoperability for connectors developed in any place.
>
> IMO we need to:
>
> 1. establish a starting shared version by merging the current OpenICF
> and ConnId versions
agreed.
> 2. maintain this shared version over time
agreed again
> 3. discuss about evolutions and set some specifications for the future
yes. There are 2 things here...
1- carry on the work on the 1.X version of the framework. We'll have to
align our 2 different versions. Never forget that
the framework has this compatibility constraint for the connectors...
meaning we need to guarantee that the current connectors
(call them the 1.1 framework connectors) will work with the future 1.x
version of the framework regardless of the framework evolutions
2- (which is your 3.) , start working on the future which would be the
2.x framework. This means (most probably) breaking the connectors
compatibility
with 1.x.
>
> About (1), I propose to create a new branch on ConnId github
> repository with content from your SVN repository [1], and then
> re-apply the ConnId changes performed so far.
>
> Issues I see:
>
> a. we will need to adjust the POM files: groupId and artifactId of
> course, but also version since you are on 1.1.2.0-SNAPSHOT and ConnId
> is on 1.3.4-SNAPSHOT - is it fine to move to 1.4.0 for this new branch?
I'll let Laszlo answer to this one. Our initial thought was to go for a
1.2 with the following improvements:
- byte support:
OpenICF does not currently support the "byte" type for an attribute
- LiveSync: CREATE and UPDATE
OpenICF only supports DELETE and CREATE_UPDATE type of events. We
propose to add the
CREATE (object creation) and UPDATE (object update) events as well.
- __ANY__ special ObjectClass for Sync() :
One of the problem with the sync() method is that you have to specify an
objectclass. This is an issue
when you need to track events sequence between 2 differents objects from
2 different objectclasses. (Bkley/UCSF has it)
We propose to introduce a new special __ANY__ objectclass for Sync()
that would fetch "any" object so that
they could be processed wrt their sequence on the target system.
- SchemaViolationException
ICF does not have a SchemaViolationException. It is needed.
- Session Context in the pool
The way the connector pool works to day makes it a bit hard for
developers to have a smart handling of connection
pool to target system. Only way to do it is to play with static objects.
We propose to improve the ICF connector pool to
be able to handle that.
> b. difficult management of future changes to be imported from your
> repository: switching to GIT will help in this respect, but we will
> need anyway someone from your team with responsibility to regularly
> push changes from your repository to ConnId's
yep... We need to figure out how to sort out that one. But I think that
once we align our framework, there should not be that much "moves".
Framework should be pretty stable.
>
> About (3), I think we might use a document on GoogleDrive (or any
> other public collaboration tool, even ConnId's wiki [2] if it is fine
> for you) as scratchpad for the ongoing discussion.
sure... We need to share our ideas and specs.
Gael