X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fsixth%2Fcore%2Fdocument%2Fcontent%2FDocumentPropertyCollection.java;fp=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fsixth%2Fcore%2Fdocument%2Fcontent%2FDocumentPropertyCollection.java;h=adb3c1295751ea1c995f1b4b5359186e693820d4;hp=0000000000000000000000000000000000000000;hb=9b683d223e06fc5ec9e2561c659de5a79d3a8194;hpb=1f96525468e7f76c1ce817a8a7b22c93a39e40b4 diff --git a/src/main/java/eu/svjatoslav/sixth/core/document/content/DocumentPropertyCollection.java b/src/main/java/eu/svjatoslav/sixth/core/document/content/DocumentPropertyCollection.java new file mode 100644 index 0000000..adb3c12 --- /dev/null +++ b/src/main/java/eu/svjatoslav/sixth/core/document/content/DocumentPropertyCollection.java @@ -0,0 +1,40 @@ +package eu.svjatoslav.sixth.core.document.content; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * Things like: + * #+RESULTS: + * #+LATEX_HEADER: \\usepackage{parskip} + * #+OPTIONS: H:20 num:20 + * #+attr_latex: :width 300px + */ + +public class DocumentPropertyCollection implements Content { + private Map> keyToValue = new HashMap<>(); + + @Override + public void toMD(StringBuilder sb, int indent) { + } + + public void addProperty(String key, String value){ + getOrCreateValueList(key).add(value); + } + + private List getOrCreateValueList(String key){ + String actualKey = key.toLowerCase(); + if (keyToValue.containsKey(actualKey)) + return keyToValue.get(actualKey); + + List valueList = new ArrayList(); + keyToValue.put(actualKey, valueList); + return valueList; + } + + public boolean hasProperty(String key){ + return keyToValue.containsKey(key.toLowerCase()); + } +}