Mercurial > hg > AnnotationManagerN4J
view src/main/java/de/mpiwg/itgroup/annotations/restlet/AnnotationStoreGroups.java @ 18:aafa3884b2c4
new AnnotationStore restlet for HTML-UI.
reorganisation of classes.
author | casties |
---|---|
date | Wed, 05 Sep 2012 18:05:54 +0200 |
parents | |
children | f0f55ab768c9 |
line wrap: on
line source
/** * */ package de.mpiwg.itgroup.annotations.restlet; import java.util.List; import javax.servlet.ServletContext; import org.apache.log4j.Logger; import org.restlet.data.Form; import org.restlet.data.MediaType; import org.restlet.representation.Representation; import org.restlet.representation.StringRepresentation; import org.restlet.resource.Get; import org.restlet.resource.ServerResource; import de.mpiwg.itgroup.annotations.Group; import de.mpiwg.itgroup.annotations.neo4j.AnnotationStore; /** * @author casties * */ public class AnnotationStoreGroups extends ServerResource { public static Logger logger = Logger.getLogger(AnnotationStoreGroups.class); private AnnotationStore store; @Get("html") public Representation doGetHTML(Representation entity){ Form form = getRequest().getResourceRef().getQueryAsForm(); // id from URI /annotations/groups/{id} String id = (String) getRequest().getAttributes().get("id"); logger.debug("group-id=" + id); String retString="<html><body>\n<h1>Groups</h1>\n<table>"; store = getAnnotationStore(); if (id == null) { // list all groups List<Group> groups = store.getGroups("*"); for (Group group : groups) { retString += String.format("<tr><td>uri=%s</td></tr>\n", group.getUri()); } } retString += "</table>\n</body>\n</html>"; logger.debug("sending:"); logger.debug(retString); return new StringRepresentation(retString,MediaType.TEXT_HTML); } protected AnnotationStore getAnnotationStore() { if (store == null) { ServletContext sc = (ServletContext) getContext().getServerDispatcher().getContext().getAttributes() .get("org.restlet.ext.servlet.ServletContext"); logger.debug("Getting AnnotationStore from Context"); store = (AnnotationStore) sc.getAttribute(BaseRestlet.ANNSTORE_KEY); } return store; } }