<?xml version="1.0"?>
<component name="org.nuxeo.coldstorage.events.contrib.override">

  <require>org.nuxeo.coldstorage.events.contrib</require>

  <extension point="listener" target="org.nuxeo.ecm.core.event.EventServiceComponent">
    <listener async="true" class="org.nuxeo.coldstorage.events.CheckColdStorageContentAvailabilityListener" name="checkColdStorageContentAvailability">
      <event>checkColdStorageContentAvailability</event>
    </listener>
    <listener class="org.nuxeo.coldstorage.events.PreventColdStorageUpdateListener" name="preventColdStorageUpdateListener" priority="0">
      <event>beforeDocumentModification</event>
    </listener>
    <!-- StreamAuditEventListener has a priority of 500, less allows to be evaluated earlier -->
    <listener class="org.nuxeo.coldstorage.events.DownloadColdDocumentListener" name="downloadColdDocumentListener" priority="400">
      <event>download</event>
    </listener>
    <!-- UpdateThumbnailListener has a priority of 999, more allows to be evaluated later -->
    <listener class="org.nuxeo.coldstorage.events.CheckAlreadyInColdStorageListener" name="checkAlreadyInColdStorageListener" priority="900">
      <event>documentModified</event>
      <event>documentCreated</event>
    </listener>
  </extension>

</component>
