Platform Explorer / Nuxeo Platform 2021.58

Contribution org.nuxeo.ecm.platform.tag.service.pageprovider--providers

This contribution is part of XML component org.nuxeo.ecm.platform.tag.service.pageprovider inside nuxeo-platform-tag-2021.58.6.jar /OSGI-INF/tag-pageprovider-contrib.xml

Extension Point

Extension point providers of component PageProviderService.

Registration Order

22
The registration order represents the order in which this contribution was registered on its target extention point. This will impact the override/merge behaviour when it is implemented on the target service, and is useful for proper customization of existing contributions.
You can influence this order by adding "require" tags in the containing component declaration, to make sure it is resolved after another component (see "Resolution Order" on components).

Contributed Items

  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENT_IDS_FOR_FACETED_TAG">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT DISTINCT ecm:uuid FROM Document WHERE nxtag:tags/*/label = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENT_IDS_FOR_TAG">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT ecm:uuid FROM Tag WHERE tag:label = ? AND ecm:isProxy = 0
          </pattern>
          <pageSize>1</pageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_FIRST_TAGGING_FOR_DOC_AND_TAG">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT ecm:uuid FROM Tagging WHERE relation:source = ? AND
            relation:target = ?
          </pattern>
          <pageSize>1</pageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_FIRST_TAGGING_FOR_DOC_AND_TAG_AND_USER">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT ecm:uuid FROM Tagging WHERE relation:source = ? AND
            relation:target = ? AND dc:creator = ?
          </pattern>
          <pageSize>1</pageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
            relation:source = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT_CORE">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
            relation:source = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENTS_FOR_TAG">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT DISTINCT relation:source FROM Tagging WHERE
            tag:label = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT_AND_USER">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
            relation:source = ? AND dc:creator = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT_AND_USER_CORE">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
            relation:source = ? AND dc:creator = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENTS_FOR_TAG_AND_USER">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT DISTINCT relation:source FROM Tagging WHERE
            tag:label = ? AND dc:creator = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_TO_COPY_FOR_DOCUMENT">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            TAGISTARGET: SELECT tag:label, dc:created, dc:creator,
            relation:target FROM Tagging
            WHERE relation:source = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_FACETED_TAG_SUGGESTIONS">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT nxtag:tags/*1/label FROM Document WHERE nxtag:tags/*1/label LIKE ? AND
            ecm:isProxy = 0
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAG_SUGGESTIONS">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT DISTINCT tag:label FROM Tag WHERE tag:label LIKE ? AND
            ecm:isProxy = 0
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAG_SUGGESTIONS_FOR_USER">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT DISTINCT tag:label FROM Tag WHERE tag:label LIKE ? AND
            ecm:isProxy = 0
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_ALL_TAGS">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_ALL_TAGS_FOR_USER">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging WHERE
            dc:creator = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENTS">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging WHERE
            relation:source IN ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENTS_AND_USER">
          <property name="useUnrestrictedSession">true</property>
          <property name="language">NXTAG</property>
          <pattern>
            COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging WHERE
            relation:source IN ? AND dc:creator = ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>
  • <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGGED_DOCUMENTS_UNDER">
          <property name="useUnrestrictedSession">true</property>
          <pattern>
            SELECT ecm:uuid FROM Document WHERE ecm:path STARTSWITH ?
          </pattern>
          <pageSize>0</pageSize>
          <maxPageSize>0</maxPageSize>
        </genericPageProvider>

XML Source

<extension point="providers" target="org.nuxeo.ecm.platform.query.api.PageProviderService">

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENT_IDS_FOR_FACETED_TAG">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT DISTINCT ecm:uuid FROM Document WHERE nxtag:tags/*/label = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENT_IDS_FOR_TAG">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT ecm:uuid FROM Tag WHERE tag:label = ? AND ecm:isProxy = 0
      </pattern>
      <pageSize>1</pageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_FIRST_TAGGING_FOR_DOC_AND_TAG">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT ecm:uuid FROM Tagging WHERE relation:source = ? AND
        relation:target = ?
      </pattern>
      <pageSize>1</pageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_FIRST_TAGGING_FOR_DOC_AND_TAG_AND_USER">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT ecm:uuid FROM Tagging WHERE relation:source = ? AND
        relation:target = ? AND dc:creator = ?
      </pattern>
      <pageSize>1</pageSize>
    </genericPageProvider>

    <!-- page provider that can be optimized using ES for instance -->
    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
        relation:source = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <!-- page provider that should keep on using the VCS storage -->
    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT_CORE">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
        relation:source = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENTS_FOR_TAG">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT DISTINCT relation:source FROM Tagging WHERE
        tag:label = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <!-- page provider that can be optimized using ES for instance -->
    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT_AND_USER">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
        relation:source = ? AND dc:creator = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <!-- page provider that should keep on using the VCS storage -->
    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENT_AND_USER_CORE">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT DISTINCT tag:label FROM Tagging WHERE
        relation:source = ? AND dc:creator = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_DOCUMENTS_FOR_TAG_AND_USER">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT DISTINCT relation:source FROM Tagging WHERE
        tag:label = ? AND dc:creator = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_TO_COPY_FOR_DOCUMENT">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        TAGISTARGET: SELECT tag:label, dc:created, dc:creator,
        relation:target FROM Tagging
        WHERE relation:source = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_FACETED_TAG_SUGGESTIONS">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT nxtag:tags/*1/label FROM Document WHERE nxtag:tags/*1/label LIKE ? AND
        ecm:isProxy = 0
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAG_SUGGESTIONS">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT DISTINCT tag:label FROM Tag WHERE tag:label LIKE ? AND
        ecm:isProxy = 0
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAG_SUGGESTIONS_FOR_USER">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT DISTINCT tag:label FROM Tag WHERE tag:label LIKE ? AND
        ecm:isProxy = 0
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_ALL_TAGS">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_ALL_TAGS_FOR_USER">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging WHERE
        dc:creator = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENTS">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging WHERE
        relation:source IN ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGS_FOR_DOCUMENTS_AND_USER">
      <property name="useUnrestrictedSession">true</property>
      <property name="language">NXTAG</property>
      <pattern>
        COUNTSOURCE: SELECT tag:label, relation:source FROM Tagging WHERE
        relation:source IN ? AND dc:creator = ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

    <genericPageProvider class="org.nuxeo.ecm.platform.query.nxql.CoreQueryAndFetchPageProvider" name="GET_TAGGED_DOCUMENTS_UNDER">
      <property name="useUnrestrictedSession">true</property>
      <pattern>
        SELECT ecm:uuid FROM Document WHERE ecm:path STARTSWITH ?
      </pattern>
      <pageSize>0</pageSize>
      <maxPageSize>0</maxPageSize>
    </genericPageProvider>

  </extension>