Platform Explorer / server 10.10

Extension point directories

This extension point can be used to register new multi-directories. The extension can contain any number of directories declarations of the form:

        ...
        <directory name="userDirectory">
        <schema>user</schema>
        <idField>username</idField>
        <passwordField>password</passwordField>
        <querySizeLimit>1000</querySizeLimit>
        <source name="ldapusers">
            <subDirectory name="authinfo">
                <field for="email">mail</field>
            </subDirectory>
            <subDirectory name="userinfo">
                <field for="firstName">givenName</field>
                <field for="lastName">sn</field>
                <field for="company">o</field>
            </subDirectory>
        </source>
        <source creation="true" name="sqlusers">
            <subDirectory name="sqlUserDirectory"/>
        </source>
    </directory>
        ...

Here is the description for each field:

  • schema - the name of the schema to be used for the directory entries.
  • idField - the id field designs the primary key in the table, used for retrieving entries by id.
  • querySizeLimit - the maximum number of results that the queries on this directory should return; if there are more results than this, an exception will be raised.

The references tag is used to define relations between directories. (TODO: describe the references types.)

Contribution Descriptor

Existing Contributions

  • nuxeo-runtime-10.10.jar /opt/apidoc/nuxeo-server-10.10-tomcat/nxserver/config/default-multi-users-directory-bundle.xml
    <extension point="directories" target="org.nuxeo.ecm.directory.multi.MultiDirectoryFactory">
        <directory name="userDirectory">
          <schema>user</schema>
          <idField>username</idField>
          <passwordField>password</passwordField>
          <source name="userLDAPSource">
            <subDirectory name="userLDAPDirectory"/>
            <optional>true</optional>
          </source>
          <source creation="true" name="userSQLSource">
            <subDirectory name="userSQLDirectory"/>
          </source>
        </directory>
      </extension>