sascha@21: package de.intevation.artifactdatabase.rest; sascha@21: sascha@21: import org.w3c.dom.Document; sascha@21: sascha@21: import org.restlet.ext.xml.DomRepresentation; sascha@21: sascha@21: import org.restlet.resource.Post; sascha@21: import org.restlet.resource.ServerResource; sascha@21: sascha@21: import org.restlet.data.Request; sascha@21: import org.restlet.data.Response; sascha@21: import org.restlet.data.Status; sascha@21: sascha@21: import org.restlet.data.MediaType; sascha@21: sascha@21: import org.apache.log4j.Logger; sascha@21: sascha@21: import de.intevation.artifactdatabase.XMLUtils; sascha@21: import de.intevation.artifactdatabase.Config; sascha@21: sascha@21: import org.restlet.representation.Representation; sascha@21: import org.restlet.representation.EmptyRepresentation; sascha@21: sascha@21: import java.io.IOException; sascha@21: sascha@21: /** sascha@21: * @author Sascha L. Teichmann (sascha.teichmann@intevation) sascha@21: */ sascha@21: public class CreateResource sascha@21: extends ServerResource sascha@21: { sascha@21: private static Logger logger = Logger.getLogger(CreateResource.class); sascha@21: sascha@21: public static final String PATH = "/create"; sascha@21: sascha@21: @Post("xml:xml") sascha@21: public Representation represent() { sascha@21: sascha@21: Request request = getRequest(); sascha@21: sascha@21: Representation requestRepr = request.getEntity(); sascha@21: sascha@21: Document inputDocument = null; sascha@21: try { sascha@21: DomRepresentation input = new DomRepresentation(requestRepr); sascha@21: inputDocument = input.getDocument(); sascha@21: } sascha@21: catch (IOException ioe) { sascha@21: logger.error(ioe.getMessage()); sascha@21: Response response = getResponse(); sascha@21: response.setStatus(Status.CLIENT_ERROR_BAD_REQUEST, ioe); sascha@21: return new EmptyRepresentation(); sascha@21: } sascha@21: sascha@21: Document outputDocument = XMLUtils.newDocument(); sascha@21: sascha@21: return new DomRepresentation( sascha@21: MediaType.APPLICATION_XML, outputDocument); sascha@21: } sascha@21: } sascha@21: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8: