+ /**
+ * Describe a {@link Story} from its {@link MetaData} and return a list of
+ * title/value that represent this {@link Story}.
+ *
+ * @param meta
+ * the {@link MetaData} to represent
+ *
+ * @return the information
+ */
+ public static List<Entry<String, String>> getMetaDesc(MetaData meta) {
+ List<Entry<String, String>> metaDesc = new ArrayList<Entry<String, String>>();
+
+ // TODO: i18n
+
+ StringBuilder tags = new StringBuilder();
+ for (String tag : meta.getTags()) {
+ if (tags.length() > 0) {
+ tags.append(", ");
+ }
+ tags.append(tag);
+ }
+
+ metaDesc.add(new SimpleEntry<String, String>("Author", meta.getAuthor()));
+ metaDesc.add(new SimpleEntry<String, String>("Publication date",
+ formatDate(meta.getDate())));
+ metaDesc.add(new SimpleEntry<String, String>("Published on", meta
+ .getPublisher()));
+ metaDesc.add(new SimpleEntry<String, String>("URL", meta.getUrl()));
+ metaDesc.add(new SimpleEntry<String, String>("Word count", format(meta
+ .getWords())));
+ metaDesc.add(new SimpleEntry<String, String>("Source", meta.getSource()));
+ metaDesc.add(new SimpleEntry<String, String>("Subject", meta
+ .getSubject()));
+ metaDesc.add(new SimpleEntry<String, String>("Language", meta.getLang()));
+ metaDesc.add(new SimpleEntry<String, String>("Tags", tags.toString()));
+
+ return metaDesc;
+ }
+