{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-core-api",
      "artifactVersion": "2021.53.3",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "org.nuxeo.ecm.core",
          "org.nuxeo.ecm.core.api",
          "org.nuxeo.ecm.core.bulk",
          "org.nuxeo.ecm.core.cache",
          "org.nuxeo.ecm.core.event",
          "org.nuxeo.ecm.core.io",
          "org.nuxeo.ecm.core.mimetype",
          "org.nuxeo.ecm.core.mongodb",
          "org.nuxeo.ecm.core.persistence",
          "org.nuxeo.ecm.core.query",
          "org.nuxeo.ecm.core.redis",
          "org.nuxeo.ecm.core.schema",
          "org.nuxeo.ecm.platform.el"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm.core",
        "id": "grp:org.nuxeo.ecm.core",
        "name": "org.nuxeo.ecm.core",
        "parentIds": [],
        "readmes": [],
        "version": "2021.53"
      },
      "bundleId": "org.nuxeo.ecm.core.api",
      "components": [
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.adapter.DocumentAdapterService",
          "documentation": "\n    Service providing a dynamic adapter mechanism to adapt documents to random interfaces.\n    @author Bogdan Stefanescu (bs@nuxeo.com)\n  \n",
          "documentationHtml": "<p>\nService providing a dynamic adapter mechanism to adapt documents to random interfaces.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.DocumentAdapterService",
              "descriptors": [
                "org.nuxeo.ecm.core.api.adapter.DocumentAdapterDescriptor"
              ],
              "documentation": "\n\n      Extension Point for registering new document adapters\n      XML extensions may contain any number of 'adapter' elements of the form:\n      <adapter\n    class=\"org.nuxeo.ecm.sample.adapter.Versionable\" facet=\"Versionable\" factory=\"org.nuxeo.ecm.sample.adapter.VersionableFactory\"/>\n\n      This means any document having the facet 'facet' can be adapted to a 'class' object using the factory 'factory'\n      <p/>\n\n      The facet attribute is optional and serve to restrict the applicability of the adapter.\n      If no facet is specified the adapter will be applicable on any document.\n    \n",
              "documentationHtml": "<p>\nExtension Point for registering new document adapters\nXML extensions may contain any number of &#39;adapter&#39; elements of the form:\n\n</p><p>\nThis means any document having the facet &#39;facet&#39; can be adapted to a &#39;class&#39; object using the factory &#39;factory&#39;\n</p><p>\nThe facet attribute is optional and serve to restrict the applicability of the adapter.\nIf no facet is specified the adapter will be applicable on any document.\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentAdapterService/ExtensionPoints/org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "id": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "label": "adapters (org.nuxeo.ecm.core.api.DocumentAdapterService)",
              "name": "adapters",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentAdapterService",
          "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
          "requirements": [],
          "resolutionOrder": 113,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.DocumentAdapterService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentAdapterService/Services/org.nuxeo.ecm.core.api.adapter.DocumentAdapterService",
              "id": "org.nuxeo.ecm.core.api.adapter.DocumentAdapterService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 809,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.core.api.DocumentAdapterService\" version=\"1.0.0\">\n  <documentation>\n    Service providing a dynamic adapter mechanism to adapt documents to random interfaces.\n    @author Bogdan Stefanescu (bs@nuxeo.com)\n  </documentation>\n\n  <implementation class=\"org.nuxeo.ecm.core.api.adapter.DocumentAdapterService\"/>\n\n  <service>\n    <provide\n      interface=\"org.nuxeo.ecm.core.api.adapter.DocumentAdapterService\"/>\n  </service>\n\n  <extension-point name=\"adapters\">\n\n    <documentation>\n      Extension Point for registering new document adapters\n      XML extensions may contain any number of 'adapter' elements of the form:\n      <adapter facet=\"Versionable\"\n        class=\"org.nuxeo.ecm.sample.adapter.Versionable\"\n        factory=\"org.nuxeo.ecm.sample.adapter.VersionableFactory\"/>\n      This means any document having the facet 'facet' can be adapted to a 'class' object using the factory 'factory'\n      <p/>\n      The facet attribute is optional and serve to restrict the applicability of the adapter.\n      If no facet is specified the adapter will be applicable on any document.\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.core.api.adapter.DocumentAdapterDescriptor\"/>\n\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/DocumentAdapterService.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.repository.RepositoryManagerImpl",
          "documentation": "\n    Manages repositories.\n  \n",
          "documentationHtml": "<p>\nManages repositories.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.repository.RepositoryManager",
              "descriptors": [
                "org.nuxeo.ecm.core.api.repository.Repository"
              ],
              "documentation": "\n      Obsolete repositories definition.\n      Use org.nuxeo.ecm.core.storage.sql.RepositoryService instead.\n    \n",
              "documentationHtml": "<p>\nObsolete repositories definition.\nUse org.nuxeo.ecm.core.storage.sql.RepositoryService instead.\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.repository.RepositoryManager/ExtensionPoints/org.nuxeo.ecm.core.api.repository.RepositoryManager--repositories",
              "id": "org.nuxeo.ecm.core.api.repository.RepositoryManager--repositories",
              "label": "repositories (org.nuxeo.ecm.core.api.repository.RepositoryManager)",
              "name": "repositories",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.repository.RepositoryManager",
          "name": "org.nuxeo.ecm.core.api.repository.RepositoryManager",
          "requirements": [],
          "resolutionOrder": 114,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.repository.RepositoryManager",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.repository.RepositoryManager/Services/org.nuxeo.ecm.core.api.repository.RepositoryManager",
              "id": "org.nuxeo.ecm.core.api.repository.RepositoryManager",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 814,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.core.api.repository.RepositoryManager\" version=\"1.0.0\">\n  <documentation>\n    Manages repositories.\n  </documentation>\n\n  <implementation class=\"org.nuxeo.ecm.core.api.repository.RepositoryManagerImpl\"/>\n\n  <service>\n    <provide\n      interface=\"org.nuxeo.ecm.core.api.repository.RepositoryManager\"/>\n  </service>\n\n  <extension-point name=\"repositories\">\n    <documentation>\n      Obsolete repositories definition.\n      Use org.nuxeo.ecm.core.storage.sql.RepositoryService instead.\n    </documentation>\n    <object class=\"org.nuxeo.ecm.core.api.repository.Repository\"/>\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/RepositoryManager.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.validation.DocumentValidationServiceImpl",
          "documentation": "\n    Service providing a way to validates document according to constraints described in schemas.\n  \n",
          "documentationHtml": "<p>\nService providing a way to validates document according to constraints described in schemas.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.DocumentValidationService",
              "descriptors": [
                "org.nuxeo.ecm.core.api.validation.DocumentValidationDescriptor"
              ],
              "documentation": "\n\n      Extension Point to enable/disable validation in any context.\n      <validation\n    activated=\"true\" context=\"CoreSession.saveDocument\"/>\n",
              "documentationHtml": "<p>\nExtension Point to enable/disable validation in any context.\n</p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentValidationService/ExtensionPoints/org.nuxeo.ecm.core.api.DocumentValidationService--activations",
              "id": "org.nuxeo.ecm.core.api.DocumentValidationService--activations",
              "label": "activations (org.nuxeo.ecm.core.api.DocumentValidationService)",
              "name": "activations",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentValidationService",
          "name": "org.nuxeo.ecm.core.api.DocumentValidationService",
          "requirements": [],
          "resolutionOrder": 115,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.DocumentValidationService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentValidationService/Services/org.nuxeo.ecm.core.api.validation.DocumentValidationService",
              "id": "org.nuxeo.ecm.core.api.validation.DocumentValidationService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 810,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.core.api.DocumentValidationService\" version=\"1.0.0\">\n  <documentation>\n    Service providing a way to validates document according to constraints described in schemas.\n  </documentation>\n\n  <implementation class=\"org.nuxeo.ecm.core.api.validation.DocumentValidationServiceImpl\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.core.api.validation.DocumentValidationService\" />\n  </service>\n\n  <extension-point name=\"activations\">\n\n    <documentation>\n      Extension Point to enable/disable validation in any context.\n      <validation context=\"CoreSession.saveDocument\" activated=\"true\" />\n    </documentation>\n\n    <object class=\"org.nuxeo.ecm.core.api.validation.DocumentValidationDescriptor\" />\n\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/DocumentValidationService.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentValidationService--activations",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentValidationService.activations/Contributions/org.nuxeo.ecm.core.api.DocumentValidationService.activations--activations",
              "id": "org.nuxeo.ecm.core.api.DocumentValidationService.activations--activations",
              "registrationOrder": 0,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentValidationService",
                "name": "org.nuxeo.ecm.core.api.DocumentValidationService",
                "type": "service"
              },
              "version": "2021.53.3",
              "xml": "<extension point=\"activations\" target=\"org.nuxeo.ecm.core.api.DocumentValidationService\">\n    <validation activated=\"true\" context=\"createDocument\"/>\n    <validation activated=\"true\" context=\"saveDocument\"/>\n    <validation activated=\"true\" context=\"importDocument\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.DocumentValidationService.activations",
          "name": "org.nuxeo.ecm.core.api.DocumentValidationService.activations",
          "requirements": [
            "org.nuxeo.ecm.core.api.DocumentValidationService"
          ],
          "resolutionOrder": 116,
          "services": [],
          "startOrder": 116,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.api.DocumentValidationService.activations\">\n\n  <require>org.nuxeo.ecm.core.api.DocumentValidationService</require>\n\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentValidationService\" point=\"activations\">\n    <validation context=\"createDocument\" activated=\"true\" />\n    <validation context=\"saveDocument\" activated=\"true\" />\n    <validation context=\"importDocument\" activated=\"true\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/DocumentValidationService-activation.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.blob.BlobManagerComponent",
          "documentation": "\n    Blob Manager, delegating logic to the appropriate Blob Provider.\n  \n",
          "documentationHtml": "<p>\nBlob Manager, delegating logic to the appropriate Blob Provider.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.blob.BlobManager",
              "descriptors": [
                "org.nuxeo.ecm.core.blob.BlobProviderDescriptor"
              ],
              "documentation": "\n      Extension points to register the blob providers.\n    \n",
              "documentationHtml": "<p>\nExtension points to register the blob providers.\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.blob.BlobManager/ExtensionPoints/org.nuxeo.ecm.core.blob.BlobManager--configuration",
              "id": "org.nuxeo.ecm.core.blob.BlobManager--configuration",
              "label": "configuration (org.nuxeo.ecm.core.blob.BlobManager)",
              "name": "configuration",
              "version": "2021.53.3"
            }
          ],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "\n      Delay before a blob which has had its digest computed asynchronously is deleted.\n      @since 2021.9\n    \n",
              "documentationHtml": "<p>\nDelay before a blob which has had its digest computed asynchronously is deleted.\n&#64;since 2021.9\n</p><p></p>",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.blob.BlobManager/Contributions/org.nuxeo.ecm.core.blob.BlobManager--configuration",
              "id": "org.nuxeo.ecm.core.blob.BlobManager--configuration",
              "registrationOrder": 16,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "2021.53.3",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <documentation>\n      Delay before a blob which has had its digest computed asynchronously is deleted.\n      @since 2021.9\n    </documentation>\n    <property name=\"nuxeo.blobmanager.delete.delay\">1h</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.blob.BlobManager",
          "name": "org.nuxeo.ecm.core.blob.BlobManager",
          "requirements": [],
          "resolutionOrder": 117,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.blob.BlobManager",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.blob.BlobManager/Services/org.nuxeo.ecm.core.blob.BlobManager",
              "id": "org.nuxeo.ecm.core.blob.BlobManager",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 817,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.blob.BlobManager\" version=\"1.0.0\">\n\n  <documentation>\n    Blob Manager, delegating logic to the appropriate Blob Provider.\n  </documentation>\n\n  <implementation class=\"org.nuxeo.ecm.core.blob.BlobManagerComponent\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.core.blob.BlobManager\" />\n  </service>\n\n  <extension-point name=\"configuration\">\n    <documentation>\n      Extension points to register the blob providers.\n    </documentation>\n    <object class=\"org.nuxeo.ecm.core.blob.BlobProviderDescriptor\" />\n  </extension-point>\n\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <documentation>\n      Delay before a blob which has had its digest computed asynchronously is deleted.\n      @since 2021.9\n    </documentation>\n    <property name=\"nuxeo.blobmanager.delete.delay\">1h</property>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/blobmanager-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent",
          "documentation": "\n    The BlobHolderAdapter provides the BlobHolderAdapterService wich give the needed BlobHolder.\n    A BlobHolder is an adapter that provides methods to get binaries and related metadatas.\n    @author Thierry Delprat (td@nuxeo.com)\n  \n",
          "documentationHtml": "<p>\nThe BlobHolderAdapter provides the BlobHolderAdapterService wich give the needed BlobHolder.\nA BlobHolder is an adapter that provides methods to get binaries and related metadatas.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent",
              "descriptors": [
                "org.nuxeo.ecm.core.api.blobholder.BlobHolderFactoryDescriptor"
              ],
              "documentation": "\n      @author Thierry Delprat (td@nuxeo.com)\n\n      This extension point let you contribute custom factories for BlobHolder\n      according to DocumentType\n    \n",
              "documentationHtml": "<p>\nThis extension point let you contribute custom factories for BlobHolder\naccording to DocumentType\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent/ExtensionPoints/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent--BlobHolderFactory",
              "id": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent--BlobHolderFactory",
              "label": "BlobHolderFactory (org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent)",
              "name": "BlobHolderFactory",
              "version": "2021.53.3"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent",
              "descriptors": [
                "org.nuxeo.ecm.core.api.externalblob.ExternalBlobAdapterDescriptor"
              ],
              "documentation": "\n      @author Anahide Tchertchian (at@nuxeo.com)\n\n      Contribute external blob adapters. Contributed classes have to follow the\n      ExternalBlobAdapter interface.\n\n      Example of contribution using the default file system adapter:\n\n      <code>\n    <adapter\n        class=\"org.nuxeo.ecm.core.api.externalblob.FileSystemExternalBlobAdapter\" prefix=\"fs\">\n        <property name=\"container\">/tmp/</property>\n    </adapter>\n</code>\n",
              "documentationHtml": "<p>\nContribute external blob adapters. Contributed classes have to follow the\nExternalBlobAdapter interface.\n</p><p>\nExample of contribution using the default file system adapter:\n</p><p>\n</p><pre><code>    &lt;adapter\n        class&#61;&#34;org.nuxeo.ecm.core.api.externalblob.FileSystemExternalBlobAdapter&#34; prefix&#61;&#34;fs&#34;&gt;\n        &lt;property name&#61;&#34;container&#34;&gt;/tmp/&lt;/property&gt;\n    &lt;/adapter&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent/ExtensionPoints/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent--ExternalBlobAdapter",
              "id": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent--ExternalBlobAdapter",
              "label": "ExternalBlobAdapter (org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent)",
              "name": "ExternalBlobAdapter",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent",
          "name": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent",
          "requirements": [],
          "resolutionOrder": 118,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent/Services/org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterService",
              "id": "org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 811,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component\n  name=\"org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent\">\n\n  <implementation\n    class=\"org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterComponent\" />\n  <documentation>\n    The BlobHolderAdapter provides the BlobHolderAdapterService wich give the needed BlobHolder.\n    A BlobHolder is an adapter that provides methods to get binaries and related metadatas.\n    @author Thierry Delprat (td@nuxeo.com)\n  </documentation>\n\n  <service>\n    <provide\n      interface=\"org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterService\" />\n  </service>\n\n  <extension-point name=\"BlobHolderFactory\">\n    <documentation>\n      @author Thierry Delprat (td@nuxeo.com)\n\n      This extension point let you contribute custom factories for BlobHolder\n      according to DocumentType\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.ecm.core.api.blobholder.BlobHolderFactoryDescriptor\" />\n  </extension-point>\n\n  <extension-point name=\"ExternalBlobAdapter\">\n    <documentation>\n      @author Anahide Tchertchian (at@nuxeo.com)\n\n      Contribute external blob adapters. Contributed classes have to follow the\n      ExternalBlobAdapter interface.\n\n      Example of contribution using the default file system adapter:\n\n      <code>\n        <adapter prefix=\"fs\"\n          class=\"org.nuxeo.ecm.core.api.externalblob.FileSystemExternalBlobAdapter\">\n          <property name=\"container\">/tmp/</property>\n        </adapter>\n      </code>\n\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.ecm.core.api.externalblob.ExternalBlobAdapterDescriptor\" />\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/blob-holder-service-framework.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentation": "Adapters BlobHolders\n",
          "documentationHtml": "<p>\nAdapters BlobHolders</p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.blohodlers.adapters/Contributions/org.nuxeo.ecm.core.api.blohodlers.adapters--adapters",
              "id": "org.nuxeo.ecm.core.api.blohodlers.adapters--adapters",
              "registrationOrder": 3,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentAdapterService",
                "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
                "type": "service"
              },
              "version": "2021.53.3",
              "xml": "<extension point=\"adapters\" target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\">\n    <adapter class=\"org.nuxeo.ecm.core.api.blobholder.BlobHolder\" factory=\"org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterFactory\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.blohodlers.adapters",
          "name": "org.nuxeo.ecm.core.api.blohodlers.adapters",
          "requirements": [],
          "resolutionOrder": 119,
          "services": [],
          "startOrder": 117,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.core.api.blohodlers.adapters\">\n  <documentation>Adapters BlobHolders</documentation>\n\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\"\n    point=\"adapters\">\n    <adapter class=\"org.nuxeo.ecm.core.api.blobholder.BlobHolder\"\n      factory=\"org.nuxeo.ecm.core.api.blobholder.BlobHolderAdapterFactory\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/blob-holder-adapters-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.pathsegment.PathSegmentComponent",
          "documentation": "\n    Component defining the implementation to use to compute the path\n    segment for a new DocumentModel.\n  \n",
          "documentationHtml": "<p>\nComponent defining the implementation to use to compute the path\nsegment for a new DocumentModel.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.pathsegment.PathSegmentService",
              "descriptors": [
                "org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceDescriptor"
              ],
              "documentation": "\n      Extension point defining the implementation for the computation of\n      the path segment for new a DocumentModel. Example:\n\n      <code>\n    <service class=\"some-class\"/>\n</code>\n\n\n      The provided class must implement org.nuxeo.ecm.core.api.pathsegment.PathSegmentService\n\n      The default implementation is org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceDefault\n      You can contribute org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceCompat\n      to get pre-Nuxeo 5.4 behavior.\n    \n",
              "documentationHtml": "<p>\nExtension point defining the implementation for the computation of\nthe path segment for new a DocumentModel. Example:\n</p><p>\n</p><pre><code>    &lt;service class&#61;&#34;some-class&#34;/&gt;\n</code></pre><p>\nThe provided class must implement org.nuxeo.ecm.core.api.pathsegment.PathSegmentService\n</p><p>\nThe default implementation is org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceDefault\nYou can contribute org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceCompat\nto get pre-Nuxeo 5.4 behavior.\n</p><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.pathsegment.PathSegmentService/ExtensionPoints/org.nuxeo.ecm.core.api.pathsegment.PathSegmentService--pathSegmentService",
              "id": "org.nuxeo.ecm.core.api.pathsegment.PathSegmentService--pathSegmentService",
              "label": "pathSegmentService (org.nuxeo.ecm.core.api.pathsegment.PathSegmentService)",
              "name": "pathSegmentService",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.pathsegment.PathSegmentService",
          "name": "org.nuxeo.ecm.core.api.pathsegment.PathSegmentService",
          "requirements": [],
          "resolutionOrder": 120,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.pathsegment.PathSegmentService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.pathsegment.PathSegmentService/Services/org.nuxeo.ecm.core.api.pathsegment.PathSegmentService",
              "id": "org.nuxeo.ecm.core.api.pathsegment.PathSegmentService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 812,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.api.pathsegment.PathSegmentService\">\n\n  <implementation\n    class=\"org.nuxeo.ecm.core.api.pathsegment.PathSegmentComponent\" />\n  <documentation>\n    Component defining the implementation to use to compute the path\n    segment for a new DocumentModel.\n  </documentation>\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.core.api.pathsegment.PathSegmentService\" />\n  </service>\n\n  <extension-point name=\"pathSegmentService\">\n    <documentation>\n      Extension point defining the implementation for the computation of\n      the path segment for new a DocumentModel. Example:\n\n      <code>\n        <service class=\"some-class\" />\n      </code>\n\n      The provided class must implement org.nuxeo.ecm.core.api.pathsegment.PathSegmentService\n\n      The default implementation is org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceDefault\n      You can contribute org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceCompat\n      to get pre-Nuxeo 5.4 behavior.\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.ecm.core.api.pathsegment.PathSegmentServiceDescriptor\" />\n\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/pathsegment-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.localconfiguration.LocalConfigurationServiceImpl",
          "documentation": "\n    The LocalConfiguration service manages LocalConfiguration classes.\n    It provides a method to retrieve LocalConfiguration from a current document\n    and a given facet.\n\n    @author Thomas Roger (troger@nuxeo.com)\n  \n",
          "documentationHtml": "<p>\nThe LocalConfiguration service manages LocalConfiguration classes.\nIt provides a method to retrieve LocalConfiguration from a current document\nand a given facet.\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.core.LocalConfigurationService",
          "name": "org.nuxeo.core.LocalConfigurationService",
          "requirements": [],
          "resolutionOrder": 121,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.core.LocalConfigurationService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.core.LocalConfigurationService/Services/org.nuxeo.ecm.core.api.localconfiguration.LocalConfigurationService",
              "id": "org.nuxeo.ecm.core.api.localconfiguration.LocalConfigurationService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 798,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.core.LocalConfigurationService\">\n\n  <documentation>\n    The LocalConfiguration service manages LocalConfiguration classes.\n    It provides a method to retrieve LocalConfiguration from a current document\n    and a given facet.\n\n    @author Thomas Roger (troger@nuxeo.com)\n  </documentation>\n\n  <implementation\n    class=\"org.nuxeo.ecm.core.api.localconfiguration.LocalConfigurationServiceImpl\"/>\n\n  <service>\n    <provide\n      interface=\"org.nuxeo.ecm.core.api.localconfiguration.LocalConfigurationService\"/>\n  </service>\n</component>\n",
          "xmlFileName": "/OSGI-INF/local-configuration-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.propertiesmapping.impl.PropertiesMappingComponent",
          "documentationHtml": "",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent",
              "descriptors": [
                "org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingDescriptor"
              ],
              "documentation": "\n      This extension point can be used to register Mappings.\n      Mapping is in the form : target DocumentModel property path : source DocumentModel property path\n      <code>\n    <mapping name=\"mappingName\">\n        <property path=\"somePropOnTargetDoc\">somePropOnSourceDoc</property>\n    </mapping>\n</code>\n",
              "documentationHtml": "<p>\nThis extension point can be used to register Mappings.\nMapping is in the form : target DocumentModel property path : source DocumentModel property path\n</p><p></p><pre><code>    &lt;mapping name&#61;&#34;mappingName&#34;&gt;\n        &lt;property path&#61;&#34;somePropOnTargetDoc&#34;&gt;somePropOnSourceDoc&lt;/property&gt;\n    &lt;/mapping&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent/ExtensionPoints/org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent--mapping",
              "id": "org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent--mapping",
              "label": "mapping (org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent)",
              "name": "mapping",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent",
          "name": "org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent",
          "requirements": [],
          "resolutionOrder": 122,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent/Services/org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingService",
              "id": "org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 813,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingComponent\">\n\n  <implementation class=\"org.nuxeo.ecm.core.api.propertiesmapping.impl.PropertiesMappingComponent\" version=\"1.0.0\"/>\n\n  <service>\n    <provide interface=\"org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingService\" />\n  </service>\n\n  <documentation>\n  </documentation>\n\n  <extension-point name=\"mapping\">\n    <documentation>\n      This extension point can be used to register Mappings.\n      Mapping is in the form : target DocumentModel property path : source DocumentModel property path\n      <code>\n        <mapping name=\"mappingName\">\n          <property path=\"somePropOnTargetDoc\">somePropOnSourceDoc</property>\n        </mapping>\n      </code>\n    </documentation>\n    <object class=\"org.nuxeo.ecm.core.api.propertiesmapping.PropertiesMappingDescriptor\"/>\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/propertiesmapping-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentation": "\n    Adapters contribution for thumbnail\n  \n",
          "documentationHtml": "<p>\nAdapters contribution for thumbnail\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.thumbnail.adapter/Contributions/org.nuxeo.ecm.core.api.thumbnail.adapter--adapters",
              "id": "org.nuxeo.ecm.core.api.thumbnail.adapter--adapters",
              "registrationOrder": 4,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentAdapterService",
                "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
                "type": "service"
              },
              "version": "2021.53.3",
              "xml": "<extension point=\"adapters\" target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\">\n    <adapter class=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailAdapter\" factory=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailAdapterFactory\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.thumbnail.adapter",
          "name": "org.nuxeo.ecm.core.api.thumbnail.adapter",
          "requirements": [],
          "resolutionOrder": 123,
          "services": [],
          "startOrder": 119,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.core.api.thumbnail.adapter\">\n  <documentation>\n    Adapters contribution for thumbnail\n  </documentation>\n\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\"\n    point=\"adapters\">\n    <adapter\n      class=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailAdapter\"\n      factory=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailAdapterFactory\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/thumbnail-adapter-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.ecm.core.api.thumbnail.ThumbnailServiceImpl",
          "documentationHtml": "",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.ecm.core.api.thumbnail.ThumbnailService",
              "descriptors": [
                "org.nuxeo.ecm.core.api.thumbnail.ThumbnailFactoryDescriptor"
              ],
              "documentation": "\n      @author Vladimir Pasquier (vpasquier@nuxeo.com)\n      This extension\n      provides thumbnail factories according to the type, facet and\n      default one.\n      <code>\n    <thumbnailFactory facet=\"Folderish\"\n        factoryClass=\"org.nuxeo.ecm.platform.thumbnail.factories.ThumbnailFolderishFactory\" name=\"thumbnailFolderishFactory\"/>\n    <thumbnailFactory\n        factoryClass=\"org.nuxeo.ecm.platform.thumbnail.factories.ThumbnailDocumentFactory\" name=\"thumbnailDocumentFactory\"/>\n</code>\n",
              "documentationHtml": "<p>\nThis extension\nprovides thumbnail factories according to the type, facet and\ndefault one.\n</p><p></p><pre><code>    &lt;thumbnailFactory facet&#61;&#34;Folderish&#34;\n        factoryClass&#61;&#34;org.nuxeo.ecm.platform.thumbnail.factories.ThumbnailFolderishFactory&#34; name&#61;&#34;thumbnailFolderishFactory&#34;/&gt;\n    &lt;thumbnailFactory\n        factoryClass&#61;&#34;org.nuxeo.ecm.platform.thumbnail.factories.ThumbnailDocumentFactory&#34; name&#61;&#34;thumbnailDocumentFactory&#34;/&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.thumbnail.ThumbnailService/ExtensionPoints/org.nuxeo.ecm.core.api.thumbnail.ThumbnailService--thumbnailFactory",
              "id": "org.nuxeo.ecm.core.api.thumbnail.ThumbnailService--thumbnailFactory",
              "label": "thumbnailFactory (org.nuxeo.ecm.core.api.thumbnail.ThumbnailService)",
              "name": "thumbnailFactory",
              "version": "2021.53.3"
            }
          ],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.thumbnail.ThumbnailService",
          "name": "org.nuxeo.ecm.core.api.thumbnail.ThumbnailService",
          "requirements": [],
          "resolutionOrder": 124,
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.ecm.core.api.thumbnail.ThumbnailService",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.thumbnail.ThumbnailService/Services/org.nuxeo.ecm.core.api.thumbnail.ThumbnailService",
              "id": "org.nuxeo.ecm.core.api.thumbnail.ThumbnailService",
              "overriden": false,
              "version": "2021.53.3"
            }
          ],
          "startOrder": 815,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailService\">\n\n  <implementation\n    class=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailServiceImpl\" />\n  <documentation>\n  </documentation>\n\n  <service>\n    <provide\n      interface=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailService\" />\n  </service>\n\n  <extension-point name=\"thumbnailFactory\">\n    <documentation>\n      @author Vladimir Pasquier (vpasquier@nuxeo.com)\n      This extension\n      provides thumbnail factories according to the type, facet and\n      default one.\n      <code>\n        <thumbnailFactory name=\"thumbnailFolderishFactory\"\n          facet=\"Folderish\"\n          factoryClass=\"org.nuxeo.ecm.platform.thumbnail.factories.ThumbnailFolderishFactory\" />\n        <thumbnailFactory name=\"thumbnailDocumentFactory\"\n          factoryClass=\"org.nuxeo.ecm.platform.thumbnail.factories.ThumbnailDocumentFactory\" />\n      </code>\n\n    </documentation>\n\n    <object\n      class=\"org.nuxeo.ecm.core.api.thumbnail.ThumbnailFactoryDescriptor\" />\n\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/thumbnail-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "\n      Property that defines the max length of the document name,\n      which is mainly used to build the document path.\n    \n",
              "documentationHtml": "<p>\nProperty that defines the max length of the document name,\nwhich is mainly used to build the document path.\n</p><p></p>",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.properties/Contributions/org.nuxeo.ecm.core.api.properties--configuration",
              "id": "org.nuxeo.ecm.core.api.properties--configuration",
              "registrationOrder": 17,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "2021.53.3",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n    <documentation>\n      Property that defines the max length of the document name,\n      which is mainly used to build the document path.\n    </documentation>\n    <property name=\"nuxeo.path.segment.maxsize\">24</property>\n\n    <documentation>\n      Property that defines if a transient username should be unique no matter what base username is provided,\n      or if a transient username should be always the same for a given base username.\n\n      @since 10.3\n    </documentation>\n    <property name=\"nuxeo.transient.username.unique\">false</property>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.api.properties",
          "name": "org.nuxeo.ecm.core.api.properties",
          "requirements": [],
          "resolutionOrder": 125,
          "services": [],
          "startOrder": 118,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n\n<component name=\"org.nuxeo.ecm.core.api.properties\">\n\n  <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n    <documentation>\n      Property that defines the max length of the document name,\n      which is mainly used to build the document path.\n    </documentation>\n    <property name=\"nuxeo.path.segment.maxsize\">24</property>\n\n    <documentation>\n      Property that defines if a transient username should be unique no matter what base username is provided,\n      or if a transient username should be always the same for a given base username.\n\n      @since 10.3\n    </documentation>\n    <property name=\"nuxeo.transient.username.unique\">false</property>\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/core-api-properties.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "\n            Enable Legacy behavior (Nuxeo 6.x) on ACL order of execution. On Nuxeo 6.x and below, the ACL execution order\n            used to be Inherited -&gt; Local -&gt; LocalGroup (custom), on &gt;7.x it's Inherited -&gt; LocalGroup (custom) -&gt; Local.\n            This flag enables Legacy ACL mode on newer Nuxeo versions 7.x and above.\n        \n",
              "documentationHtml": "<p>\nEnable Legacy behavior (Nuxeo 6.x) on ACL order of execution. On Nuxeo 6.x and below, the ACL execution order\nused to be Inherited -&gt; Local -&gt; LocalGroup (custom), on &gt;7.x it&#39;s Inherited -&gt; LocalGroup (custom) -&gt; Local.\nThis flag enables Legacy ACL mode on newer Nuxeo versions 7.x and above.\n</p><p></p>",
              "extensionPoint": "org.nuxeo.runtime.ConfigurationService--configuration",
              "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.security.acl.properties/Contributions/org.nuxeo.ecm.core.security.acl.properties--configuration",
              "id": "org.nuxeo.ecm.core.security.acl.properties--configuration",
              "registrationOrder": 18,
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.ConfigurationService",
                "name": "org.nuxeo.runtime.ConfigurationService",
                "type": "service"
              },
              "version": "2021.53.3",
              "xml": "<extension point=\"configuration\" target=\"org.nuxeo.runtime.ConfigurationService\">\n        <documentation>\n            Enable Legacy behavior (Nuxeo 6.x) on ACL order of execution. On Nuxeo 6.x and below, the ACL execution order\n            used to be Inherited -&gt; Local -&gt; LocalGroup (custom), on &gt;7.x it's Inherited -&gt; LocalGroup (custom) -&gt; Local.\n            This flag enables Legacy ACL mode on newer Nuxeo versions 7.x and above.\n        </documentation>\n        <property name=\"nuxeo.security.acl.legacyBehavior\">false</property>\n    </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api/org.nuxeo.ecm.core.security.acl.properties",
          "name": "org.nuxeo.ecm.core.security.acl.properties",
          "requirements": [],
          "resolutionOrder": 126,
          "services": [],
          "startOrder": 160,
          "version": "2021.53.3",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.ecm.core.security.acl.properties\">\n    <extension target=\"org.nuxeo.runtime.ConfigurationService\" point=\"configuration\">\n        <documentation>\n            Enable Legacy behavior (Nuxeo 6.x) on ACL order of execution. On Nuxeo 6.x and below, the ACL execution order\n            used to be Inherited -> Local -> LocalGroup (custom), on >7.x it's Inherited -> LocalGroup (custom) -> Local.\n            This flag enables Legacy ACL mode on newer Nuxeo versions 7.x and above.\n        </documentation>\n        <property name=\"nuxeo.security.acl.legacyBehavior\">false</property>\n    </extension>\n</component>\n",
          "xmlFileName": "/OSGI-INF/legacy-acp-behavior.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-core-api-2021.53.3.jar",
      "groupId": "org.nuxeo.ecm.core",
      "hierarchyPath": "/grp:org.nuxeo.ecm.core/org.nuxeo.ecm.core.api",
      "id": "org.nuxeo.ecm.core.api",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: 1.6.0_20 (Sun Microsystems Inc.)\r\nBuilt-By: root\r\nBuild-Jdk: 11.0.22\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 5.4.2.qualifier\r\nExport-Package: org.nuxeo.ecm.core;api=split;mandatory:=api,org.nuxeo.\r\n ecm.core.api;api=split;mandatory:=api,org.nuxeo.ecm.core.api.adapter,\r\n org.nuxeo.ecm.core.api.blobholder,org.nuxeo.ecm.core.api.event,org.nu\r\n xeo.ecm.core.api.event.impl,org.nuxeo.ecm.core.api.externalblob,org.n\r\n uxeo.ecm.core.api.facet,org.nuxeo.ecm.core.api.impl,org.nuxeo.ecm.cor\r\n e.api.impl.blob,org.nuxeo.ecm.core.api.impl.converter,org.nuxeo.ecm.c\r\n ore.api.local,org.nuxeo.ecm.core.api.model,org.nuxeo.ecm.core.api.mod\r\n el.impl,org.nuxeo.ecm.core.api.model.impl.osm,org.nuxeo.ecm.core.api.\r\n model.impl.osm.util,org.nuxeo.ecm.core.api.model.impl.primitives,org.\r\n nuxeo.ecm.core.api.operation,org.nuxeo.ecm.core.api.pathsegment,org.n\r\n uxeo.ecm.core.api.repository,org.nuxeo.ecm.core.api.repository.cache,\r\n org.nuxeo.ecm.core.api.security,org.nuxeo.ecm.core.api.security.impl,\r\n org.nuxeo.ecm.core.api.tree,org.nuxeo.ecm.core.url,org.nuxeo.ecm.core\r\n .url.nxdoc,org.nuxeo.ecm.core.url.nxobj,org.nuxeo.ecm.core.utils\r\nBundle-ActivationPolicy: lazy\r\nBundle-ClassPath: .\r\nBundle-Name: org.nuxeo.ecm.core.api\r\nBundle-RequiredExecutionEnvironment: JavaSE-1.6\r\nNuxeo-Component: OSGI-INF/DocumentAdapterService.xml, OSGI-INF/Reposit\r\n oryManager.xml, OSGI-INF/DocumentValidationService.xml, OSGI-INF/Docu\r\n mentValidationService-activation.xml, OSGI-INF/blobmanager-service.xm\r\n l, OSGI-INF/blob-holder-service-framework.xml, OSGI-INF/blob-holder-a\r\n dapters-contrib.xml, OSGI-INF/pathsegment-service.xml, OSGI-INF/local\r\n -configuration-service.xml, OSGI-INF/propertiesmapping-service.xml, O\r\n SGI-INF/thumbnail-adapter-contrib.xml, OSGI-INF/thumbnail-service.xml\r\n , OSGI-INF/core-api-properties.xml, OSGI-INF/legacy-acp-behavior.xml\r\nImport-Package: javax.security.auth,javax.security.auth.callback,javax\r\n .security.auth.login,javax.security.auth.spi,org.apache.commons.colle\r\n ctions.bidimap,org.apache.commons.collections.map,org.apache.commons.\r\n logging,org.nuxeo.common,org.nuxeo.common.collections,org.nuxeo.commo\r\n n.utils,org.nuxeo.common.xmap.annotation,org.nuxeo.ecm.core.schema,or\r\n g.nuxeo.ecm.core.schema.types,org.nuxeo.ecm.core.schema.types.primiti\r\n ves,org.nuxeo.runtime,org.nuxeo.runtime.api,org.nuxeo.runtime.api.log\r\n in,org.nuxeo.runtime.model,org.nuxeo.runtime.services.streaming\r\nBundle-SymbolicName: org.nuxeo.ecm.core.api;singleton:=true\r\nEclipse-RegisterBuddy: org.nuxeo.runtime\r\nEclipse-ExtensibleAPI: true\r\n\r\n",
      "maxResolutionOrder": 126,
      "minResolutionOrder": 113,
      "packages": [],
      "requirements": [],
      "version": "2021.53.3"
    }
  ],
  "creationDate": 1714377120883,
  "key": "Nuxeo Platform-2021.53",
  "name": "Nuxeo Platform",
  "operations": [],
  "packages": [],
  "pluginSnapshots": {},
  "releaseDate": 1714377120883,
  "version": "2021.53"
}