Skip to content

Instantly share code, notes, and snippets.

@bendoerr
Created June 1, 2012 15:29
Show Gist options
  • Save bendoerr/2852968 to your computer and use it in GitHub Desktop.
Save bendoerr/2852968 to your computer and use it in GitHub Desktop.
Quick and dirty email server for development.
@Grab('org.subethamail:subethasmtp-wiser:1.2') import org.subethamail.wiser.Wiser
Wiser wiser = new Wiser()
wiser.start()
addShutdownHook {
if (wiser.server.isRunning()) {
println "\nStopping..."
wiser.stop()
}
}
println "Running...\n"
def knownMessages = [].asImmutable()
while (true) {
if (knownMessages.size() < wiser.messages.size()) {
def newMessages = wiser.messages - knownMessages
knownMessages = wiser.messages.collect { it }.asImmutable()
newMessages.groupBy {message ->
message.getMimeMessage().getSubject()
}.each {subject, group ->
group.first().getMimeMessage().writeTo(System.out)
println "\n\n".padLeft(79, "-")
}
}
sleep(2000)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment