Skip to content

Commit

Permalink
updated rm and dump
Browse files Browse the repository at this point in the history
  • Loading branch information
owainlewis committed Aug 12, 2012
1 parent 2748066 commit 892f1ea
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 9 deletions.
20 changes: 20 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,26 @@ IMAP

```

Get 5 most recent messages from the spam folder

```
(take 5 (reverse (all-messages s gmail-spam)))
```

## Extracting data from messages

```
(def msg (first (all-messages s "INBOX")))
(from msg)
(subject msg)
;; Extract the body content for each message part
(message-body-map msg)
```

FIXME

## License
Expand Down
13 changes: 4 additions & 9 deletions src/clojure_mail/core.clj
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@

(def gmail-sent "[Gmail]/Sent Mail")

(def gmail-spam "[Gmail]/Spam")

;; End Store

(def sub-folder?
Expand Down Expand Up @@ -59,10 +61,7 @@

(defn messages [s fd & opt]
(let [fd (doto (.getFolder s fd) (.open Folder/READ_ONLY))
[flags set] opt
msgs (if opt
(.search fd (FlagTerm. (Flags. flags) set))
(.getMessages fd))]
msgs (.getMessages fd)]
(map #(vector (.getUID fd %) %) msgs)))

(defn message-content-type
Expand Down Expand Up @@ -109,10 +108,6 @@
(println
(format "%s - %s" uid (clojure.core/bean msg)))))

(defn dump-2 [msgs]
(doseq [[uid msg] msgs]
(prn msg)))

(defn dump [msgs]
(doseq [[uid msg] msgs]
(.writeTo msg (java.io.FileOutputStream. (str uid)))))
(.writeTo msg (java.io.FileOutputStream. (format "/usr/local/messages/%s" (str uid))))))
3 changes: 3 additions & 0 deletions src/clojure_mail/message.clj
Original file line number Diff line number Diff line change
Expand Up @@ -54,3 +54,6 @@
[msg]
(let [parts (message-parts msg)]
(map #(.getContent %) parts)))

(defn dump-message [msg]
())

0 comments on commit 892f1ea

Please sign in to comment.