Merge remote-tracking branch 'origin/mob-session' into mob-session2

master
jem 5 years ago
commit 636bfc6f41

@ -51,25 +51,21 @@
(defn copy-dir
[source-dir target-dir ignore-patterns]
(loop [l-source-list (.list source-dir)
l-source-dir source-dir
l-target-dir target-dir]
(println (str "source-dir: " source-dir " target-dir: " target-dir " f: ") (first l-source-list) " second: " (second l-source-list))
(let [f (first l-source-list)
second? (not (nil? (second l-source-list)))
target-file (io/file target-dir f)
source-file (io/file source-dir f)]
; TODO: .isFile is called on wrong path to the actual file, does not consider the path leading to the subdirectory of the file
(println "type of f: " (type f))
(loop [source-list (.list source-dir)
file-path-prefix [""]]
(let [f (first source-list)
second? (not (nil? (second source-list)))
target-file (io/file target-dir (str (first file-path-prefix) f))
source-file (io/file source-dir (str (first file-path-prefix) f))]
(if (.isFile source-file)
(do
(copy-file f target-file)
;; continue copying files
(copy-file source-file target-file)
(when second?
(recur (drop 1 l-source-list) source-dir target-dir)))
;; recur down to contained directory
(do (println (type (.list source-file)))
(when second? (recur (concat (.list source-file) (drop 1 l-source-list)) source-file target-file)))))))
(recur (drop 1 source-list) (drop 1 file-path-prefix))))
(when (> (count (.list source-file)) 0)
(recur (concat (.list source-file) (drop 1 source-list))
(concat (repeat (count (.list source-file)) (str (first file-path-prefix) f "/"))
(drop 1 file-path-prefix))))))))
(defn copy-resources
[fs-prefix source-path target-path ignore-patterns]

Loading…
Cancel
Save