diff --git a/pom.xml b/pom.xml
index 18b98dd..c1d9968 100644
--- a/pom.xml
+++ b/pom.xml
@@ -97,6 +97,11 @@
result
1.0.0.0
+
+ com.rometools
+ rome
+ 2.1.0
+
diff --git a/src/main/java/name/nathanmcrae/numbersstation/Main.java b/src/main/java/name/nathanmcrae/numbersstation/Main.java
index dde7ad4..15a9ca6 100644
--- a/src/main/java/name/nathanmcrae/numbersstation/Main.java
+++ b/src/main/java/name/nathanmcrae/numbersstation/Main.java
@@ -7,9 +7,20 @@ import com.jcraft.jsch.Session;
import com.jcraft.jsch.SftpException;
import com.leakyabstractions.result.api.Result;
import com.leakyabstractions.result.core.Results;
+import com.rometools.rome.feed.synd.SyndContent;
+import com.rometools.rome.feed.synd.SyndContentImpl;
+import com.rometools.rome.feed.synd.SyndEntry;
+import com.rometools.rome.feed.synd.SyndEntryImpl;
+import com.rometools.rome.feed.synd.SyndFeed;
+import com.rometools.rome.feed.synd.SyndFeedImpl;
+import com.rometools.rome.io.SyndFeedInput;
+import com.rometools.rome.io.SyndFeedOutput;
import com.tearsofaunicorn.wordpress.api.model.Post;
import com.tearsofaunicorn.wordpress.api.WordpressClient;
import java.io.IOException;
+import java.io.File;
+import java.io.Writer;
+import java.io.FileWriter;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -250,6 +261,37 @@ public class Main extends Application {
break;
case StationSettings.MessageMethod.SFTP:
//loadedStation.uploadNextMessageToSFTP();
+
+ Path rssPath = stationDirPath.resolve("feed.xml");
+ SyndFeed feed;
+ if (Files.exists(rssPath)) {
+ SyndFeedInput input = new SyndFeedInput();
+ feed = input.build(new File(rssPath.toString()));
+ } else {
+ feed = new SyndFeedImpl();
+ feed.setFeedType("rss_1.0");
+ feed.setTitle("Blog");
+ feed.setLink(loadedStation.getAddress());
+ feed.setDescription("Sample blog");
+ }
+
+ SyndEntry entry = new SyndEntryImpl();
+ entry.setTitle("TODO: date?");
+ entry.setLink(loadedStation.getAddress());
+
+ SyndContent description = new SyndContentImpl();
+ description.setType("text/html");
+ description.setValue(messageText);
+
+ entry.setDescription(description);
+
+ feed.getEntries().add(entry);
+
+ Writer writer = new FileWriter(rssPath.toString());
+ SyndFeedOutput syndFeedOutput = new SyndFeedOutput();
+ syndFeedOutput.output(feed, writer);
+ writer.close();
+
JSch jsch = new JSch();
try {
Session session = jsch.getSession(loadedStation.getUsername(), loadedStation.getAddress(), 22);
@@ -263,6 +305,7 @@ public class Main extends Application {
String localFile = loadedStation.nextMessagePath().toString();
channel.put(localFile, "www/message.txt");
+ channel.put(rssPath.toString(), "www/feed.xml");
channel.exit();
session.disconnect();
} else {