blob: 3480475e7f2b61f7599bf899d252936302dc42af (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
(ns com.github.ivarref.yoltq.ext-sys
(:require [datomic.api :as d])
(:import (java.util UUID)))
(def ^:dynamic *now-ns-atom* nil)
(def ^:dynamic *squuid-atom* nil)
(def ^:dynamic *random-atom* nil)
(defn now-ns []
(if *now-ns-atom*
@*now-ns-atom*
(System/nanoTime)))
(defn squuid []
(if *squuid-atom*
(UUID/fromString (str "00000000-0000-0000-0000-" (format "%012d" (swap! *squuid-atom* inc))))
(d/squuid)))
(defn random-uuid []
(if *random-atom*
(UUID/fromString (str "00000000-0000-0000-0000-" (format "%012d" (swap! *random-atom* inc))))
(UUID/randomUUID)))
|