Skip to content

Commit 1d246a8

Browse files
committed
refactored
1 parent 01a914b commit 1d246a8

File tree

1 file changed

+19
-21
lines changed

1 file changed

+19
-21
lines changed

src/clojure/zero_one/geni/arrow.clj

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,14 @@
11
(ns zero-one.geni.arrow
2-
(:import [org.apache.arrow.vector VarCharVector
3-
VectorSchemaRoot BigIntVector Float4Vector Float8Vector IntVector
4-
BitVector ValueVector BaseFixedWidthVector TimeStampMilliVector]
5-
[org.apache.arrow.vector.util Text]
6-
[org.apache.arrow.vector.ipc ArrowStreamWriter]
7-
[org.apache.arrow.memory RootAllocator]
8-
[java.nio.channels Channels]
9-
[org.apache.spark.sql Row]
10-
[org.apache.arrow.vector.types.pojo Schema]
11-
[scala.collection.convert Wrappers$IteratorWrapper]
12-
)
13-
(:require
14-
[clojure.java.io :as io]
15-
16-
))
2+
(:require [clojure.java.io :as io])
3+
(:import java.nio.channels.Channels
4+
org.apache.arrow.memory.RootAllocator
5+
[org.apache.arrow.vector BaseFixedWidthVector BigIntVector BitVector Float4Vector Float8Vector IntVector
6+
TimeStampMilliVector ValueVector VarCharVector VectorSchemaRoot]
7+
org.apache.arrow.vector.ipc.ArrowStreamWriter
8+
org.apache.arrow.vector.types.pojo.Schema
9+
org.apache.arrow.vector.util.Text
10+
org.apache.spark.sql.Row
11+
scala.collection.convert.Wrappers$IteratorWrapper))
1712

1813
;; (set! *warn-on-reflection* true)
1914

@@ -102,12 +97,15 @@
10297

10398

10499
(defn- schema->clojure [^Schema schema]
105-
(map
106-
#(hash-map
107-
:type %1
108-
:name %2)
109-
(->> schema .fields (map #(keyword (.. % dataType typeName))))
110-
(->> schema .fields (map #(.. % name)))))
100+
(let [fields (.fields schema)
101+
types (map #(keyword (.. % dataType typeName)) fields)
102+
names (map #(.name %) fields)]
103+
(map
104+
(fn [type name]
105+
(hash-map :type type :name name))
106+
types
107+
names
108+
)))
111109

112110
(defn- set-null-or-value [v ^long idx value type]
113111
(if (nil? value)

0 commit comments

Comments
 (0)