Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-17051

Allow dispatching of binaries to different storage

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 7.3
    • Component/s: Core
    • Impact type:
      Configuration Change
    • Upgrade notes:
      Hide

      Binary managers are now configured explicitly from a separate extension point, and by default (unless a specific Blob Dispatcher is registered), each repository uses the binary manager of the same name as the repository:

      <extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration">
      <blobprovider name="default">
      <class>org.nuxeo.ecm.core.blob.binary.DefaultBinaryManager</class>
      <property name="path">binaries</property>
      </blobprovider>
      </extension>

      Choosing where a blob is stored based on blob or document properties is now possible through the use of a Blob Dispatcher. The DefaultBlobDispatcher can be configured using properties to choose a different blob provider (binary manager). Example configuration:

      <extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration">
      <blobprovider name="videos">
      <class>org.nuxeo.ecm.core.blob.binary.DefaultBinaryManager</class>
      <property name="path">binaries-videos</property>
      </blobprovider>
      <blobdispatcher>
      <class>org.nuxeo.ecm.core.blob.DefaultBlobDispatcher</class>
      <property name="dc:format=video">videos</property>
      <property name="blob:mime-type=video/mp4">videos</property>
      <property name="default">default</property>
      </blobdispatcher>
      </extension>

      The DefaultBlobDispatcher javadoc has details about the syntax of the property name. It can be subclassed to provide more flexible logic

      Show
      Binary managers are now configured explicitly from a separate extension point, and by default (unless a specific Blob Dispatcher is registered), each repository uses the binary manager of the same name as the repository: <extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration"> <blobprovider name="default"> <class>org.nuxeo.ecm.core.blob.binary.DefaultBinaryManager</class> <property name="path">binaries</property> </blobprovider> </extension> Choosing where a blob is stored based on blob or document properties is now possible through the use of a Blob Dispatcher. The DefaultBlobDispatcher can be configured using properties to choose a different blob provider (binary manager). Example configuration: <extension target="org.nuxeo.ecm.core.blob.BlobManager" point="configuration"> <blobprovider name="videos"> <class>org.nuxeo.ecm.core.blob.binary.DefaultBinaryManager</class> <property name="path">binaries-videos</property> </blobprovider> <blobdispatcher> <class>org.nuxeo.ecm.core.blob.DefaultBlobDispatcher</class> <property name="dc:format=video">videos</property> <property name="blob:mime-type=video/mp4">videos</property> <property name="default">default</property> </blobdispatcher> </extension> The DefaultBlobDispatcher javadoc has details about the syntax of the property name. It can be subclassed to provide more flexible logic

      Description

      We want to be able, for a given repository, to decide where blobs are stored and send them to different binary managers (or generic blob providers).

      For instance, we want to dispatch to store videos in a particular binary manager. Or blobs for documents marked restricted. Etc.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: