<commit_before>(ns cmr.sizing.app.handler
  "This namespace defines the REST API handlers for collection resources."
  (:require
   [cmr.authz.token :as token]
   [cmr.http.kit.response :as response]
   [cmr.sizing.core :as sizing]
   [taoensso.timbre :as log]))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;   Size Estimate Handlers   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defn estimate-size
  [component]
  (fn [req]
    (log/debug "Estimating download size based on HTTP GET ...")
    (let [user-token (token/extract req)
          request-id (str (java.util.UUID/randomUUID))
          concept-id (get-in req [:path-params :concept-id])]
      (->> req
           :params
           (merge {:collection-id concept-id
                   :request-id request-id})<commit_msg>CMR-5199 Adds import java.util.UUID to handler.clj.<commit_after>(ns cmr.sizing.app.handler
  "This namespace defines the REST API handlers for collection resources."
  (:require
   [cmr.authz.token :as token]
   [cmr.http.kit.response :as response]
   [cmr.sizing.core :as sizing]
   [taoensso.timbre :as log])
  (:import
    (java.util UUID)))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;   Size Estimate Handlers   ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defn estimate-size
  [component]
  (fn [req]
    (log/debug "Estimating download size based on HTTP GET ...")
    (let [user-token (token/extract req)
          request-id (str (UUID/randomUUID))
          concept-id (get-in req [:path-params :concept-id])]
      (->> req
           :params
           (merge {:collection-id concept-id
                   :request-id request-id})
{'fraction_non_alphanumeric': 0.31796246648793564, 'fraction_numerical': 0.0021447721179624667, 'mean_word_length': 3.496385542168675, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3927110', 'n_tokens_mistral': 704, 'n_tokens_neox': 589, 'n_words': 127}