     ;; Note that when upgrading umm version we should also cache the previous version of UMM.
     {:format :umm-json
      :version umm-version/current-version}})
+
+(defn cached-formats
+  "This is a set of formats that are cached."
+  []
+  (set/difference all-formats (non-cached-collection-metadata-formats)))
 
 ;; Defines the record that represents the cache and implements the cache protocol. This is a very
 ;; simple implementation that just wraps an atom with the map of cached concept ids to revision

        concepts (doall (metadata-db/get-concepts mdb-context concept-tuples true))
        concepts (concepts-without-xml-processing-inst concepts)
        rfms (u/fast-map #(rfm/compress
                           (rfm/concept->revision-format-map context % cached-formats))
                         concepts)]
    (reduce #(assoc %1 (:concept-id %2) %2) {} rfms)))


  (require [cmr.common.util :as u]
           [cmr.common.cache :as c]
           [cmr.common.xml :as cx]
           [clojure.set :as set]
           [cmr.common.config :refer [defconfig]]
           [cmr.common.jobs :refer [defjob]]
           [cmr.common.services.errors :as errors]
