import javax.servlet.http.HttpServletResponse;
import net.pterodactylus.demoscenemusic.data.Artist;
+import net.pterodactylus.demoscenemusic.data.DefaultGroup;
+import net.pterodactylus.demoscenemusic.data.DefaultParty;
+import net.pterodactylus.demoscenemusic.data.Group;
+import net.pterodactylus.demoscenemusic.data.Party;
import net.pterodactylus.demoscenemusic.data.Properties;
import net.pterodactylus.demoscenemusic.data.Style;
import net.pterodactylus.demoscenemusic.data.Track;
import net.pterodactylus.demoscenemusic.data.TrackDerivative;
import net.pterodactylus.demoscenemusic.data.User;
import net.pterodactylus.demoscenemusic.page.ServletRequest;
+import net.pterodactylus.demoscenemusic.template.ConciseNumberFilter;
+import net.pterodactylus.demoscenemusic.template.DurationFilter;
import net.pterodactylus.demoscenemusic.template.PropertiesAccessor;
import net.pterodactylus.demoscenemusic.template.TrackDerivativeAccessor;
import net.pterodactylus.demoscenemusic.template.UserAccessor;
import net.pterodactylus.util.template.ClassPathTemplateProvider;
import net.pterodactylus.util.template.CollectionSortFilter;
import net.pterodactylus.util.template.HtmlFilter;
+import net.pterodactylus.util.template.MatchFilter;
import net.pterodactylus.util.template.ReflectionAccessor;
+import net.pterodactylus.util.template.RemoveFilter;
import net.pterodactylus.util.template.Template;
import net.pterodactylus.util.template.TemplateContextFactory;
import net.pterodactylus.util.template.TemplateParser;
public class TemplateServlet extends HttpServlet {
private Core core;
+
private final TemplateContextFactory templateContextFactory = new TemplateContextFactory();
private final Map<String, Page<ServletRequest>> pages = new HashMap<String, Page<ServletRequest>>();
}
});
+ sortFilter.addComparator(Party.class, DefaultParty.NAME_YEAR_COMPARATOR);
+ sortFilter.addComparator(Group.class, DefaultGroup.NAME_COMPARATOR);
templateContextFactory.addFilter("sort", sortFilter);
+ templateContextFactory.addFilter("matches", new MatchFilter());
+ templateContextFactory.addFilter("time", new DurationFilter());
+ templateContextFactory.addFilter("concise", new ConciseNumberFilter());
+ templateContextFactory.addFilter("remove", new RemoveFilter());
templateContextFactory.addTemplateObject("core", core);
templateContextFactory.addTemplateObject("dataManager", core.getDataManager());