manifoldcf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Antonio David Pérez Morales <adperezmora...@gmail.com>
Subject Re: [GSoC] Confluence Authority Connector
Date Tue, 04 Aug 2015 17:22:31 GMT
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 <rharo@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 <daddywri@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 <daddywri@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 <rharo@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
>
> > > > > >
>
> > > > >
>
> > > >
>
> > >
>
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message