package org.madore.damlengine; import java.util.ArrayList; import java.util.TreeSet; import org.w3c.dom.*; public class Context implements Cloneable { public final Document doc; public static class GeneralContext { public Element htmlNode; public Element headNode; public String uriToTop; public String fileName; public StringBuffer styleContent; public StringBuffer scriptContent; public DocumentFragment title; public String titleStr; public String titleLang; public DocumentFragment subtitle; public String subtitleStr; public String subtitleLang; public ArrayList translations; public StringBuffer commentsJSParam; } public GeneralContext gc; public static abstract class WeblogSelectionContext { public TreeSet sel; public ArrayList xmlData; } public static class WeblogMonthSelectionContext extends WeblogSelectionContext { public String year; public String month; public WeblogMonthSelectionContext(String year, String month) { this.year = year; this.month = month; } } public static class WeblogCategorySelectionContext extends WeblogSelectionContext { public String code; public WeblogCategorySelectionContext(String code) { this.code = code; } } public static class WeblogRecentSelectionContext extends WeblogSelectionContext { public int count; public WeblogRecentSelectionContext(int count) { this.count = count; } } public static class WeblogSingleSelectionContext extends WeblogSelectionContext { public int number; public WeblogSingleSelectionContext(int number) { this.number = number; } } public WeblogSelectionContext wsc; public static class DynamicContext { public long modTime; } public DynamicContext dc; public static class EntryContext { public String year; public String month; public String day; public String yandm; public String date; public String number; public String dow; public String doSinglePage; public ArrayList catList; public Element headerNode; public Element headlinkNode; public Element mainDivNode; public EntryContext(String year, String month, String day, String number, String dow, String doSinglePage, ArrayList catList) { this.year = year; this.month = month; this.day = day; this.yandm = year+"-"+month; this.date = yandm+"-"+day; this.number = number; this.dow = dow; this.doSinglePage = doSinglePage; this.catList = catList; } } public EntryContext ent; public boolean killA; public Context(Document doc) { this.doc = doc; this.gc = new GeneralContext(); this.killA = false; } public Context clone() { try { return (Context) super.clone(); } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } } }