You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@manifoldcf.apache.org by Antonio David Pérez Morales <ad...@gmail.com> on 2015/08/04 19:22:31 UTC

Re: [GSoC] Confluence Authority Connector

Hi guys

Following the work already done in the Confluence connector, I have
developed some tests for the Authority connector and also I have fixed and
improved the tests related to the repository connector because I changed
the check to know if a document needs to be reindexed or not, so I have
modified the tests accordingly to avoid problems and in order to tests the
behavior properly.

Regarding the documentation and after talked with Rafa, I have started with
the README.md file and I have also put configuration screenshots on it
using embedded images (unluckily if you go to GitHub, the embedded images
are not rendered I don't know why, but  using the Markdown content in a
Markdown syntax viewer, the images are properly shown). We have agreed that
when the connectors are ready to be contributed, then we can port the
documentation to the format expected by Manifold framework.

As always, if you have any comments or suggestions for improvements or new
requirements, please let me know.

Regards




2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:

> Hi Antonio,
>
>
> Sorry I have been out for a couple of days, so I couldn't answer until
> today.
>
>
>
>
>
>
> —
> Enviado desde Mailbox
>
>
>
> El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez Morales <
> adperezmorales@gmail.com> escribió:
> Hi devs
>
>
> I continue working on the Authority connector for Confluence [1].
>
> Basically I'm finishing the tests and doing some improvements. I would like
>
> to do some UI tests (like Active Directory connector does), so I will try
>
> to include them along with unit tests with mocks.
>
> In parallel, I'm going to start with the documentation to be ready for the
>
> contribution to Manifold.
>
> ​
>
> ​Fine. I will take a look to the GitHub project to check the authority
> connector progress. Actually this one should be easier and faster to test
> for me.
>
>
>
>
>
>
> Moreover, right now, I keep separated both repository and authority
>
> connectors (different modules in the maven project) but once finished, I
>
> think it is better to join them into only one, merging the clients used to
>
> interact with Confluence, and reusing some model classes. I will do it as
>
> soon as I finish the tests and some improvements and in parallel with the
>
> documentation.
>
>
>
>
>
> ​
>
> ​Yeah, there are probably some code that could be merged. If the
> configuration is barely the same for both clients, they should be merged in
> a single client module. For now, you can keep it at one of the connectors
> packages and cross the reference in the other one. As soon as you finish
> the authority connector I will take a look to see if we can merge something
> else.
>
>
>
>
> As always, if you have any suggestions, please let me know and I will try
>
> to include it in the current code.
>
>
> Regards
>
>
> [1]
>
>
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
>
>
> 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:
>
>
> > The feature was developed for a user that was trying to index documents
>
> > by creating multiple XML files, each containing a specific set of
>
> > documents. But we don't have any supported connectors yet that rely on
>
> > this feature.
>
> >
>
> > Thanks,
>
> > Karl
>
> >
>
> > Sent from my Windows Phone
>
> > From: Antonio David Pérez Morales
>
> > Sent: 7/11/2015 3:55 AM
>
> > To: dev@manifoldcf.apache.org
>
> > Subject: Re: [GSoC] Confluence Authority Connector
>
> > Hi Karl
>
> >
>
> > Thanks for your response.
>
> >
>
> > No, I'm not using document components, so I will change the call to
>
> > checkDocumentNeedsReindexing.
>
> >
>
> > Only for curiosity, do you have any example showing how to use document
>
> > components with the RepositoryDocument model used in Manifold?
>
> >
>
> > Regards
>
> >
>
> > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:
>
> >
>
> > > bq. Karl one question about repository connector document retainment.
> I'm
>
> > > using
>
> > > the activities.retainAllComponentDocument(docId) method of
>
> > IProcessActivity
>
> > > to retain the document and avoid to be reindexed.
>
> > >
>
> > > Hi Antonio,
>
> > >
>
> > > checkDocumentNeedsReindexing() is the standard way of determining
>
> > whether a
>
> > > document needs to be reindexed or not.  You can follow the template
>
> > present
>
> > > in multiple other connectors that use this method.
>
> > >
>
> > > retainAllComponentDocuments() is basically a shorthand way of
> determining
>
> > > the disposition of document components.  I don't believe you even use
>
> > > document components in the confluence connector, although I could be
>
> > wrong
>
> > > about that?  In general, if your connector doesn't do anything with
>
> > > components at all, you will not need to call this method.
>
> > >
>
> > > Thanks,
>
> > > Karl
>
> > >
>
> > >
>
> > >
>
> > >
>
> > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez Morales <
>
> > > adperezmorales@gmail.com> wrote:
>
> > >
>
> > > > Hi devs
>
> > > >
>
> > > > Continuing with the work, I have developed a first version of the
>
> > > > Confluence Authority connector aligned with the ACLs used by the
>
> > > Confluence
>
> > > > Repository Connector.
>
> > > > I have fixed and improved some parts in the repository connector and
>
> > > > committed the code and also I have updated the Jira issue [1] to keep
>
> > > track
>
> > > > of the new additions.
>
> > > > Both branches have been merged into master and I have created a new
>
> > > develop
>
> > > > branch [2] from it, so further improvements and fixes can be done
> from
>
> > > this
>
> > > > branch and then merged into master.
>
> > > > Right now, the connectors are in different maven modules and maybe in
>
> > the
>
> > > > future I can merge into one single maven project without modules, so
>
> > that
>
> > > > with one jar file we will have both connectors ready to be used in
>
> > > > Manifold.
>
> > > > As of now, I will work in the Authority connector improvements and
>
> > tests
>
> > > > and also I will do all the things Rafa (or you guys) can report
>
> > regarding
>
> > > > the functionality of the connectors.
>
> > > >
>
> > > > Karl one question about repository connector document retainment. I'm
>
> > > using
>
> > > > the activities.retainAllComponentDocument(docId) method of
>
> > > IProcessActivity
>
> > > > to retain the document and avoid to be reindexed.
>
> > > > Rafa, while checking and reviewing the code, noticed that other
>
> > > connectors
>
> > > > are using the checkDocumentNeedsReindexing(documentIdentifier,
>
> > > > newVersionString) method also from IProcessActivity. I checked the
> code
>
> > > > from both methods and internally they act differently. Is it fine to
>
> > use
>
> > > > the retainAllComponentDocument or it is better to switch to
>
> > > > checkDocumentNeedsReindexing one?
>
> > > >
>
> > > > As always, if you have suggestions about improvements or more things
>
> > > which
>
> > > > can be done for these connectors, please let me know.
>
> > > >
>
> > > > Regards
>
> > > >
>
> > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
>
> > > > [2]
>
> > > >
>
> > > >
>
> > >
>
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
>
> > > >
>
> > > >
>
> > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:
>
> > > >
>
> > > > > Hi Antonio,
>
> > > > >
>
> > > > > Thanks for the new update. Let me make some comments inline:
>
> > > > >
>
> > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez Morales <
>
> > > > > adperezmorales@gmail.com> wrote:
>
> > > > >
>
> > > > > > Hi devs
>
> > > > > >
>
> > > > > > After the midterm, I continue with the proposed work and I
> already
>
> > > > > started
>
> > > > > > to work on the second part of the project, which is the
> development
>
> > > of
>
> > > > an
>
> > > > > > Authority Connector for Confluence.
>
> > > > > >
>
> > > > > > I have created a new branch [1] for that in my GitHub account
> and I
>
> > > > > already
>
> > > > > > committed the basic structure of the connector along with the
> code
>
> > > > > related
>
> > > > > > to Confluence instance configuration. After that I will develop
> the
>
> > > > > proper
>
> > > > > > strategy to get the ACLs for the user as stated in the proposal.
>
> > > > > >
>
> > > > > > For this case, I have been evaluating the two scenarios contained
>
> > in
>
> > > > the
>
> > > > > > proposal and I will start developing the space-based permissions
>
> > > which
>
> > > > > > requires no customizations of Confluence instance (coarse grain).
>
> > > > > >
>
> > > > > > I made some tests with Confluence APIs trying to go more
> fine-grain
>
> > > > using
>
> > > > > > the user groups but there is not endpoint method to get the
> groups
>
> > > that
>
> > > > > can
>
> > > > > > view a specific page. So in the end, I think the space-based
>
> > > permission
>
> > > > > is
>
> > > > > > a good solution, because implementing a Confluence plugin for
> that
>
> > to
>
> > > > > cover
>
> > > > > > some very specific use cases I think most people won't be willing
>
> > to
>
> > > > > patch
>
> > > > > > Confluence only for those specific use cases (for example where a
>
> > > > person
>
> > > > > is
>
> > > > > > not allowed to view a space but it is allowed to view a single
> page
>
> > > in
>
> > > > > that
>
> > > > > > space).
>
> > > > > >
>
> > > > >
>
> > > > > Let's focus right now on permissions at space level. As you said,
> to
>
> > > > patch
>
> > > > > confluence API is not  a good solution, specially for those using
> it
>
> > in
>
> > > > the
>
> > > > > Cloud. If in the future they extend the API with more fine grained
>
> > > > > permissions approach, we can always update later the connector.
>
> > > > >
>
> > > > >
>
> > > > > >
>
> > > > > > I have also updated the README file putting a guide to configure
>
> > both
>
> > > > > > connectors using screenshots about configuration tabs for the
>
> > > > connectors.
>
> > > > > > I'm using embedded images (using Data URIs syntax for images) but
>
> > it
>
> > > > > seems
>
> > > > > > they are not supported by GitHub in the README (although they are
>
> > in
>
> > > > the
>
> > > > > > code, and other Markdown viewers can show them).
>
> > > > > >
>
> > > > >
>
> > > > > Ok, thanks!
>
> > > > >
>
> > > > >
>
> > > > > >
>
> > > > > > The connectors are in separated branches until I merge them into
>
> > > > master.
>
> > > > > >
>
> > > > > > Moreover, I have been talking and reviewing with Rafa through
> Skype
>
> > > the
>
> > > > > > current work, and we have agreed to track all the things also in
>
> > the
>
> > > > Jira
>
> > > > > > issue (apart from these mails), so I will put the configuration
>
> > > > > screenshots
>
> > > > > > there and the links to the GitHub repositories.
>
> > > > > >
>
> > > > >
>
> > > > > Perfect!. Let me know when we can start testing the Authority
>
> > connector
>
> > > > > too. My intention is to test the whole connector in a real
>
> > environment
>
> > > > > extensively sometime before the pencil downs looking for possible
>
> > bugs,
>
> > > > > additions and so on.
>
> > > > >
>
> > > > > Well done so far!
>
> > > > > Cheers,
>
> > > > > Rafa
>
> > > > >
>
> > > > >
>
> > > > > >
>
> > > > > > Comments and suggestions are more than welcome as always.
>
> > > > > >
>
> > > > > > Regards
>
> > > > > >
>
> > > > > > --------
>
> > > > > >
>
> > > > > > [1]
>
> > > > > >
>
> > > > > >
>
> > > > >
>
> > > >
>
> > >
>
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector
>
> > > > > >
>
> > > > >
>
> > > >
>
> > >
>
> >
>

Re: [GSoC] Confluence Authority Connector

Posted by Antonio David Pérez Morales <ad...@gmail.com>.
Hi all again

Patch attached to Jira issue [1]. Please test the patch and let me know if
further changes are needed.

Regards

[1] https://issues.apache.org/jira/browse/CONNECTORS-1161

2015-08-12 13:24 GMT+02:00 Antonio David Pérez Morales <
adperezmorales@gmail.com>:

> Hi all
>
> I have continued working on all the things commented in the Jira issue
> [1]. After Rafa tested both connectors, we identified some bugs to fix and
> some improvements which have already been implemented and committed in the
> GitHub repository in the develop branch [2] which will be merged to master
> early next week if no further modifications are needed.
>
> Moreover I have tested the connector building inside ManifoldCF framework
> both Maven based and Ant based.
> For Maven building, there is only necessary to add the new confluence
> connector as a new Maven module in connectors/pom.xml file.
> For Ant building, a new build.xml file is provided in the project to build
> and register repository and authority connectors in the connectors.xml file
> . While building ManifoldCF with the new connector with ant, it fails due
> to Guava is not present in the building classpath. To fix that, I have
> extended the connector-classpath path at connector-build.xml file with the
> Guava dependency located under connector-lib (after executing
> make-core-deps target). After that fix, executing ant build finishes
> successfully.
>
> Rafa, Karl, I can provide a patch over the latest code in trunk and attach
> it to the Jira issue [1] so that you guys can apply it and test before
> merging and committing to trunk.
> What do you think?
>
> Regards
>
> --------
>
> [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
>
> [2]
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
>
> 2015-08-05 18:30 GMT+02:00 Rafa Haro <rh...@gmail.com>:
>
>> Hi all,
>>
>>
>>
>>
>> I’m having some issues for testing the connector against a cloud
>> instance. Apparently it could be something related to permissions for using
>> the REST API for my atlassian user in our instance. I have discussed this
>> with the administrator of our Atlassian Cloud instance and he will check if
>> there is any granting option for using the REST API for the regular users.
>> I hope to have more news tomorrow about this. Anyway, I will setup a local
>> Confluence instance also for testing. The thing is I wanted to test with
>> our cloud instance because we have a considerable amount of content, so
>> would be a great test.
>>
>>
>>
>>
>> Anyway Antonio, as Karl suggested, I think you can proceed with the final
>> additions/modifications we agreed yesterday and start preparing the code
>> for contributing. I can help with this and also I will probably need to ask
>> Karl for some help also. You can include the User Documentation and with
>> that plus code comments/documentation I think we can consider the project
>> properly documented.
>>
>>
>>
>>
>> Cheers,
>>
>> Rafa
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On miércoles, ago 5, 2015 at 1:27 p. m., Antonio David Pérez Morales <
>> adperezmorales@gmail.com>, wrote:
>> Hi Karl
>>
>>
>>
>> Perfect. Once I finish some things and Rafa finishes his tests, I will
>>
>> start with that and I will do some tests adding the whole connector into
>>
>> ManifoldCF structure.
>>
>> For that, I think it will be useful to merge both Maven modules in order
>> to
>>
>> have only one project (jar) providing both connectors, but let's wait
>> until
>>
>> Rafa's response.
>>
>>
>>
>> Regards
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> 2015-08-05 13:06 GMT+02:00 Karl Wright <da...@gmail.com>:
>>
>>
>>
>> > Hi Antonio,
>>
>> >
>>
>> > Only ManifoldCF committers can import the project into Apache svn.
>>
>> > However, before that happens, you will need to insure the following:
>>
>> > (1) Directory structure is compatible with connectors under the
>>
>> > "connectors" area of ManifoldCF
>>
>> > (2) There is both a pom.xml and a build.xml that work
>>
>> > (3) Any additional imports that you need for building using Ant have
>>
>> > license research done so that we know they can be included in the Apache
>>
>> > distribution
>>
>> >
>>
>> > Thanks!
>>
>> > Karl
>>
>> >
>>
>> >
>>
>> > On Wed, Aug 5, 2015 at 5:52 AM, Antonio David Pérez Morales <
>>
>> > adperezmorales@gmail.com> wrote:
>>
>> >
>>
>> > > Hi Karl
>>
>> > >
>>
>> > > After talked with Rafa yesterday, while I'm working on some
>> improvements
>>
>> > > and fixes, Rafa is testing the connector against some Confluence
>>
>> > instances
>>
>> > > (on premise and cloud) to check the connector's behavior.
>>
>> > > After that, we can think to merge both connectors into only one
>> project
>>
>> > > (right now it is a Maven project with two maven modules, one for
>>
>> > repository
>>
>> > > connector and one for authority connector) if needed and then move
>>
>> > towards
>>
>> > > importing it into Apache SVN.
>>
>> > >
>>
>> > > I don't know if I can do that step or else only Manifold committers
>> can
>>
>> > do
>>
>> > > that. If the second, I can help anyone to move the project into Apache
>>
>> > SVN.
>>
>> > >
>>
>> > > Regards
>>
>> > >
>>
>> > >
>>
>> > >
>>
>> > > 2015-08-04 20:25 GMT+02:00 Karl Wright <da...@gmail.com>:
>>
>> > >
>>
>> > > > If you feel that this connector is largely complete, we can move
>>
>> > towards
>>
>> > > > importing it into Apache svn.  Please let us know when you are
>> ready.
>>
>> > > >
>>
>> > > > Karl
>>
>> > > >
>>
>> > > >
>>
>> > > > On Tue, Aug 4, 2015 at 1:22 PM, Antonio David Pérez Morales <
>>
>> > > > adperezmorales@gmail.com> wrote:
>>
>> > > >
>>
>> > > > > Hi guys
>>
>> > > > >
>>
>> > > > > Following the work already done in the Confluence connector, I
>> have
>>
>> > > > > developed some tests for the Authority connector and also I have
>>
>> > fixed
>>
>> > > > and
>>
>> > > > > improved the tests related to the repository connector because I
>>
>> > > changed
>>
>> > > > > the check to know if a document needs to be reindexed or not, so I
>>
>> > have
>>
>> > > > > modified the tests accordingly to avoid problems and in order to
>>
>> > tests
>>
>> > > > the
>>
>> > > > > behavior properly.
>>
>> > > > >
>>
>> > > > > Regarding the documentation and after talked with Rafa, I have
>>
>> > started
>>
>> > > > with
>>
>> > > > > the README.md file and I have also put configuration screenshots
>> on
>>
>> > it
>>
>> > > > > using embedded images (unluckily if you go to GitHub, the embedded
>>
>> > > images
>>
>> > > > > are not rendered I don't know why, but  using the Markdown content
>>
>> > in a
>>
>> > > > > Markdown syntax viewer, the images are properly shown). We have
>>
>> > agreed
>>
>> > > > that
>>
>> > > > > when the connectors are ready to be contributed, then we can port
>> the
>>
>> > > > > documentation to the format expected by Manifold framework.
>>
>> > > > >
>>
>> > > > > As always, if you have any comments or suggestions for
>> improvements
>>
>> > or
>>
>> > > > new
>>
>> > > > > requirements, please let me know.
>>
>> > > > >
>>
>> > > > > Regards
>>
>> > > > >
>>
>> > > > >
>>
>> > > > >
>>
>> > > > >
>>
>> > > > > 2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:
>>
>> > > > >
>>
>> > > > > > Hi Antonio,
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > Sorry I have been out for a couple of days, so I couldn't answer
>>
>> > > until
>>
>> > > > > > today.
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > —
>>
>> > > > > > Enviado desde Mailbox
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez
>>
>> > > Morales <
>>
>> > > > > > adperezmorales@gmail.com> escribió:
>>
>> > > > > > Hi devs
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > I continue working on the Authority connector for Confluence
>> [1].
>>
>> > > > > >
>>
>> > > > > > Basically I'm finishing the tests and doing some improvements. I
>>
>> > > would
>>
>> > > > > like
>>
>> > > > > >
>>
>> > > > > > to do some UI tests (like Active Directory connector does), so I
>>
>> > will
>>
>> > > > try
>>
>> > > > > >
>>
>> > > > > > to include them along with unit tests with mocks.
>>
>> > > > > >
>>
>> > > > > > In parallel, I'm going to start with the documentation to be
>> ready
>>
>> > > for
>>
>> > > > > the
>>
>> > > > > >
>>
>> > > > > > contribution to Manifold.
>>
>> > > > > >
>>
>> > > > > > ​
>>
>> > > > > >
>>
>> > > > > > ​Fine. I will take a look to the GitHub project to check the
>>
>> > > authority
>>
>> > > > > > connector progress. Actually this one should be easier and
>> faster
>>
>> > to
>>
>> > > > test
>>
>> > > > > > for me.
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > Moreover, right now, I keep separated both repository and
>> authority
>>
>> > > > > >
>>
>> > > > > > connectors (different modules in the maven project) but once
>>
>> > > finished,
>>
>> > > > I
>>
>> > > > > >
>>
>> > > > > > think it is better to join them into only one, merging the
>> clients
>>
>> > > used
>>
>> > > > > to
>>
>> > > > > >
>>
>> > > > > > interact with Confluence, and reusing some model classes. I
>> will do
>>
>> > > it
>>
>> > > > as
>>
>> > > > > >
>>
>> > > > > > soon as I finish the tests and some improvements and in parallel
>>
>> > with
>>
>> > > > the
>>
>> > > > > >
>>
>> > > > > > documentation.
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > ​
>>
>> > > > > >
>>
>> > > > > > ​Yeah, there are probably some code that could be merged. If the
>>
>> > > > > > configuration is barely the same for both clients, they should
>> be
>>
>> > > > merged
>>
>> > > > > in
>>
>> > > > > > a single client module. For now, you can keep it at one of the
>>
>> > > > connectors
>>
>> > > > > > packages and cross the reference in the other one. As soon as
>> you
>>
>> > > > finish
>>
>> > > > > > the authority connector I will take a look to see if we can
>> merge
>>
>> > > > > something
>>
>> > > > > > else.
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > As always, if you have any suggestions, please let me know and I
>>
>> > will
>>
>> > > > try
>>
>> > > > > >
>>
>> > > > > > to include it in the current code.
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > Regards
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > [1]
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > >
>>
>> > > >
>>
>> > >
>>
>> >
>> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:
>>
>> > > > > >
>>
>> > > > > >
>>
>> > > > > > > The feature was developed for a user that was trying to index
>>
>> > > > documents
>>
>> > > > > >
>>
>> > > > > > > by creating multiple XML files, each containing a specific
>> set of
>>
>> > > > > >
>>
>> > > > > > > documents. But we don't have any supported connectors yet that
>>
>> > rely
>>
>> > > > on
>>
>> > > > > >
>>
>> > > > > > > this feature.
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > Thanks,
>>
>> > > > > >
>>
>> > > > > > > Karl
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > Sent from my Windows Phone
>>
>> > > > > >
>>
>> > > > > > > From: Antonio David Pérez Morales
>>
>> > > > > >
>>
>> > > > > > > Sent: 7/11/2015 3:55 AM
>>
>> > > > > >
>>
>> > > > > > > To: dev@manifoldcf.apache.org
>>
>> > > > > >
>>
>> > > > > > > Subject: Re: [GSoC] Confluence Authority Connector
>>
>> > > > > >
>>
>> > > > > > > Hi Karl
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > Thanks for your response.
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > No, I'm not using document components, so I will change the
>> call
>>
>> > to
>>
>> > > > > >
>>
>> > > > > > > checkDocumentNeedsReindexing.
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > Only for curiosity, do you have any example showing how to use
>>
>> > > > document
>>
>> > > > > >
>>
>> > > > > > > components with the RepositoryDocument model used in Manifold?
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > Regards
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > bq. Karl one question about repository connector document
>>
>> > > > retainment.
>>
>> > > > > > I'm
>>
>> > > > > >
>>
>> > > > > > > > using
>>
>> > > > > >
>>
>> > > > > > > > the activities.retainAllComponentDocument(docId) method of
>>
>> > > > > >
>>
>> > > > > > > IProcessActivity
>>
>> > > > > >
>>
>> > > > > > > > to retain the document and avoid to be reindexed.
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > Hi Antonio,
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > checkDocumentNeedsReindexing() is the standard way of
>>
>> > determining
>>
>> > > > > >
>>
>> > > > > > > whether a
>>
>> > > > > >
>>
>> > > > > > > > document needs to be reindexed or not.  You can follow the
>>
>> > > template
>>
>> > > > > >
>>
>> > > > > > > present
>>
>> > > > > >
>>
>> > > > > > > > in multiple other connectors that use this method.
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > retainAllComponentDocuments() is basically a shorthand way
>> of
>>
>> > > > > > determining
>>
>> > > > > >
>>
>> > > > > > > > the disposition of document components.  I don't believe you
>>
>> > even
>>
>> > > > use
>>
>> > > > > >
>>
>> > > > > > > > document components in the confluence connector, although I
>>
>> > could
>>
>> > > > be
>>
>> > > > > >
>>
>> > > > > > > wrong
>>
>> > > > > >
>>
>> > > > > > > > about that?  In general, if your connector doesn't do
>> anything
>>
>> > > with
>>
>> > > > > >
>>
>> > > > > > > > components at all, you will not need to call this method.
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > Thanks,
>>
>> > > > > >
>>
>> > > > > > > > Karl
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez
>> Morales <
>>
>> > > > > >
>>
>> > > > > > > > adperezmorales@gmail.com> wrote:
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > Hi devs
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > Continuing with the work, I have developed a first
>> version of
>>
>> > > the
>>
>> > > > > >
>>
>> > > > > > > > > Confluence Authority connector aligned with the ACLs used
>> by
>>
>> > > the
>>
>> > > > > >
>>
>> > > > > > > > Confluence
>>
>> > > > > >
>>
>> > > > > > > > > Repository Connector.
>>
>> > > > > >
>>
>> > > > > > > > > I have fixed and improved some parts in the repository
>>
>> > > connector
>>
>> > > > > and
>>
>> > > > > >
>>
>> > > > > > > > > committed the code and also I have updated the Jira issue
>> [1]
>>
>> > > to
>>
>> > > > > keep
>>
>> > > > > >
>>
>> > > > > > > > track
>>
>> > > > > >
>>
>> > > > > > > > > of the new additions.
>>
>> > > > > >
>>
>> > > > > > > > > Both branches have been merged into master and I have
>>
>> > created a
>>
>> > > > new
>>
>> > > > > >
>>
>> > > > > > > > develop
>>
>> > > > > >
>>
>> > > > > > > > > branch [2] from it, so further improvements and fixes can
>> be
>>
>> > > done
>>
>> > > > > > from
>>
>> > > > > >
>>
>> > > > > > > > this
>>
>> > > > > >
>>
>> > > > > > > > > branch and then merged into master.
>>
>> > > > > >
>>
>> > > > > > > > > Right now, the connectors are in different maven modules
>> and
>>
>> > > > maybe
>>
>> > > > > in
>>
>> > > > > >
>>
>> > > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > future I can merge into one single maven project without
>>
>> > > modules,
>>
>> > > > > so
>>
>> > > > > >
>>
>> > > > > > > that
>>
>> > > > > >
>>
>> > > > > > > > > with one jar file we will have both connectors ready to be
>>
>> > used
>>
>> > > > in
>>
>> > > > > >
>>
>> > > > > > > > > Manifold.
>>
>> > > > > >
>>
>> > > > > > > > > As of now, I will work in the Authority connector
>>
>> > improvements
>>
>> > > > and
>>
>> > > > > >
>>
>> > > > > > > tests
>>
>> > > > > >
>>
>> > > > > > > > > and also I will do all the things Rafa (or you guys) can
>>
>> > report
>>
>> > > > > >
>>
>> > > > > > > regarding
>>
>> > > > > >
>>
>> > > > > > > > > the functionality of the connectors.
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > Karl one question about repository connector document
>>
>> > > retainment.
>>
>> > > > > I'm
>>
>> > > > > >
>>
>> > > > > > > > using
>>
>> > > > > >
>>
>> > > > > > > > > the activities.retainAllComponentDocument(docId) method of
>>
>> > > > > >
>>
>> > > > > > > > IProcessActivity
>>
>> > > > > >
>>
>> > > > > > > > > to retain the document and avoid to be reindexed.
>>
>> > > > > >
>>
>> > > > > > > > > Rafa, while checking and reviewing the code, noticed that
>>
>> > other
>>
>> > > > > >
>>
>> > > > > > > > connectors
>>
>> > > > > >
>>
>> > > > > > > > > are using the
>>
>> > checkDocumentNeedsReindexing(documentIdentifier,
>>
>> > > > > >
>>
>> > > > > > > > > newVersionString) method also from IProcessActivity. I
>>
>> > checked
>>
>> > > > the
>>
>> > > > > > code
>>
>> > > > > >
>>
>> > > > > > > > > from both methods and internally they act differently. Is
>> it
>>
>> > > fine
>>
>> > > > > to
>>
>> > > > > >
>>
>> > > > > > > use
>>
>> > > > > >
>>
>> > > > > > > > > the retainAllComponentDocument or it is better to switch
>> to
>>
>> > > > > >
>>
>> > > > > > > > > checkDocumentNeedsReindexing one?
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > As always, if you have suggestions about improvements or
>> more
>>
>> > > > > things
>>
>> > > > > >
>>
>> > > > > > > > which
>>
>> > > > > >
>>
>> > > > > > > > > can be done for these connectors, please let me know.
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > Regards
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
>>
>> > > > > >
>>
>> > > > > > > > > [2]
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > >
>>
>> > > >
>>
>> > >
>>
>> >
>> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > Hi Antonio,
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > Thanks for the new update. Let me make some comments
>>
>> > inline:
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez
>>
>> > Morales <
>>
>> > > > > >
>>
>> > > > > > > > > > adperezmorales@gmail.com> wrote:
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > Hi devs
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > After the midterm, I continue with the proposed work
>> and
>>
>> > I
>>
>> > > > > > already
>>
>> > > > > >
>>
>> > > > > > > > > > started
>>
>> > > > > >
>>
>> > > > > > > > > > > to work on the second part of the project, which is
>> the
>>
>> > > > > > development
>>
>> > > > > >
>>
>> > > > > > > > of
>>
>> > > > > >
>>
>> > > > > > > > > an
>>
>> > > > > >
>>
>> > > > > > > > > > > Authority Connector for Confluence.
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > I have created a new branch [1] for that in my GitHub
>>
>> > > account
>>
>> > > > > > and I
>>
>> > > > > >
>>
>> > > > > > > > > > already
>>
>> > > > > >
>>
>> > > > > > > > > > > committed the basic structure of the connector along
>> with
>>
>> > > the
>>
>> > > > > > code
>>
>> > > > > >
>>
>> > > > > > > > > > related
>>
>> > > > > >
>>
>> > > > > > > > > > > to Confluence instance configuration. After that I
>> will
>>
>> > > > develop
>>
>> > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > > proper
>>
>> > > > > >
>>
>> > > > > > > > > > > strategy to get the ACLs for the user as stated in the
>>
>> > > > > proposal.
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > For this case, I have been evaluating the two
>> scenarios
>>
>> > > > > contained
>>
>> > > > > >
>>
>> > > > > > > in
>>
>> > > > > >
>>
>> > > > > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > > > proposal and I will start developing the space-based
>>
>> > > > > permissions
>>
>> > > > > >
>>
>> > > > > > > > which
>>
>> > > > > >
>>
>> > > > > > > > > > > requires no customizations of Confluence instance
>> (coarse
>>
>> > > > > grain).
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > I made some tests with Confluence APIs trying to go
>> more
>>
>> > > > > > fine-grain
>>
>> > > > > >
>>
>> > > > > > > > > using
>>
>> > > > > >
>>
>> > > > > > > > > > > the user groups but there is not endpoint method to
>> get
>>
>> > the
>>
>> > > > > > groups
>>
>> > > > > >
>>
>> > > > > > > > that
>>
>> > > > > >
>>
>> > > > > > > > > > can
>>
>> > > > > >
>>
>> > > > > > > > > > > view a specific page. So in the end, I think the
>>
>> > > space-based
>>
>> > > > > >
>>
>> > > > > > > > permission
>>
>> > > > > >
>>
>> > > > > > > > > > is
>>
>> > > > > >
>>
>> > > > > > > > > > > a good solution, because implementing a Confluence
>> plugin
>>
>> > > for
>>
>> > > > > > that
>>
>> > > > > >
>>
>> > > > > > > to
>>
>> > > > > >
>>
>> > > > > > > > > > cover
>>
>> > > > > >
>>
>> > > > > > > > > > > some very specific use cases I think most people
>> won't be
>>
>> > > > > willing
>>
>> > > > > >
>>
>> > > > > > > to
>>
>> > > > > >
>>
>> > > > > > > > > > patch
>>
>> > > > > >
>>
>> > > > > > > > > > > Confluence only for those specific use cases (for
>> example
>>
>> > > > > where a
>>
>> > > > > >
>>
>> > > > > > > > > person
>>
>> > > > > >
>>
>> > > > > > > > > > is
>>
>> > > > > >
>>
>> > > > > > > > > > > not allowed to view a space but it is allowed to view
>> a
>>
>> > > > single
>>
>> > > > > > page
>>
>> > > > > >
>>
>> > > > > > > > in
>>
>> > > > > >
>>
>> > > > > > > > > > that
>>
>> > > > > >
>>
>> > > > > > > > > > > space).
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > Let's focus right now on permissions at space level. As
>> you
>>
>> > > > said,
>>
>> > > > > > to
>>
>> > > > > >
>>
>> > > > > > > > > patch
>>
>> > > > > >
>>
>> > > > > > > > > > confluence API is not  a good solution, specially for
>> those
>>
>> > > > using
>>
>> > > > > > it
>>
>> > > > > >
>>
>> > > > > > > in
>>
>> > > > > >
>>
>> > > > > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > > Cloud. If in the future they extend the API with more
>> fine
>>
>> > > > > grained
>>
>> > > > > >
>>
>> > > > > > > > > > permissions approach, we can always update later the
>>
>> > > connector.
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > I have also updated the README file putting a guide to
>>
>> > > > > configure
>>
>> > > > > >
>>
>> > > > > > > both
>>
>> > > > > >
>>
>> > > > > > > > > > > connectors using screenshots about configuration tabs
>> for
>>
>> > > the
>>
>> > > > > >
>>
>> > > > > > > > > connectors.
>>
>> > > > > >
>>
>> > > > > > > > > > > I'm using embedded images (using Data URIs syntax for
>>
>> > > images)
>>
>> > > > > but
>>
>> > > > > >
>>
>> > > > > > > it
>>
>> > > > > >
>>
>> > > > > > > > > > seems
>>
>> > > > > >
>>
>> > > > > > > > > > > they are not supported by GitHub in the README
>> (although
>>
>> > > they
>>
>> > > > > are
>>
>> > > > > >
>>
>> > > > > > > in
>>
>> > > > > >
>>
>> > > > > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > > > code, and other Markdown viewers can show them).
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > Ok, thanks!
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > The connectors are in separated branches until I merge
>>
>> > them
>>
>> > > > > into
>>
>> > > > > >
>>
>> > > > > > > > > master.
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > Moreover, I have been talking and reviewing with Rafa
>>
>> > > through
>>
>> > > > > > Skype
>>
>> > > > > >
>>
>> > > > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > > > current work, and we have agreed to track all the
>> things
>>
>> > > also
>>
>> > > > > in
>>
>> > > > > >
>>
>> > > > > > > the
>>
>> > > > > >
>>
>> > > > > > > > > Jira
>>
>> > > > > >
>>
>> > > > > > > > > > > issue (apart from these mails), so I will put the
>>
>> > > > configuration
>>
>> > > > > >
>>
>> > > > > > > > > > screenshots
>>
>> > > > > >
>>
>> > > > > > > > > > > there and the links to the GitHub repositories.
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > Perfect!. Let me know when we can start testing the
>>
>> > Authority
>>
>> > > > > >
>>
>> > > > > > > connector
>>
>> > > > > >
>>
>> > > > > > > > > > too. My intention is to test the whole connector in a
>> real
>>
>> > > > > >
>>
>> > > > > > > environment
>>
>> > > > > >
>>
>> > > > > > > > > > extensively sometime before the pencil downs looking for
>>
>> > > > possible
>>
>> > > > > >
>>
>> > > > > > > bugs,
>>
>> > > > > >
>>
>> > > > > > > > > > additions and so on.
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > Well done so far!
>>
>> > > > > >
>>
>> > > > > > > > > > Cheers,
>>
>> > > > > >
>>
>> > > > > > > > > > Rafa
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > Comments and suggestions are more than welcome as
>> always.
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > Regards
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > --------
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > > [1]
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > >
>>
>> > > >
>>
>> > >
>>
>> >
>> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector
>>
>> > > > > >
>>
>> > > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > > >
>>
>> > > > > >
>>
>> > > > > > > >
>>
>> > > > > >
>>
>> > > > > > >
>>
>> > > > > >
>>
>> > > > >
>>
>> > > >
>>
>> > >
>>
>> >
>>
>
>

Re: [GSoC] Confluence Authority Connector

Posted by Rafa Haro <rh...@gmail.com>.
Hi all, 




I’m having some issues for testing the connector against a cloud instance. Apparently it could be something related to permissions for using the REST API for my atlassian user in our instance. I have discussed this with the administrator of our Atlassian Cloud instance and he will check if there is any granting option for using the REST API for the regular users. I hope to have more news tomorrow about this. Anyway, I will setup a local Confluence instance also for testing. The thing is I wanted to test with our cloud instance because we have a considerable amount of content, so would be a great test.




Anyway Antonio, as Karl suggested, I think you can proceed with the final additions/modifications we agreed yesterday and start preparing the code for contributing. I can help with this and also I will probably need to ask Karl for some help also. You can include the User Documentation and with that plus code comments/documentation I think we can consider the project properly documented.




Cheers,

Rafa










On miércoles, ago 5, 2015 at 1:27 p. m., Antonio David Pérez Morales <ad...@gmail.com>, wrote:
Hi Karl



Perfect. Once I finish some things and Rafa finishes his tests, I will

start with that and I will do some tests adding the whole connector into

ManifoldCF structure.

For that, I think it will be useful to merge both Maven modules in order to

have only one project (jar) providing both connectors, but let's wait until

Rafa's response.



Regards









2015-08-05 13:06 GMT+02:00 Karl Wright <da...@gmail.com>:



> Hi Antonio,

>

> Only ManifoldCF committers can import the project into Apache svn.

> However, before that happens, you will need to insure the following:

> (1) Directory structure is compatible with connectors under the

> "connectors" area of ManifoldCF

> (2) There is both a pom.xml and a build.xml that work

> (3) Any additional imports that you need for building using Ant have

> license research done so that we know they can be included in the Apache

> distribution

>

> Thanks!

> Karl

>

>

> On Wed, Aug 5, 2015 at 5:52 AM, Antonio David Pérez Morales <

> adperezmorales@gmail.com> wrote:

>

> > Hi Karl

> >

> > After talked with Rafa yesterday, while I'm working on some improvements

> > and fixes, Rafa is testing the connector against some Confluence

> instances

> > (on premise and cloud) to check the connector's behavior.

> > After that, we can think to merge both connectors into only one project

> > (right now it is a Maven project with two maven modules, one for

> repository

> > connector and one for authority connector) if needed and then move

> towards

> > importing it into Apache SVN.

> >

> > I don't know if I can do that step or else only Manifold committers can

> do

> > that. If the second, I can help anyone to move the project into Apache

> SVN.

> >

> > Regards

> >

> >

> >

> > 2015-08-04 20:25 GMT+02:00 Karl Wright <da...@gmail.com>:

> >

> > > If you feel that this connector is largely complete, we can move

> towards

> > > importing it into Apache svn.  Please let us know when you are ready.

> > >

> > > Karl

> > >

> > >

> > > On Tue, Aug 4, 2015 at 1:22 PM, Antonio David Pérez Morales <

> > > adperezmorales@gmail.com> wrote:

> > >

> > > > Hi guys

> > > >

> > > > Following the work already done in the Confluence connector, I have

> > > > developed some tests for the Authority connector and also I have

> fixed

> > > and

> > > > improved the tests related to the repository connector because I

> > changed

> > > > the check to know if a document needs to be reindexed or not, so I

> have

> > > > modified the tests accordingly to avoid problems and in order to

> tests

> > > the

> > > > behavior properly.

> > > >

> > > > Regarding the documentation and after talked with Rafa, I have

> started

> > > with

> > > > the README.md file and I have also put configuration screenshots on

> it

> > > > using embedded images (unluckily if you go to GitHub, the embedded

> > images

> > > > are not rendered I don't know why, but  using the Markdown content

> in a

> > > > Markdown syntax viewer, the images are properly shown). We have

> agreed

> > > that

> > > > when the connectors are ready to be contributed, then we can port the

> > > > documentation to the format expected by Manifold framework.

> > > >

> > > > As always, if you have any comments or suggestions for improvements

> or

> > > new

> > > > requirements, please let me know.

> > > >

> > > > Regards

> > > >

> > > >

> > > >

> > > >

> > > > 2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:

> > > >

> > > > > Hi Antonio,

> > > > >

> > > > >

> > > > > Sorry I have been out for a couple of days, so I couldn't answer

> > until

> > > > > today.

> > > > >

> > > > >

> > > > >

> > > > >

> > > > >

> > > > >

> > > > > —

> > > > > Enviado desde Mailbox

> > > > >

> > > > >

> > > > >

> > > > > El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez

> > Morales <

> > > > > adperezmorales@gmail.com> escribió:

> > > > > Hi devs

> > > > >

> > > > >

> > > > > I continue working on the Authority connector for Confluence [1].

> > > > >

> > > > > Basically I'm finishing the tests and doing some improvements. I

> > would

> > > > like

> > > > >

> > > > > to do some UI tests (like Active Directory connector does), so I

> will

> > > try

> > > > >

> > > > > to include them along with unit tests with mocks.

> > > > >

> > > > > In parallel, I'm going to start with the documentation to be ready

> > for

> > > > the

> > > > >

> > > > > contribution to Manifold.

> > > > >

> > > > > ​

> > > > >

> > > > > ​Fine. I will take a look to the GitHub project to check the

> > authority

> > > > > connector progress. Actually this one should be easier and faster

> to

> > > test

> > > > > for me.

> > > > >

> > > > >

> > > > >

> > > > >

> > > > >

> > > > >

> > > > > Moreover, right now, I keep separated both repository and authority

> > > > >

> > > > > connectors (different modules in the maven project) but once

> > finished,

> > > I

> > > > >

> > > > > think it is better to join them into only one, merging the clients

> > used

> > > > to

> > > > >

> > > > > interact with Confluence, and reusing some model classes. I will do

> > it

> > > as

> > > > >

> > > > > soon as I finish the tests and some improvements and in parallel

> with

> > > the

> > > > >

> > > > > documentation.

> > > > >

> > > > >

> > > > >

> > > > >

> > > > >

> > > > > ​

> > > > >

> > > > > ​Yeah, there are probably some code that could be merged. If the

> > > > > configuration is barely the same for both clients, they should be

> > > merged

> > > > in

> > > > > a single client module. For now, you can keep it at one of the

> > > connectors

> > > > > packages and cross the reference in the other one. As soon as you

> > > finish

> > > > > the authority connector I will take a look to see if we can merge

> > > > something

> > > > > else.

> > > > >

> > > > >

> > > > >

> > > > >

> > > > > As always, if you have any suggestions, please let me know and I

> will

> > > try

> > > > >

> > > > > to include it in the current code.

> > > > >

> > > > >

> > > > > Regards

> > > > >

> > > > >

> > > > > [1]

> > > > >

> > > > >

> > > > >

> > > >

> > >

> >

> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop

> > > > >

> > > > >

> > > > > 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:

> > > > >

> > > > >

> > > > > > The feature was developed for a user that was trying to index

> > > documents

> > > > >

> > > > > > by creating multiple XML files, each containing a specific set of

> > > > >

> > > > > > documents. But we don't have any supported connectors yet that

> rely

> > > on

> > > > >

> > > > > > this feature.

> > > > >

> > > > > >

> > > > >

> > > > > > Thanks,

> > > > >

> > > > > > Karl

> > > > >

> > > > > >

> > > > >

> > > > > > Sent from my Windows Phone

> > > > >

> > > > > > From: Antonio David Pérez Morales

> > > > >

> > > > > > Sent: 7/11/2015 3:55 AM

> > > > >

> > > > > > To: dev@manifoldcf.apache.org

> > > > >

> > > > > > Subject: Re: [GSoC] Confluence Authority Connector

> > > > >

> > > > > > Hi Karl

> > > > >

> > > > > >

> > > > >

> > > > > > Thanks for your response.

> > > > >

> > > > > >

> > > > >

> > > > > > No, I'm not using document components, so I will change the call

> to

> > > > >

> > > > > > checkDocumentNeedsReindexing.

> > > > >

> > > > > >

> > > > >

> > > > > > Only for curiosity, do you have any example showing how to use

> > > document

> > > > >

> > > > > > components with the RepositoryDocument model used in Manifold?

> > > > >

> > > > > >

> > > > >

> > > > > > Regards

> > > > >

> > > > > >

> > > > >

> > > > > > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:

> > > > >

> > > > > >

> > > > >

> > > > > > > bq. Karl one question about repository connector document

> > > retainment.

> > > > > I'm

> > > > >

> > > > > > > using

> > > > >

> > > > > > > the activities.retainAllComponentDocument(docId) method of

> > > > >

> > > > > > IProcessActivity

> > > > >

> > > > > > > to retain the document and avoid to be reindexed.

> > > > >

> > > > > > >

> > > > >

> > > > > > > Hi Antonio,

> > > > >

> > > > > > >

> > > > >

> > > > > > > checkDocumentNeedsReindexing() is the standard way of

> determining

> > > > >

> > > > > > whether a

> > > > >

> > > > > > > document needs to be reindexed or not.  You can follow the

> > template

> > > > >

> > > > > > present

> > > > >

> > > > > > > in multiple other connectors that use this method.

> > > > >

> > > > > > >

> > > > >

> > > > > > > retainAllComponentDocuments() is basically a shorthand way of

> > > > > determining

> > > > >

> > > > > > > the disposition of document components.  I don't believe you

> even

> > > use

> > > > >

> > > > > > > document components in the confluence connector, although I

> could

> > > be

> > > > >

> > > > > > wrong

> > > > >

> > > > > > > about that?  In general, if your connector doesn't do anything

> > with

> > > > >

> > > > > > > components at all, you will not need to call this method.

> > > > >

> > > > > > >

> > > > >

> > > > > > > Thanks,

> > > > >

> > > > > > > Karl

> > > > >

> > > > > > >

> > > > >

> > > > > > >

> > > > >

> > > > > > >

> > > > >

> > > > > > >

> > > > >

> > > > > > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez Morales <

> > > > >

> > > > > > > adperezmorales@gmail.com> wrote:

> > > > >

> > > > > > >

> > > > >

> > > > > > > > Hi devs

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > Continuing with the work, I have developed a first version of

> > the

> > > > >

> > > > > > > > Confluence Authority connector aligned with the ACLs used by

> > the

> > > > >

> > > > > > > Confluence

> > > > >

> > > > > > > > Repository Connector.

> > > > >

> > > > > > > > I have fixed and improved some parts in the repository

> > connector

> > > > and

> > > > >

> > > > > > > > committed the code and also I have updated the Jira issue [1]

> > to

> > > > keep

> > > > >

> > > > > > > track

> > > > >

> > > > > > > > of the new additions.

> > > > >

> > > > > > > > Both branches have been merged into master and I have

> created a

> > > new

> > > > >

> > > > > > > develop

> > > > >

> > > > > > > > branch [2] from it, so further improvements and fixes can be

> > done

> > > > > from

> > > > >

> > > > > > > this

> > > > >

> > > > > > > > branch and then merged into master.

> > > > >

> > > > > > > > Right now, the connectors are in different maven modules and

> > > maybe

> > > > in

> > > > >

> > > > > > the

> > > > >

> > > > > > > > future I can merge into one single maven project without

> > modules,

> > > > so

> > > > >

> > > > > > that

> > > > >

> > > > > > > > with one jar file we will have both connectors ready to be

> used

> > > in

> > > > >

> > > > > > > > Manifold.

> > > > >

> > > > > > > > As of now, I will work in the Authority connector

> improvements

> > > and

> > > > >

> > > > > > tests

> > > > >

> > > > > > > > and also I will do all the things Rafa (or you guys) can

> report

> > > > >

> > > > > > regarding

> > > > >

> > > > > > > > the functionality of the connectors.

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > Karl one question about repository connector document

> > retainment.

> > > > I'm

> > > > >

> > > > > > > using

> > > > >

> > > > > > > > the activities.retainAllComponentDocument(docId) method of

> > > > >

> > > > > > > IProcessActivity

> > > > >

> > > > > > > > to retain the document and avoid to be reindexed.

> > > > >

> > > > > > > > Rafa, while checking and reviewing the code, noticed that

> other

> > > > >

> > > > > > > connectors

> > > > >

> > > > > > > > are using the

> checkDocumentNeedsReindexing(documentIdentifier,

> > > > >

> > > > > > > > newVersionString) method also from IProcessActivity. I

> checked

> > > the

> > > > > code

> > > > >

> > > > > > > > from both methods and internally they act differently. Is it

> > fine

> > > > to

> > > > >

> > > > > > use

> > > > >

> > > > > > > > the retainAllComponentDocument or it is better to switch to

> > > > >

> > > > > > > > checkDocumentNeedsReindexing one?

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > As always, if you have suggestions about improvements or more

> > > > things

> > > > >

> > > > > > > which

> > > > >

> > > > > > > > can be done for these connectors, please let me know.

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > Regards

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161

> > > > >

> > > > > > > > [2]

> > > > >

> > > > > > > >

> > > > >

> > > > > > > >

> > > > >

> > > > > > >

> > > > >

> > > > > >

> > > > >

> > > >

> > >

> >

> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop

> > > > >

> > > > > > > >

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:

> > > > >

> > > > > > > >

> > > > >

> > > > > > > > > Hi Antonio,

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > Thanks for the new update. Let me make some comments

> inline:

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez

> Morales <

> > > > >

> > > > > > > > > adperezmorales@gmail.com> wrote:

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > > Hi devs

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > After the midterm, I continue with the proposed work and

> I

> > > > > already

> > > > >

> > > > > > > > > started

> > > > >

> > > > > > > > > > to work on the second part of the project, which is the

> > > > > development

> > > > >

> > > > > > > of

> > > > >

> > > > > > > > an

> > > > >

> > > > > > > > > > Authority Connector for Confluence.

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > I have created a new branch [1] for that in my GitHub

> > account

> > > > > and I

> > > > >

> > > > > > > > > already

> > > > >

> > > > > > > > > > committed the basic structure of the connector along with

> > the

> > > > > code

> > > > >

> > > > > > > > > related

> > > > >

> > > > > > > > > > to Confluence instance configuration. After that I will

> > > develop

> > > > > the

> > > > >

> > > > > > > > > proper

> > > > >

> > > > > > > > > > strategy to get the ACLs for the user as stated in the

> > > > proposal.

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > For this case, I have been evaluating the two scenarios

> > > > contained

> > > > >

> > > > > > in

> > > > >

> > > > > > > > the

> > > > >

> > > > > > > > > > proposal and I will start developing the space-based

> > > > permissions

> > > > >

> > > > > > > which

> > > > >

> > > > > > > > > > requires no customizations of Confluence instance (coarse

> > > > grain).

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > I made some tests with Confluence APIs trying to go more

> > > > > fine-grain

> > > > >

> > > > > > > > using

> > > > >

> > > > > > > > > > the user groups but there is not endpoint method to get

> the

> > > > > groups

> > > > >

> > > > > > > that

> > > > >

> > > > > > > > > can

> > > > >

> > > > > > > > > > view a specific page. So in the end, I think the

> > space-based

> > > > >

> > > > > > > permission

> > > > >

> > > > > > > > > is

> > > > >

> > > > > > > > > > a good solution, because implementing a Confluence plugin

> > for

> > > > > that

> > > > >

> > > > > > to

> > > > >

> > > > > > > > > cover

> > > > >

> > > > > > > > > > some very specific use cases I think most people won't be

> > > > willing

> > > > >

> > > > > > to

> > > > >

> > > > > > > > > patch

> > > > >

> > > > > > > > > > Confluence only for those specific use cases (for example

> > > > where a

> > > > >

> > > > > > > > person

> > > > >

> > > > > > > > > is

> > > > >

> > > > > > > > > > not allowed to view a space but it is allowed to view a

> > > single

> > > > > page

> > > > >

> > > > > > > in

> > > > >

> > > > > > > > > that

> > > > >

> > > > > > > > > > space).

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > Let's focus right now on permissions at space level. As you

> > > said,

> > > > > to

> > > > >

> > > > > > > > patch

> > > > >

> > > > > > > > > confluence API is not  a good solution, specially for those

> > > using

> > > > > it

> > > > >

> > > > > > in

> > > > >

> > > > > > > > the

> > > > >

> > > > > > > > > Cloud. If in the future they extend the API with more fine

> > > > grained

> > > > >

> > > > > > > > > permissions approach, we can always update later the

> > connector.

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > I have also updated the README file putting a guide to

> > > > configure

> > > > >

> > > > > > both

> > > > >

> > > > > > > > > > connectors using screenshots about configuration tabs for

> > the

> > > > >

> > > > > > > > connectors.

> > > > >

> > > > > > > > > > I'm using embedded images (using Data URIs syntax for

> > images)

> > > > but

> > > > >

> > > > > > it

> > > > >

> > > > > > > > > seems

> > > > >

> > > > > > > > > > they are not supported by GitHub in the README (although

> > they

> > > > are

> > > > >

> > > > > > in

> > > > >

> > > > > > > > the

> > > > >

> > > > > > > > > > code, and other Markdown viewers can show them).

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > Ok, thanks!

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > The connectors are in separated branches until I merge

> them

> > > > into

> > > > >

> > > > > > > > master.

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > Moreover, I have been talking and reviewing with Rafa

> > through

> > > > > Skype

> > > > >

> > > > > > > the

> > > > >

> > > > > > > > > > current work, and we have agreed to track all the things

> > also

> > > > in

> > > > >

> > > > > > the

> > > > >

> > > > > > > > Jira

> > > > >

> > > > > > > > > > issue (apart from these mails), so I will put the

> > > configuration

> > > > >

> > > > > > > > > screenshots

> > > > >

> > > > > > > > > > there and the links to the GitHub repositories.

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > Perfect!. Let me know when we can start testing the

> Authority

> > > > >

> > > > > > connector

> > > > >

> > > > > > > > > too. My intention is to test the whole connector in a real

> > > > >

> > > > > > environment

> > > > >

> > > > > > > > > extensively sometime before the pencil downs looking for

> > > possible

> > > > >

> > > > > > bugs,

> > > > >

> > > > > > > > > additions and so on.

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > Well done so far!

> > > > >

> > > > > > > > > Cheers,

> > > > >

> > > > > > > > > Rafa

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > Comments and suggestions are more than welcome as always.

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > Regards

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > --------

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > > [1]

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > >

> > > > >

> > > > > > >

> > > > >

> > > > > >

> > > > >

> > > >

> > >

> >

> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector

> > > > >

> > > > > > > > > >

> > > > >

> > > > > > > > >

> > > > >

> > > > > > > >

> > > > >

> > > > > > >

> > > > >

> > > > > >

> > > > >

> > > >

> > >

> >

>

Re: [GSoC] Confluence Authority Connector

Posted by Antonio David Pérez Morales <ad...@gmail.com>.
Hi Karl

Perfect. Once I finish some things and Rafa finishes his tests, I will
start with that and I will do some tests adding the whole connector into
ManifoldCF structure.
For that, I think it will be useful to merge both Maven modules in order to
have only one project (jar) providing both connectors, but let's wait until
Rafa's response.

Regards




2015-08-05 13:06 GMT+02:00 Karl Wright <da...@gmail.com>:

> Hi Antonio,
>
> Only ManifoldCF committers can import the project into Apache svn.
> However, before that happens, you will need to insure the following:
> (1) Directory structure is compatible with connectors under the
> "connectors" area of ManifoldCF
> (2) There is both a pom.xml and a build.xml that work
> (3) Any additional imports that you need for building using Ant have
> license research done so that we know they can be included in the Apache
> distribution
>
> Thanks!
> Karl
>
>
> On Wed, Aug 5, 2015 at 5:52 AM, Antonio David Pérez Morales <
> adperezmorales@gmail.com> wrote:
>
> > Hi Karl
> >
> > After talked with Rafa yesterday, while I'm working on some improvements
> > and fixes, Rafa is testing the connector against some Confluence
> instances
> > (on premise and cloud) to check the connector's behavior.
> > After that, we can think to merge both connectors into only one project
> > (right now it is a Maven project with two maven modules, one for
> repository
> > connector and one for authority connector) if needed and then move
> towards
> > importing it into Apache SVN.
> >
> > I don't know if I can do that step or else only Manifold committers can
> do
> > that. If the second, I can help anyone to move the project into Apache
> SVN.
> >
> > Regards
> >
> >
> >
> > 2015-08-04 20:25 GMT+02:00 Karl Wright <da...@gmail.com>:
> >
> > > If you feel that this connector is largely complete, we can move
> towards
> > > importing it into Apache svn.  Please let us know when you are ready.
> > >
> > > Karl
> > >
> > >
> > > On Tue, Aug 4, 2015 at 1:22 PM, Antonio David Pérez Morales <
> > > adperezmorales@gmail.com> wrote:
> > >
> > > > Hi guys
> > > >
> > > > Following the work already done in the Confluence connector, I have
> > > > developed some tests for the Authority connector and also I have
> fixed
> > > and
> > > > improved the tests related to the repository connector because I
> > changed
> > > > the check to know if a document needs to be reindexed or not, so I
> have
> > > > modified the tests accordingly to avoid problems and in order to
> tests
> > > the
> > > > behavior properly.
> > > >
> > > > Regarding the documentation and after talked with Rafa, I have
> started
> > > with
> > > > the README.md file and I have also put configuration screenshots on
> it
> > > > using embedded images (unluckily if you go to GitHub, the embedded
> > images
> > > > are not rendered I don't know why, but  using the Markdown content
> in a
> > > > Markdown syntax viewer, the images are properly shown). We have
> agreed
> > > that
> > > > when the connectors are ready to be contributed, then we can port the
> > > > documentation to the format expected by Manifold framework.
> > > >
> > > > As always, if you have any comments or suggestions for improvements
> or
> > > new
> > > > requirements, please let me know.
> > > >
> > > > Regards
> > > >
> > > >
> > > >
> > > >
> > > > 2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:
> > > >
> > > > > Hi Antonio,
> > > > >
> > > > >
> > > > > Sorry I have been out for a couple of days, so I couldn't answer
> > until
> > > > > today.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > —
> > > > > Enviado desde Mailbox
> > > > >
> > > > >
> > > > >
> > > > > El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez
> > Morales <
> > > > > adperezmorales@gmail.com> escribió:
> > > > > Hi devs
> > > > >
> > > > >
> > > > > I continue working on the Authority connector for Confluence [1].
> > > > >
> > > > > Basically I'm finishing the tests and doing some improvements. I
> > would
> > > > like
> > > > >
> > > > > to do some UI tests (like Active Directory connector does), so I
> will
> > > try
> > > > >
> > > > > to include them along with unit tests with mocks.
> > > > >
> > > > > In parallel, I'm going to start with the documentation to be ready
> > for
> > > > the
> > > > >
> > > > > contribution to Manifold.
> > > > >
> > > > > ​
> > > > >
> > > > > ​Fine. I will take a look to the GitHub project to check the
> > authority
> > > > > connector progress. Actually this one should be easier and faster
> to
> > > test
> > > > > for me.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > Moreover, right now, I keep separated both repository and authority
> > > > >
> > > > > connectors (different modules in the maven project) but once
> > finished,
> > > I
> > > > >
> > > > > think it is better to join them into only one, merging the clients
> > used
> > > > to
> > > > >
> > > > > interact with Confluence, and reusing some model classes. I will do
> > it
> > > as
> > > > >
> > > > > soon as I finish the tests and some improvements and in parallel
> with
> > > the
> > > > >
> > > > > documentation.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > ​
> > > > >
> > > > > ​Yeah, there are probably some code that could be merged. If the
> > > > > configuration is barely the same for both clients, they should be
> > > merged
> > > > in
> > > > > a single client module. For now, you can keep it at one of the
> > > connectors
> > > > > packages and cross the reference in the other one. As soon as you
> > > finish
> > > > > the authority connector I will take a look to see if we can merge
> > > > something
> > > > > else.
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > As always, if you have any suggestions, please let me know and I
> will
> > > try
> > > > >
> > > > > to include it in the current code.
> > > > >
> > > > >
> > > > > Regards
> > > > >
> > > > >
> > > > > [1]
> > > > >
> > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> > > > >
> > > > >
> > > > > 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:
> > > > >
> > > > >
> > > > > > The feature was developed for a user that was trying to index
> > > documents
> > > > >
> > > > > > by creating multiple XML files, each containing a specific set of
> > > > >
> > > > > > documents. But we don't have any supported connectors yet that
> rely
> > > on
> > > > >
> > > > > > this feature.
> > > > >
> > > > > >
> > > > >
> > > > > > Thanks,
> > > > >
> > > > > > Karl
> > > > >
> > > > > >
> > > > >
> > > > > > Sent from my Windows Phone
> > > > >
> > > > > > From: Antonio David Pérez Morales
> > > > >
> > > > > > Sent: 7/11/2015 3:55 AM
> > > > >
> > > > > > To: dev@manifoldcf.apache.org
> > > > >
> > > > > > Subject: Re: [GSoC] Confluence Authority Connector
> > > > >
> > > > > > Hi Karl
> > > > >
> > > > > >
> > > > >
> > > > > > Thanks for your response.
> > > > >
> > > > > >
> > > > >
> > > > > > No, I'm not using document components, so I will change the call
> to
> > > > >
> > > > > > checkDocumentNeedsReindexing.
> > > > >
> > > > > >
> > > > >
> > > > > > Only for curiosity, do you have any example showing how to use
> > > document
> > > > >
> > > > > > components with the RepositoryDocument model used in Manifold?
> > > > >
> > > > > >
> > > > >
> > > > > > Regards
> > > > >
> > > > > >
> > > > >
> > > > > > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:
> > > > >
> > > > > >
> > > > >
> > > > > > > bq. Karl one question about repository connector document
> > > retainment.
> > > > > I'm
> > > > >
> > > > > > > using
> > > > >
> > > > > > > the activities.retainAllComponentDocument(docId) method of
> > > > >
> > > > > > IProcessActivity
> > > > >
> > > > > > > to retain the document and avoid to be reindexed.
> > > > >
> > > > > > >
> > > > >
> > > > > > > Hi Antonio,
> > > > >
> > > > > > >
> > > > >
> > > > > > > checkDocumentNeedsReindexing() is the standard way of
> determining
> > > > >
> > > > > > whether a
> > > > >
> > > > > > > document needs to be reindexed or not.  You can follow the
> > template
> > > > >
> > > > > > present
> > > > >
> > > > > > > in multiple other connectors that use this method.
> > > > >
> > > > > > >
> > > > >
> > > > > > > retainAllComponentDocuments() is basically a shorthand way of
> > > > > determining
> > > > >
> > > > > > > the disposition of document components.  I don't believe you
> even
> > > use
> > > > >
> > > > > > > document components in the confluence connector, although I
> could
> > > be
> > > > >
> > > > > > wrong
> > > > >
> > > > > > > about that?  In general, if your connector doesn't do anything
> > with
> > > > >
> > > > > > > components at all, you will not need to call this method.
> > > > >
> > > > > > >
> > > > >
> > > > > > > Thanks,
> > > > >
> > > > > > > Karl
> > > > >
> > > > > > >
> > > > >
> > > > > > >
> > > > >
> > > > > > >
> > > > >
> > > > > > >
> > > > >
> > > > > > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez Morales <
> > > > >
> > > > > > > adperezmorales@gmail.com> wrote:
> > > > >
> > > > > > >
> > > > >
> > > > > > > > Hi devs
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > Continuing with the work, I have developed a first version of
> > the
> > > > >
> > > > > > > > Confluence Authority connector aligned with the ACLs used by
> > the
> > > > >
> > > > > > > Confluence
> > > > >
> > > > > > > > Repository Connector.
> > > > >
> > > > > > > > I have fixed and improved some parts in the repository
> > connector
> > > > and
> > > > >
> > > > > > > > committed the code and also I have updated the Jira issue [1]
> > to
> > > > keep
> > > > >
> > > > > > > track
> > > > >
> > > > > > > > of the new additions.
> > > > >
> > > > > > > > Both branches have been merged into master and I have
> created a
> > > new
> > > > >
> > > > > > > develop
> > > > >
> > > > > > > > branch [2] from it, so further improvements and fixes can be
> > done
> > > > > from
> > > > >
> > > > > > > this
> > > > >
> > > > > > > > branch and then merged into master.
> > > > >
> > > > > > > > Right now, the connectors are in different maven modules and
> > > maybe
> > > > in
> > > > >
> > > > > > the
> > > > >
> > > > > > > > future I can merge into one single maven project without
> > modules,
> > > > so
> > > > >
> > > > > > that
> > > > >
> > > > > > > > with one jar file we will have both connectors ready to be
> used
> > > in
> > > > >
> > > > > > > > Manifold.
> > > > >
> > > > > > > > As of now, I will work in the Authority connector
> improvements
> > > and
> > > > >
> > > > > > tests
> > > > >
> > > > > > > > and also I will do all the things Rafa (or you guys) can
> report
> > > > >
> > > > > > regarding
> > > > >
> > > > > > > > the functionality of the connectors.
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > Karl one question about repository connector document
> > retainment.
> > > > I'm
> > > > >
> > > > > > > using
> > > > >
> > > > > > > > the activities.retainAllComponentDocument(docId) method of
> > > > >
> > > > > > > IProcessActivity
> > > > >
> > > > > > > > to retain the document and avoid to be reindexed.
> > > > >
> > > > > > > > Rafa, while checking and reviewing the code, noticed that
> other
> > > > >
> > > > > > > connectors
> > > > >
> > > > > > > > are using the
> checkDocumentNeedsReindexing(documentIdentifier,
> > > > >
> > > > > > > > newVersionString) method also from IProcessActivity. I
> checked
> > > the
> > > > > code
> > > > >
> > > > > > > > from both methods and internally they act differently. Is it
> > fine
> > > > to
> > > > >
> > > > > > use
> > > > >
> > > > > > > > the retainAllComponentDocument or it is better to switch to
> > > > >
> > > > > > > > checkDocumentNeedsReindexing one?
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > As always, if you have suggestions about improvements or more
> > > > things
> > > > >
> > > > > > > which
> > > > >
> > > > > > > > can be done for these connectors, please let me know.
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > Regards
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
> > > > >
> > > > > > > > [2]
> > > > >
> > > > > > > >
> > > > >
> > > > > > > >
> > > > >
> > > > > > >
> > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> > > > >
> > > > > > > >
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:
> > > > >
> > > > > > > >
> > > > >
> > > > > > > > > Hi Antonio,
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > Thanks for the new update. Let me make some comments
> inline:
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez
> Morales <
> > > > >
> > > > > > > > > adperezmorales@gmail.com> wrote:
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > > Hi devs
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > After the midterm, I continue with the proposed work and
> I
> > > > > already
> > > > >
> > > > > > > > > started
> > > > >
> > > > > > > > > > to work on the second part of the project, which is the
> > > > > development
> > > > >
> > > > > > > of
> > > > >
> > > > > > > > an
> > > > >
> > > > > > > > > > Authority Connector for Confluence.
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > I have created a new branch [1] for that in my GitHub
> > account
> > > > > and I
> > > > >
> > > > > > > > > already
> > > > >
> > > > > > > > > > committed the basic structure of the connector along with
> > the
> > > > > code
> > > > >
> > > > > > > > > related
> > > > >
> > > > > > > > > > to Confluence instance configuration. After that I will
> > > develop
> > > > > the
> > > > >
> > > > > > > > > proper
> > > > >
> > > > > > > > > > strategy to get the ACLs for the user as stated in the
> > > > proposal.
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > For this case, I have been evaluating the two scenarios
> > > > contained
> > > > >
> > > > > > in
> > > > >
> > > > > > > > the
> > > > >
> > > > > > > > > > proposal and I will start developing the space-based
> > > > permissions
> > > > >
> > > > > > > which
> > > > >
> > > > > > > > > > requires no customizations of Confluence instance (coarse
> > > > grain).
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > I made some tests with Confluence APIs trying to go more
> > > > > fine-grain
> > > > >
> > > > > > > > using
> > > > >
> > > > > > > > > > the user groups but there is not endpoint method to get
> the
> > > > > groups
> > > > >
> > > > > > > that
> > > > >
> > > > > > > > > can
> > > > >
> > > > > > > > > > view a specific page. So in the end, I think the
> > space-based
> > > > >
> > > > > > > permission
> > > > >
> > > > > > > > > is
> > > > >
> > > > > > > > > > a good solution, because implementing a Confluence plugin
> > for
> > > > > that
> > > > >
> > > > > > to
> > > > >
> > > > > > > > > cover
> > > > >
> > > > > > > > > > some very specific use cases I think most people won't be
> > > > willing
> > > > >
> > > > > > to
> > > > >
> > > > > > > > > patch
> > > > >
> > > > > > > > > > Confluence only for those specific use cases (for example
> > > > where a
> > > > >
> > > > > > > > person
> > > > >
> > > > > > > > > is
> > > > >
> > > > > > > > > > not allowed to view a space but it is allowed to view a
> > > single
> > > > > page
> > > > >
> > > > > > > in
> > > > >
> > > > > > > > > that
> > > > >
> > > > > > > > > > space).
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > Let's focus right now on permissions at space level. As you
> > > said,
> > > > > to
> > > > >
> > > > > > > > patch
> > > > >
> > > > > > > > > confluence API is not  a good solution, specially for those
> > > using
> > > > > it
> > > > >
> > > > > > in
> > > > >
> > > > > > > > the
> > > > >
> > > > > > > > > Cloud. If in the future they extend the API with more fine
> > > > grained
> > > > >
> > > > > > > > > permissions approach, we can always update later the
> > connector.
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > I have also updated the README file putting a guide to
> > > > configure
> > > > >
> > > > > > both
> > > > >
> > > > > > > > > > connectors using screenshots about configuration tabs for
> > the
> > > > >
> > > > > > > > connectors.
> > > > >
> > > > > > > > > > I'm using embedded images (using Data URIs syntax for
> > images)
> > > > but
> > > > >
> > > > > > it
> > > > >
> > > > > > > > > seems
> > > > >
> > > > > > > > > > they are not supported by GitHub in the README (although
> > they
> > > > are
> > > > >
> > > > > > in
> > > > >
> > > > > > > > the
> > > > >
> > > > > > > > > > code, and other Markdown viewers can show them).
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > Ok, thanks!
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > The connectors are in separated branches until I merge
> them
> > > > into
> > > > >
> > > > > > > > master.
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > Moreover, I have been talking and reviewing with Rafa
> > through
> > > > > Skype
> > > > >
> > > > > > > the
> > > > >
> > > > > > > > > > current work, and we have agreed to track all the things
> > also
> > > > in
> > > > >
> > > > > > the
> > > > >
> > > > > > > > Jira
> > > > >
> > > > > > > > > > issue (apart from these mails), so I will put the
> > > configuration
> > > > >
> > > > > > > > > screenshots
> > > > >
> > > > > > > > > > there and the links to the GitHub repositories.
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > Perfect!. Let me know when we can start testing the
> Authority
> > > > >
> > > > > > connector
> > > > >
> > > > > > > > > too. My intention is to test the whole connector in a real
> > > > >
> > > > > > environment
> > > > >
> > > > > > > > > extensively sometime before the pencil downs looking for
> > > possible
> > > > >
> > > > > > bugs,
> > > > >
> > > > > > > > > additions and so on.
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > Well done so far!
> > > > >
> > > > > > > > > Cheers,
> > > > >
> > > > > > > > > Rafa
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > Comments and suggestions are more than welcome as always.
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > Regards
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > --------
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > > [1]
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > >
> > > > >
> > > > > > >
> > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector
> > > > >
> > > > > > > > > >
> > > > >
> > > > > > > > >
> > > > >
> > > > > > > >
> > > > >
> > > > > > >
> > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Re: [GSoC] Confluence Authority Connector

Posted by Karl Wright <da...@gmail.com>.
Hi Antonio,

Only ManifoldCF committers can import the project into Apache svn.
However, before that happens, you will need to insure the following:
(1) Directory structure is compatible with connectors under the
"connectors" area of ManifoldCF
(2) There is both a pom.xml and a build.xml that work
(3) Any additional imports that you need for building using Ant have
license research done so that we know they can be included in the Apache
distribution

Thanks!
Karl


On Wed, Aug 5, 2015 at 5:52 AM, Antonio David Pérez Morales <
adperezmorales@gmail.com> wrote:

> Hi Karl
>
> After talked with Rafa yesterday, while I'm working on some improvements
> and fixes, Rafa is testing the connector against some Confluence instances
> (on premise and cloud) to check the connector's behavior.
> After that, we can think to merge both connectors into only one project
> (right now it is a Maven project with two maven modules, one for repository
> connector and one for authority connector) if needed and then move towards
> importing it into Apache SVN.
>
> I don't know if I can do that step or else only Manifold committers can do
> that. If the second, I can help anyone to move the project into Apache SVN.
>
> Regards
>
>
>
> 2015-08-04 20:25 GMT+02:00 Karl Wright <da...@gmail.com>:
>
> > If you feel that this connector is largely complete, we can move towards
> > importing it into Apache svn.  Please let us know when you are ready.
> >
> > Karl
> >
> >
> > On Tue, Aug 4, 2015 at 1:22 PM, Antonio David Pérez Morales <
> > adperezmorales@gmail.com> wrote:
> >
> > > Hi guys
> > >
> > > Following the work already done in the Confluence connector, I have
> > > developed some tests for the Authority connector and also I have fixed
> > and
> > > improved the tests related to the repository connector because I
> changed
> > > the check to know if a document needs to be reindexed or not, so I have
> > > modified the tests accordingly to avoid problems and in order to tests
> > the
> > > behavior properly.
> > >
> > > Regarding the documentation and after talked with Rafa, I have started
> > with
> > > the README.md file and I have also put configuration screenshots on it
> > > using embedded images (unluckily if you go to GitHub, the embedded
> images
> > > are not rendered I don't know why, but  using the Markdown content in a
> > > Markdown syntax viewer, the images are properly shown). We have agreed
> > that
> > > when the connectors are ready to be contributed, then we can port the
> > > documentation to the format expected by Manifold framework.
> > >
> > > As always, if you have any comments or suggestions for improvements or
> > new
> > > requirements, please let me know.
> > >
> > > Regards
> > >
> > >
> > >
> > >
> > > 2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:
> > >
> > > > Hi Antonio,
> > > >
> > > >
> > > > Sorry I have been out for a couple of days, so I couldn't answer
> until
> > > > today.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > —
> > > > Enviado desde Mailbox
> > > >
> > > >
> > > >
> > > > El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez
> Morales <
> > > > adperezmorales@gmail.com> escribió:
> > > > Hi devs
> > > >
> > > >
> > > > I continue working on the Authority connector for Confluence [1].
> > > >
> > > > Basically I'm finishing the tests and doing some improvements. I
> would
> > > like
> > > >
> > > > to do some UI tests (like Active Directory connector does), so I will
> > try
> > > >
> > > > to include them along with unit tests with mocks.
> > > >
> > > > In parallel, I'm going to start with the documentation to be ready
> for
> > > the
> > > >
> > > > contribution to Manifold.
> > > >
> > > > ​
> > > >
> > > > ​Fine. I will take a look to the GitHub project to check the
> authority
> > > > connector progress. Actually this one should be easier and faster to
> > test
> > > > for me.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > Moreover, right now, I keep separated both repository and authority
> > > >
> > > > connectors (different modules in the maven project) but once
> finished,
> > I
> > > >
> > > > think it is better to join them into only one, merging the clients
> used
> > > to
> > > >
> > > > interact with Confluence, and reusing some model classes. I will do
> it
> > as
> > > >
> > > > soon as I finish the tests and some improvements and in parallel with
> > the
> > > >
> > > > documentation.
> > > >
> > > >
> > > >
> > > >
> > > >
> > > > ​
> > > >
> > > > ​Yeah, there are probably some code that could be merged. If the
> > > > configuration is barely the same for both clients, they should be
> > merged
> > > in
> > > > a single client module. For now, you can keep it at one of the
> > connectors
> > > > packages and cross the reference in the other one. As soon as you
> > finish
> > > > the authority connector I will take a look to see if we can merge
> > > something
> > > > else.
> > > >
> > > >
> > > >
> > > >
> > > > As always, if you have any suggestions, please let me know and I will
> > try
> > > >
> > > > to include it in the current code.
> > > >
> > > >
> > > > Regards
> > > >
> > > >
> > > > [1]
> > > >
> > > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> > > >
> > > >
> > > > 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:
> > > >
> > > >
> > > > > The feature was developed for a user that was trying to index
> > documents
> > > >
> > > > > by creating multiple XML files, each containing a specific set of
> > > >
> > > > > documents. But we don't have any supported connectors yet that rely
> > on
> > > >
> > > > > this feature.
> > > >
> > > > >
> > > >
> > > > > Thanks,
> > > >
> > > > > Karl
> > > >
> > > > >
> > > >
> > > > > Sent from my Windows Phone
> > > >
> > > > > From: Antonio David Pérez Morales
> > > >
> > > > > Sent: 7/11/2015 3:55 AM
> > > >
> > > > > To: dev@manifoldcf.apache.org
> > > >
> > > > > Subject: Re: [GSoC] Confluence Authority Connector
> > > >
> > > > > Hi Karl
> > > >
> > > > >
> > > >
> > > > > Thanks for your response.
> > > >
> > > > >
> > > >
> > > > > No, I'm not using document components, so I will change the call to
> > > >
> > > > > checkDocumentNeedsReindexing.
> > > >
> > > > >
> > > >
> > > > > Only for curiosity, do you have any example showing how to use
> > document
> > > >
> > > > > components with the RepositoryDocument model used in Manifold?
> > > >
> > > > >
> > > >
> > > > > Regards
> > > >
> > > > >
> > > >
> > > > > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:
> > > >
> > > > >
> > > >
> > > > > > bq. Karl one question about repository connector document
> > retainment.
> > > > I'm
> > > >
> > > > > > using
> > > >
> > > > > > the activities.retainAllComponentDocument(docId) method of
> > > >
> > > > > IProcessActivity
> > > >
> > > > > > to retain the document and avoid to be reindexed.
> > > >
> > > > > >
> > > >
> > > > > > Hi Antonio,
> > > >
> > > > > >
> > > >
> > > > > > checkDocumentNeedsReindexing() is the standard way of determining
> > > >
> > > > > whether a
> > > >
> > > > > > document needs to be reindexed or not.  You can follow the
> template
> > > >
> > > > > present
> > > >
> > > > > > in multiple other connectors that use this method.
> > > >
> > > > > >
> > > >
> > > > > > retainAllComponentDocuments() is basically a shorthand way of
> > > > determining
> > > >
> > > > > > the disposition of document components.  I don't believe you even
> > use
> > > >
> > > > > > document components in the confluence connector, although I could
> > be
> > > >
> > > > > wrong
> > > >
> > > > > > about that?  In general, if your connector doesn't do anything
> with
> > > >
> > > > > > components at all, you will not need to call this method.
> > > >
> > > > > >
> > > >
> > > > > > Thanks,
> > > >
> > > > > > Karl
> > > >
> > > > > >
> > > >
> > > > > >
> > > >
> > > > > >
> > > >
> > > > > >
> > > >
> > > > > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez Morales <
> > > >
> > > > > > adperezmorales@gmail.com> wrote:
> > > >
> > > > > >
> > > >
> > > > > > > Hi devs
> > > >
> > > > > > >
> > > >
> > > > > > > Continuing with the work, I have developed a first version of
> the
> > > >
> > > > > > > Confluence Authority connector aligned with the ACLs used by
> the
> > > >
> > > > > > Confluence
> > > >
> > > > > > > Repository Connector.
> > > >
> > > > > > > I have fixed and improved some parts in the repository
> connector
> > > and
> > > >
> > > > > > > committed the code and also I have updated the Jira issue [1]
> to
> > > keep
> > > >
> > > > > > track
> > > >
> > > > > > > of the new additions.
> > > >
> > > > > > > Both branches have been merged into master and I have created a
> > new
> > > >
> > > > > > develop
> > > >
> > > > > > > branch [2] from it, so further improvements and fixes can be
> done
> > > > from
> > > >
> > > > > > this
> > > >
> > > > > > > branch and then merged into master.
> > > >
> > > > > > > Right now, the connectors are in different maven modules and
> > maybe
> > > in
> > > >
> > > > > the
> > > >
> > > > > > > future I can merge into one single maven project without
> modules,
> > > so
> > > >
> > > > > that
> > > >
> > > > > > > with one jar file we will have both connectors ready to be used
> > in
> > > >
> > > > > > > Manifold.
> > > >
> > > > > > > As of now, I will work in the Authority connector improvements
> > and
> > > >
> > > > > tests
> > > >
> > > > > > > and also I will do all the things Rafa (or you guys) can report
> > > >
> > > > > regarding
> > > >
> > > > > > > the functionality of the connectors.
> > > >
> > > > > > >
> > > >
> > > > > > > Karl one question about repository connector document
> retainment.
> > > I'm
> > > >
> > > > > > using
> > > >
> > > > > > > the activities.retainAllComponentDocument(docId) method of
> > > >
> > > > > > IProcessActivity
> > > >
> > > > > > > to retain the document and avoid to be reindexed.
> > > >
> > > > > > > Rafa, while checking and reviewing the code, noticed that other
> > > >
> > > > > > connectors
> > > >
> > > > > > > are using the checkDocumentNeedsReindexing(documentIdentifier,
> > > >
> > > > > > > newVersionString) method also from IProcessActivity. I checked
> > the
> > > > code
> > > >
> > > > > > > from both methods and internally they act differently. Is it
> fine
> > > to
> > > >
> > > > > use
> > > >
> > > > > > > the retainAllComponentDocument or it is better to switch to
> > > >
> > > > > > > checkDocumentNeedsReindexing one?
> > > >
> > > > > > >
> > > >
> > > > > > > As always, if you have suggestions about improvements or more
> > > things
> > > >
> > > > > > which
> > > >
> > > > > > > can be done for these connectors, please let me know.
> > > >
> > > > > > >
> > > >
> > > > > > > Regards
> > > >
> > > > > > >
> > > >
> > > > > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
> > > >
> > > > > > > [2]
> > > >
> > > > > > >
> > > >
> > > > > > >
> > > >
> > > > > >
> > > >
> > > > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> > > >
> > > > > > >
> > > >
> > > > > > >
> > > >
> > > > > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:
> > > >
> > > > > > >
> > > >
> > > > > > > > Hi Antonio,
> > > >
> > > > > > > >
> > > >
> > > > > > > > Thanks for the new update. Let me make some comments inline:
> > > >
> > > > > > > >
> > > >
> > > > > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez Morales <
> > > >
> > > > > > > > adperezmorales@gmail.com> wrote:
> > > >
> > > > > > > >
> > > >
> > > > > > > > > Hi devs
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > After the midterm, I continue with the proposed work and I
> > > > already
> > > >
> > > > > > > > started
> > > >
> > > > > > > > > to work on the second part of the project, which is the
> > > > development
> > > >
> > > > > > of
> > > >
> > > > > > > an
> > > >
> > > > > > > > > Authority Connector for Confluence.
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > I have created a new branch [1] for that in my GitHub
> account
> > > > and I
> > > >
> > > > > > > > already
> > > >
> > > > > > > > > committed the basic structure of the connector along with
> the
> > > > code
> > > >
> > > > > > > > related
> > > >
> > > > > > > > > to Confluence instance configuration. After that I will
> > develop
> > > > the
> > > >
> > > > > > > > proper
> > > >
> > > > > > > > > strategy to get the ACLs for the user as stated in the
> > > proposal.
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > For this case, I have been evaluating the two scenarios
> > > contained
> > > >
> > > > > in
> > > >
> > > > > > > the
> > > >
> > > > > > > > > proposal and I will start developing the space-based
> > > permissions
> > > >
> > > > > > which
> > > >
> > > > > > > > > requires no customizations of Confluence instance (coarse
> > > grain).
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > I made some tests with Confluence APIs trying to go more
> > > > fine-grain
> > > >
> > > > > > > using
> > > >
> > > > > > > > > the user groups but there is not endpoint method to get the
> > > > groups
> > > >
> > > > > > that
> > > >
> > > > > > > > can
> > > >
> > > > > > > > > view a specific page. So in the end, I think the
> space-based
> > > >
> > > > > > permission
> > > >
> > > > > > > > is
> > > >
> > > > > > > > > a good solution, because implementing a Confluence plugin
> for
> > > > that
> > > >
> > > > > to
> > > >
> > > > > > > > cover
> > > >
> > > > > > > > > some very specific use cases I think most people won't be
> > > willing
> > > >
> > > > > to
> > > >
> > > > > > > > patch
> > > >
> > > > > > > > > Confluence only for those specific use cases (for example
> > > where a
> > > >
> > > > > > > person
> > > >
> > > > > > > > is
> > > >
> > > > > > > > > not allowed to view a space but it is allowed to view a
> > single
> > > > page
> > > >
> > > > > > in
> > > >
> > > > > > > > that
> > > >
> > > > > > > > > space).
> > > >
> > > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > > > Let's focus right now on permissions at space level. As you
> > said,
> > > > to
> > > >
> > > > > > > patch
> > > >
> > > > > > > > confluence API is not  a good solution, specially for those
> > using
> > > > it
> > > >
> > > > > in
> > > >
> > > > > > > the
> > > >
> > > > > > > > Cloud. If in the future they extend the API with more fine
> > > grained
> > > >
> > > > > > > > permissions approach, we can always update later the
> connector.
> > > >
> > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > I have also updated the README file putting a guide to
> > > configure
> > > >
> > > > > both
> > > >
> > > > > > > > > connectors using screenshots about configuration tabs for
> the
> > > >
> > > > > > > connectors.
> > > >
> > > > > > > > > I'm using embedded images (using Data URIs syntax for
> images)
> > > but
> > > >
> > > > > it
> > > >
> > > > > > > > seems
> > > >
> > > > > > > > > they are not supported by GitHub in the README (although
> they
> > > are
> > > >
> > > > > in
> > > >
> > > > > > > the
> > > >
> > > > > > > > > code, and other Markdown viewers can show them).
> > > >
> > > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > > > Ok, thanks!
> > > >
> > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > The connectors are in separated branches until I merge them
> > > into
> > > >
> > > > > > > master.
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > Moreover, I have been talking and reviewing with Rafa
> through
> > > > Skype
> > > >
> > > > > > the
> > > >
> > > > > > > > > current work, and we have agreed to track all the things
> also
> > > in
> > > >
> > > > > the
> > > >
> > > > > > > Jira
> > > >
> > > > > > > > > issue (apart from these mails), so I will put the
> > configuration
> > > >
> > > > > > > > screenshots
> > > >
> > > > > > > > > there and the links to the GitHub repositories.
> > > >
> > > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > > > Perfect!. Let me know when we can start testing the Authority
> > > >
> > > > > connector
> > > >
> > > > > > > > too. My intention is to test the whole connector in a real
> > > >
> > > > > environment
> > > >
> > > > > > > > extensively sometime before the pencil downs looking for
> > possible
> > > >
> > > > > bugs,
> > > >
> > > > > > > > additions and so on.
> > > >
> > > > > > > >
> > > >
> > > > > > > > Well done so far!
> > > >
> > > > > > > > Cheers,
> > > >
> > > > > > > > Rafa
> > > >
> > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > Comments and suggestions are more than welcome as always.
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > Regards
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > --------
> > > >
> > > > > > > > >
> > > >
> > > > > > > > > [1]
> > > >
> > > > > > > > >
> > > >
> > > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > >
> > > >
> > > > > >
> > > >
> > > > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector
> > > >
> > > > > > > > >
> > > >
> > > > > > > >
> > > >
> > > > > > >
> > > >
> > > > > >
> > > >
> > > > >
> > > >
> > >
> >
>

Re: [GSoC] Confluence Authority Connector

Posted by Antonio David Pérez Morales <ad...@gmail.com>.
Hi Karl

After talked with Rafa yesterday, while I'm working on some improvements
and fixes, Rafa is testing the connector against some Confluence instances
(on premise and cloud) to check the connector's behavior.
After that, we can think to merge both connectors into only one project
(right now it is a Maven project with two maven modules, one for repository
connector and one for authority connector) if needed and then move towards
importing it into Apache SVN.

I don't know if I can do that step or else only Manifold committers can do
that. If the second, I can help anyone to move the project into Apache SVN.

Regards



2015-08-04 20:25 GMT+02:00 Karl Wright <da...@gmail.com>:

> If you feel that this connector is largely complete, we can move towards
> importing it into Apache svn.  Please let us know when you are ready.
>
> Karl
>
>
> On Tue, Aug 4, 2015 at 1:22 PM, Antonio David Pérez Morales <
> adperezmorales@gmail.com> wrote:
>
> > Hi guys
> >
> > Following the work already done in the Confluence connector, I have
> > developed some tests for the Authority connector and also I have fixed
> and
> > improved the tests related to the repository connector because I changed
> > the check to know if a document needs to be reindexed or not, so I have
> > modified the tests accordingly to avoid problems and in order to tests
> the
> > behavior properly.
> >
> > Regarding the documentation and after talked with Rafa, I have started
> with
> > the README.md file and I have also put configuration screenshots on it
> > using embedded images (unluckily if you go to GitHub, the embedded images
> > are not rendered I don't know why, but  using the Markdown content in a
> > Markdown syntax viewer, the images are properly shown). We have agreed
> that
> > when the connectors are ready to be contributed, then we can port the
> > documentation to the format expected by Manifold framework.
> >
> > As always, if you have any comments or suggestions for improvements or
> new
> > requirements, please let me know.
> >
> > Regards
> >
> >
> >
> >
> > 2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:
> >
> > > Hi Antonio,
> > >
> > >
> > > Sorry I have been out for a couple of days, so I couldn't answer until
> > > today.
> > >
> > >
> > >
> > >
> > >
> > >
> > > —
> > > Enviado desde Mailbox
> > >
> > >
> > >
> > > El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez Morales <
> > > adperezmorales@gmail.com> escribió:
> > > Hi devs
> > >
> > >
> > > I continue working on the Authority connector for Confluence [1].
> > >
> > > Basically I'm finishing the tests and doing some improvements. I would
> > like
> > >
> > > to do some UI tests (like Active Directory connector does), so I will
> try
> > >
> > > to include them along with unit tests with mocks.
> > >
> > > In parallel, I'm going to start with the documentation to be ready for
> > the
> > >
> > > contribution to Manifold.
> > >
> > > ​
> > >
> > > ​Fine. I will take a look to the GitHub project to check the authority
> > > connector progress. Actually this one should be easier and faster to
> test
> > > for me.
> > >
> > >
> > >
> > >
> > >
> > >
> > > Moreover, right now, I keep separated both repository and authority
> > >
> > > connectors (different modules in the maven project) but once finished,
> I
> > >
> > > think it is better to join them into only one, merging the clients used
> > to
> > >
> > > interact with Confluence, and reusing some model classes. I will do it
> as
> > >
> > > soon as I finish the tests and some improvements and in parallel with
> the
> > >
> > > documentation.
> > >
> > >
> > >
> > >
> > >
> > > ​
> > >
> > > ​Yeah, there are probably some code that could be merged. If the
> > > configuration is barely the same for both clients, they should be
> merged
> > in
> > > a single client module. For now, you can keep it at one of the
> connectors
> > > packages and cross the reference in the other one. As soon as you
> finish
> > > the authority connector I will take a look to see if we can merge
> > something
> > > else.
> > >
> > >
> > >
> > >
> > > As always, if you have any suggestions, please let me know and I will
> try
> > >
> > > to include it in the current code.
> > >
> > >
> > > Regards
> > >
> > >
> > > [1]
> > >
> > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> > >
> > >
> > > 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:
> > >
> > >
> > > > The feature was developed for a user that was trying to index
> documents
> > >
> > > > by creating multiple XML files, each containing a specific set of
> > >
> > > > documents. But we don't have any supported connectors yet that rely
> on
> > >
> > > > this feature.
> > >
> > > >
> > >
> > > > Thanks,
> > >
> > > > Karl
> > >
> > > >
> > >
> > > > Sent from my Windows Phone
> > >
> > > > From: Antonio David Pérez Morales
> > >
> > > > Sent: 7/11/2015 3:55 AM
> > >
> > > > To: dev@manifoldcf.apache.org
> > >
> > > > Subject: Re: [GSoC] Confluence Authority Connector
> > >
> > > > Hi Karl
> > >
> > > >
> > >
> > > > Thanks for your response.
> > >
> > > >
> > >
> > > > No, I'm not using document components, so I will change the call to
> > >
> > > > checkDocumentNeedsReindexing.
> > >
> > > >
> > >
> > > > Only for curiosity, do you have any example showing how to use
> document
> > >
> > > > components with the RepositoryDocument model used in Manifold?
> > >
> > > >
> > >
> > > > Regards
> > >
> > > >
> > >
> > > > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:
> > >
> > > >
> > >
> > > > > bq. Karl one question about repository connector document
> retainment.
> > > I'm
> > >
> > > > > using
> > >
> > > > > the activities.retainAllComponentDocument(docId) method of
> > >
> > > > IProcessActivity
> > >
> > > > > to retain the document and avoid to be reindexed.
> > >
> > > > >
> > >
> > > > > Hi Antonio,
> > >
> > > > >
> > >
> > > > > checkDocumentNeedsReindexing() is the standard way of determining
> > >
> > > > whether a
> > >
> > > > > document needs to be reindexed or not.  You can follow the template
> > >
> > > > present
> > >
> > > > > in multiple other connectors that use this method.
> > >
> > > > >
> > >
> > > > > retainAllComponentDocuments() is basically a shorthand way of
> > > determining
> > >
> > > > > the disposition of document components.  I don't believe you even
> use
> > >
> > > > > document components in the confluence connector, although I could
> be
> > >
> > > > wrong
> > >
> > > > > about that?  In general, if your connector doesn't do anything with
> > >
> > > > > components at all, you will not need to call this method.
> > >
> > > > >
> > >
> > > > > Thanks,
> > >
> > > > > Karl
> > >
> > > > >
> > >
> > > > >
> > >
> > > > >
> > >
> > > > >
> > >
> > > > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez Morales <
> > >
> > > > > adperezmorales@gmail.com> wrote:
> > >
> > > > >
> > >
> > > > > > Hi devs
> > >
> > > > > >
> > >
> > > > > > Continuing with the work, I have developed a first version of the
> > >
> > > > > > Confluence Authority connector aligned with the ACLs used by the
> > >
> > > > > Confluence
> > >
> > > > > > Repository Connector.
> > >
> > > > > > I have fixed and improved some parts in the repository connector
> > and
> > >
> > > > > > committed the code and also I have updated the Jira issue [1] to
> > keep
> > >
> > > > > track
> > >
> > > > > > of the new additions.
> > >
> > > > > > Both branches have been merged into master and I have created a
> new
> > >
> > > > > develop
> > >
> > > > > > branch [2] from it, so further improvements and fixes can be done
> > > from
> > >
> > > > > this
> > >
> > > > > > branch and then merged into master.
> > >
> > > > > > Right now, the connectors are in different maven modules and
> maybe
> > in
> > >
> > > > the
> > >
> > > > > > future I can merge into one single maven project without modules,
> > so
> > >
> > > > that
> > >
> > > > > > with one jar file we will have both connectors ready to be used
> in
> > >
> > > > > > Manifold.
> > >
> > > > > > As of now, I will work in the Authority connector improvements
> and
> > >
> > > > tests
> > >
> > > > > > and also I will do all the things Rafa (or you guys) can report
> > >
> > > > regarding
> > >
> > > > > > the functionality of the connectors.
> > >
> > > > > >
> > >
> > > > > > Karl one question about repository connector document retainment.
> > I'm
> > >
> > > > > using
> > >
> > > > > > the activities.retainAllComponentDocument(docId) method of
> > >
> > > > > IProcessActivity
> > >
> > > > > > to retain the document and avoid to be reindexed.
> > >
> > > > > > Rafa, while checking and reviewing the code, noticed that other
> > >
> > > > > connectors
> > >
> > > > > > are using the checkDocumentNeedsReindexing(documentIdentifier,
> > >
> > > > > > newVersionString) method also from IProcessActivity. I checked
> the
> > > code
> > >
> > > > > > from both methods and internally they act differently. Is it fine
> > to
> > >
> > > > use
> > >
> > > > > > the retainAllComponentDocument or it is better to switch to
> > >
> > > > > > checkDocumentNeedsReindexing one?
> > >
> > > > > >
> > >
> > > > > > As always, if you have suggestions about improvements or more
> > things
> > >
> > > > > which
> > >
> > > > > > can be done for these connectors, please let me know.
> > >
> > > > > >
> > >
> > > > > > Regards
> > >
> > > > > >
> > >
> > > > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
> > >
> > > > > > [2]
> > >
> > > > > >
> > >
> > > > > >
> > >
> > > > >
> > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> > >
> > > > > >
> > >
> > > > > >
> > >
> > > > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:
> > >
> > > > > >
> > >
> > > > > > > Hi Antonio,
> > >
> > > > > > >
> > >
> > > > > > > Thanks for the new update. Let me make some comments inline:
> > >
> > > > > > >
> > >
> > > > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez Morales <
> > >
> > > > > > > adperezmorales@gmail.com> wrote:
> > >
> > > > > > >
> > >
> > > > > > > > Hi devs
> > >
> > > > > > > >
> > >
> > > > > > > > After the midterm, I continue with the proposed work and I
> > > already
> > >
> > > > > > > started
> > >
> > > > > > > > to work on the second part of the project, which is the
> > > development
> > >
> > > > > of
> > >
> > > > > > an
> > >
> > > > > > > > Authority Connector for Confluence.
> > >
> > > > > > > >
> > >
> > > > > > > > I have created a new branch [1] for that in my GitHub account
> > > and I
> > >
> > > > > > > already
> > >
> > > > > > > > committed the basic structure of the connector along with the
> > > code
> > >
> > > > > > > related
> > >
> > > > > > > > to Confluence instance configuration. After that I will
> develop
> > > the
> > >
> > > > > > > proper
> > >
> > > > > > > > strategy to get the ACLs for the user as stated in the
> > proposal.
> > >
> > > > > > > >
> > >
> > > > > > > > For this case, I have been evaluating the two scenarios
> > contained
> > >
> > > > in
> > >
> > > > > > the
> > >
> > > > > > > > proposal and I will start developing the space-based
> > permissions
> > >
> > > > > which
> > >
> > > > > > > > requires no customizations of Confluence instance (coarse
> > grain).
> > >
> > > > > > > >
> > >
> > > > > > > > I made some tests with Confluence APIs trying to go more
> > > fine-grain
> > >
> > > > > > using
> > >
> > > > > > > > the user groups but there is not endpoint method to get the
> > > groups
> > >
> > > > > that
> > >
> > > > > > > can
> > >
> > > > > > > > view a specific page. So in the end, I think the space-based
> > >
> > > > > permission
> > >
> > > > > > > is
> > >
> > > > > > > > a good solution, because implementing a Confluence plugin for
> > > that
> > >
> > > > to
> > >
> > > > > > > cover
> > >
> > > > > > > > some very specific use cases I think most people won't be
> > willing
> > >
> > > > to
> > >
> > > > > > > patch
> > >
> > > > > > > > Confluence only for those specific use cases (for example
> > where a
> > >
> > > > > > person
> > >
> > > > > > > is
> > >
> > > > > > > > not allowed to view a space but it is allowed to view a
> single
> > > page
> > >
> > > > > in
> > >
> > > > > > > that
> > >
> > > > > > > > space).
> > >
> > > > > > > >
> > >
> > > > > > >
> > >
> > > > > > > Let's focus right now on permissions at space level. As you
> said,
> > > to
> > >
> > > > > > patch
> > >
> > > > > > > confluence API is not  a good solution, specially for those
> using
> > > it
> > >
> > > > in
> > >
> > > > > > the
> > >
> > > > > > > Cloud. If in the future they extend the API with more fine
> > grained
> > >
> > > > > > > permissions approach, we can always update later the connector.
> > >
> > > > > > >
> > >
> > > > > > >
> > >
> > > > > > > >
> > >
> > > > > > > > I have also updated the README file putting a guide to
> > configure
> > >
> > > > both
> > >
> > > > > > > > connectors using screenshots about configuration tabs for the
> > >
> > > > > > connectors.
> > >
> > > > > > > > I'm using embedded images (using Data URIs syntax for images)
> > but
> > >
> > > > it
> > >
> > > > > > > seems
> > >
> > > > > > > > they are not supported by GitHub in the README (although they
> > are
> > >
> > > > in
> > >
> > > > > > the
> > >
> > > > > > > > code, and other Markdown viewers can show them).
> > >
> > > > > > > >
> > >
> > > > > > >
> > >
> > > > > > > Ok, thanks!
> > >
> > > > > > >
> > >
> > > > > > >
> > >
> > > > > > > >
> > >
> > > > > > > > The connectors are in separated branches until I merge them
> > into
> > >
> > > > > > master.
> > >
> > > > > > > >
> > >
> > > > > > > > Moreover, I have been talking and reviewing with Rafa through
> > > Skype
> > >
> > > > > the
> > >
> > > > > > > > current work, and we have agreed to track all the things also
> > in
> > >
> > > > the
> > >
> > > > > > Jira
> > >
> > > > > > > > issue (apart from these mails), so I will put the
> configuration
> > >
> > > > > > > screenshots
> > >
> > > > > > > > there and the links to the GitHub repositories.
> > >
> > > > > > > >
> > >
> > > > > > >
> > >
> > > > > > > Perfect!. Let me know when we can start testing the Authority
> > >
> > > > connector
> > >
> > > > > > > too. My intention is to test the whole connector in a real
> > >
> > > > environment
> > >
> > > > > > > extensively sometime before the pencil downs looking for
> possible
> > >
> > > > bugs,
> > >
> > > > > > > additions and so on.
> > >
> > > > > > >
> > >
> > > > > > > Well done so far!
> > >
> > > > > > > Cheers,
> > >
> > > > > > > Rafa
> > >
> > > > > > >
> > >
> > > > > > >
> > >
> > > > > > > >
> > >
> > > > > > > > Comments and suggestions are more than welcome as always.
> > >
> > > > > > > >
> > >
> > > > > > > > Regards
> > >
> > > > > > > >
> > >
> > > > > > > > --------
> > >
> > > > > > > >
> > >
> > > > > > > > [1]
> > >
> > > > > > > >
> > >
> > > > > > > >
> > >
> > > > > > >
> > >
> > > > > >
> > >
> > > > >
> > >
> > > >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector
> > >
> > > > > > > >
> > >
> > > > > > >
> > >
> > > > > >
> > >
> > > > >
> > >
> > > >
> > >
> >
>

Re: [GSoC] Confluence Authority Connector

Posted by Karl Wright <da...@gmail.com>.
If you feel that this connector is largely complete, we can move towards
importing it into Apache svn.  Please let us know when you are ready.

Karl


On Tue, Aug 4, 2015 at 1:22 PM, Antonio David Pérez Morales <
adperezmorales@gmail.com> wrote:

> Hi guys
>
> Following the work already done in the Confluence connector, I have
> developed some tests for the Authority connector and also I have fixed and
> improved the tests related to the repository connector because I changed
> the check to know if a document needs to be reindexed or not, so I have
> modified the tests accordingly to avoid problems and in order to tests the
> behavior properly.
>
> Regarding the documentation and after talked with Rafa, I have started with
> the README.md file and I have also put configuration screenshots on it
> using embedded images (unluckily if you go to GitHub, the embedded images
> are not rendered I don't know why, but  using the Markdown content in a
> Markdown syntax viewer, the images are properly shown). We have agreed that
> when the connectors are ready to be contributed, then we can port the
> documentation to the format expected by Manifold framework.
>
> As always, if you have any comments or suggestions for improvements or new
> requirements, please let me know.
>
> Regards
>
>
>
>
> 2015-07-25 10:45 GMT+02:00 Rafa Haro <rh...@apache.org>:
>
> > Hi Antonio,
> >
> >
> > Sorry I have been out for a couple of days, so I couldn't answer until
> > today.
> >
> >
> >
> >
> >
> >
> > —
> > Enviado desde Mailbox
> >
> >
> >
> > El jueves, 23 de jul de 2015 a las 21:28, Antonio David Pérez Morales <
> > adperezmorales@gmail.com> escribió:
> > Hi devs
> >
> >
> > I continue working on the Authority connector for Confluence [1].
> >
> > Basically I'm finishing the tests and doing some improvements. I would
> like
> >
> > to do some UI tests (like Active Directory connector does), so I will try
> >
> > to include them along with unit tests with mocks.
> >
> > In parallel, I'm going to start with the documentation to be ready for
> the
> >
> > contribution to Manifold.
> >
> > ​
> >
> > ​Fine. I will take a look to the GitHub project to check the authority
> > connector progress. Actually this one should be easier and faster to test
> > for me.
> >
> >
> >
> >
> >
> >
> > Moreover, right now, I keep separated both repository and authority
> >
> > connectors (different modules in the maven project) but once finished, I
> >
> > think it is better to join them into only one, merging the clients used
> to
> >
> > interact with Confluence, and reusing some model classes. I will do it as
> >
> > soon as I finish the tests and some improvements and in parallel with the
> >
> > documentation.
> >
> >
> >
> >
> >
> > ​
> >
> > ​Yeah, there are probably some code that could be merged. If the
> > configuration is barely the same for both clients, they should be merged
> in
> > a single client module. For now, you can keep it at one of the connectors
> > packages and cross the reference in the other one. As soon as you finish
> > the authority connector I will take a look to see if we can merge
> something
> > else.
> >
> >
> >
> >
> > As always, if you have any suggestions, please let me know and I will try
> >
> > to include it in the current code.
> >
> >
> > Regards
> >
> >
> > [1]
> >
> >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> >
> >
> > 2015-07-11 12:52 GMT+02:00 Karl Wright <da...@gmail.com>:
> >
> >
> > > The feature was developed for a user that was trying to index documents
> >
> > > by creating multiple XML files, each containing a specific set of
> >
> > > documents. But we don't have any supported connectors yet that rely on
> >
> > > this feature.
> >
> > >
> >
> > > Thanks,
> >
> > > Karl
> >
> > >
> >
> > > Sent from my Windows Phone
> >
> > > From: Antonio David Pérez Morales
> >
> > > Sent: 7/11/2015 3:55 AM
> >
> > > To: dev@manifoldcf.apache.org
> >
> > > Subject: Re: [GSoC] Confluence Authority Connector
> >
> > > Hi Karl
> >
> > >
> >
> > > Thanks for your response.
> >
> > >
> >
> > > No, I'm not using document components, so I will change the call to
> >
> > > checkDocumentNeedsReindexing.
> >
> > >
> >
> > > Only for curiosity, do you have any example showing how to use document
> >
> > > components with the RepositoryDocument model used in Manifold?
> >
> > >
> >
> > > Regards
> >
> > >
> >
> > > 2015-07-11 1:19 GMT+02:00 Karl Wright <da...@gmail.com>:
> >
> > >
> >
> > > > bq. Karl one question about repository connector document retainment.
> > I'm
> >
> > > > using
> >
> > > > the activities.retainAllComponentDocument(docId) method of
> >
> > > IProcessActivity
> >
> > > > to retain the document and avoid to be reindexed.
> >
> > > >
> >
> > > > Hi Antonio,
> >
> > > >
> >
> > > > checkDocumentNeedsReindexing() is the standard way of determining
> >
> > > whether a
> >
> > > > document needs to be reindexed or not.  You can follow the template
> >
> > > present
> >
> > > > in multiple other connectors that use this method.
> >
> > > >
> >
> > > > retainAllComponentDocuments() is basically a shorthand way of
> > determining
> >
> > > > the disposition of document components.  I don't believe you even use
> >
> > > > document components in the confluence connector, although I could be
> >
> > > wrong
> >
> > > > about that?  In general, if your connector doesn't do anything with
> >
> > > > components at all, you will not need to call this method.
> >
> > > >
> >
> > > > Thanks,
> >
> > > > Karl
> >
> > > >
> >
> > > >
> >
> > > >
> >
> > > >
> >
> > > > On Fri, Jul 10, 2015 at 10:43 AM, Antonio David Pérez Morales <
> >
> > > > adperezmorales@gmail.com> wrote:
> >
> > > >
> >
> > > > > Hi devs
> >
> > > > >
> >
> > > > > Continuing with the work, I have developed a first version of the
> >
> > > > > Confluence Authority connector aligned with the ACLs used by the
> >
> > > > Confluence
> >
> > > > > Repository Connector.
> >
> > > > > I have fixed and improved some parts in the repository connector
> and
> >
> > > > > committed the code and also I have updated the Jira issue [1] to
> keep
> >
> > > > track
> >
> > > > > of the new additions.
> >
> > > > > Both branches have been merged into master and I have created a new
> >
> > > > develop
> >
> > > > > branch [2] from it, so further improvements and fixes can be done
> > from
> >
> > > > this
> >
> > > > > branch and then merged into master.
> >
> > > > > Right now, the connectors are in different maven modules and maybe
> in
> >
> > > the
> >
> > > > > future I can merge into one single maven project without modules,
> so
> >
> > > that
> >
> > > > > with one jar file we will have both connectors ready to be used in
> >
> > > > > Manifold.
> >
> > > > > As of now, I will work in the Authority connector improvements and
> >
> > > tests
> >
> > > > > and also I will do all the things Rafa (or you guys) can report
> >
> > > regarding
> >
> > > > > the functionality of the connectors.
> >
> > > > >
> >
> > > > > Karl one question about repository connector document retainment.
> I'm
> >
> > > > using
> >
> > > > > the activities.retainAllComponentDocument(docId) method of
> >
> > > > IProcessActivity
> >
> > > > > to retain the document and avoid to be reindexed.
> >
> > > > > Rafa, while checking and reviewing the code, noticed that other
> >
> > > > connectors
> >
> > > > > are using the checkDocumentNeedsReindexing(documentIdentifier,
> >
> > > > > newVersionString) method also from IProcessActivity. I checked the
> > code
> >
> > > > > from both methods and internally they act differently. Is it fine
> to
> >
> > > use
> >
> > > > > the retainAllComponentDocument or it is better to switch to
> >
> > > > > checkDocumentNeedsReindexing one?
> >
> > > > >
> >
> > > > > As always, if you have suggestions about improvements or more
> things
> >
> > > > which
> >
> > > > > can be done for these connectors, please let me know.
> >
> > > > >
> >
> > > > > Regards
> >
> > > > >
> >
> > > > > [1] https://issues.apache.org/jira/browse/CONNECTORS-1161
> >
> > > > > [2]
> >
> > > > >
> >
> > > > >
> >
> > > >
> >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/develop
> >
> > > > >
> >
> > > > >
> >
> > > > > 2015-07-09 17:17 GMT+02:00 Rafa Haro <rh...@apache.org>:
> >
> > > > >
> >
> > > > > > Hi Antonio,
> >
> > > > > >
> >
> > > > > > Thanks for the new update. Let me make some comments inline:
> >
> > > > > >
> >
> > > > > > On Wed, Jul 8, 2015 at 6:31 PM, Antonio David Pérez Morales <
> >
> > > > > > adperezmorales@gmail.com> wrote:
> >
> > > > > >
> >
> > > > > > > Hi devs
> >
> > > > > > >
> >
> > > > > > > After the midterm, I continue with the proposed work and I
> > already
> >
> > > > > > started
> >
> > > > > > > to work on the second part of the project, which is the
> > development
> >
> > > > of
> >
> > > > > an
> >
> > > > > > > Authority Connector for Confluence.
> >
> > > > > > >
> >
> > > > > > > I have created a new branch [1] for that in my GitHub account
> > and I
> >
> > > > > > already
> >
> > > > > > > committed the basic structure of the connector along with the
> > code
> >
> > > > > > related
> >
> > > > > > > to Confluence instance configuration. After that I will develop
> > the
> >
> > > > > > proper
> >
> > > > > > > strategy to get the ACLs for the user as stated in the
> proposal.
> >
> > > > > > >
> >
> > > > > > > For this case, I have been evaluating the two scenarios
> contained
> >
> > > in
> >
> > > > > the
> >
> > > > > > > proposal and I will start developing the space-based
> permissions
> >
> > > > which
> >
> > > > > > > requires no customizations of Confluence instance (coarse
> grain).
> >
> > > > > > >
> >
> > > > > > > I made some tests with Confluence APIs trying to go more
> > fine-grain
> >
> > > > > using
> >
> > > > > > > the user groups but there is not endpoint method to get the
> > groups
> >
> > > > that
> >
> > > > > > can
> >
> > > > > > > view a specific page. So in the end, I think the space-based
> >
> > > > permission
> >
> > > > > > is
> >
> > > > > > > a good solution, because implementing a Confluence plugin for
> > that
> >
> > > to
> >
> > > > > > cover
> >
> > > > > > > some very specific use cases I think most people won't be
> willing
> >
> > > to
> >
> > > > > > patch
> >
> > > > > > > Confluence only for those specific use cases (for example
> where a
> >
> > > > > person
> >
> > > > > > is
> >
> > > > > > > not allowed to view a space but it is allowed to view a single
> > page
> >
> > > > in
> >
> > > > > > that
> >
> > > > > > > space).
> >
> > > > > > >
> >
> > > > > >
> >
> > > > > > Let's focus right now on permissions at space level. As you said,
> > to
> >
> > > > > patch
> >
> > > > > > confluence API is not  a good solution, specially for those using
> > it
> >
> > > in
> >
> > > > > the
> >
> > > > > > Cloud. If in the future they extend the API with more fine
> grained
> >
> > > > > > permissions approach, we can always update later the connector.
> >
> > > > > >
> >
> > > > > >
> >
> > > > > > >
> >
> > > > > > > I have also updated the README file putting a guide to
> configure
> >
> > > both
> >
> > > > > > > connectors using screenshots about configuration tabs for the
> >
> > > > > connectors.
> >
> > > > > > > I'm using embedded images (using Data URIs syntax for images)
> but
> >
> > > it
> >
> > > > > > seems
> >
> > > > > > > they are not supported by GitHub in the README (although they
> are
> >
> > > in
> >
> > > > > the
> >
> > > > > > > code, and other Markdown viewers can show them).
> >
> > > > > > >
> >
> > > > > >
> >
> > > > > > Ok, thanks!
> >
> > > > > >
> >
> > > > > >
> >
> > > > > > >
> >
> > > > > > > The connectors are in separated branches until I merge them
> into
> >
> > > > > master.
> >
> > > > > > >
> >
> > > > > > > Moreover, I have been talking and reviewing with Rafa through
> > Skype
> >
> > > > the
> >
> > > > > > > current work, and we have agreed to track all the things also
> in
> >
> > > the
> >
> > > > > Jira
> >
> > > > > > > issue (apart from these mails), so I will put the configuration
> >
> > > > > > screenshots
> >
> > > > > > > there and the links to the GitHub repositories.
> >
> > > > > > >
> >
> > > > > >
> >
> > > > > > Perfect!. Let me know when we can start testing the Authority
> >
> > > connector
> >
> > > > > > too. My intention is to test the whole connector in a real
> >
> > > environment
> >
> > > > > > extensively sometime before the pencil downs looking for possible
> >
> > > bugs,
> >
> > > > > > additions and so on.
> >
> > > > > >
> >
> > > > > > Well done so far!
> >
> > > > > > Cheers,
> >
> > > > > > Rafa
> >
> > > > > >
> >
> > > > > >
> >
> > > > > > >
> >
> > > > > > > Comments and suggestions are more than welcome as always.
> >
> > > > > > >
> >
> > > > > > > Regards
> >
> > > > > > >
> >
> > > > > > > --------
> >
> > > > > > >
> >
> > > > > > > [1]
> >
> > > > > > >
> >
> > > > > > >
> >
> > > > > >
> >
> > > > >
> >
> > > >
> >
> > >
> >
> https://github.com/adperezmorales/confluence-manifold-connector/tree/feature/authority-connector
> >
> > > > > > >
> >
> > > > > >
> >
> > > > >
> >
> > > >
> >
> > >
> >
>