# HG changeset patch # User dwinter # Date 1290614188 -3600 # Node ID 813aa2c5bc4b5db65438cd16e396ba07f0bff1c5 first ingest diff -r 000000000000 -r 813aa2c5bc4b .classpath --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.classpath Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff -r 000000000000 -r 813aa2c5bc4b .project --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.project Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,37 @@ + + + MetaDataManagerRestlet + + + MetaDataManager + + + + org.eclipse.wst.jsdt.core.javascriptValidator + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.wst.common.project.facet.core.builder + + + + + org.eclipse.wst.validation.validationbuilder + + + + + + org.eclipse.jem.workbench.JavaEMFNature + org.eclipse.wst.common.modulecore.ModuleCoreNature + org.eclipse.wst.common.project.facet.core.nature + org.eclipse.jdt.core.javanature + org.eclipse.wst.jsdt.core.jsNature + + diff -r 000000000000 -r 813aa2c5bc4b .settings/.jsdtscope --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/.jsdtscope Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff -r 000000000000 -r 813aa2c5bc4b .settings/org.eclipse.core.resources.prefs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.core.resources.prefs Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,3 @@ +#Mon Aug 16 12:52:16 CEST 2010 +eclipse.preferences.version=1 +encoding//src/de/mpiwg/itgroup/metaDataManagerRestlet/staticPages/PID.html=UTF-8 diff -r 000000000000 -r 813aa2c5bc4b .settings/org.eclipse.jdt.core.prefs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.jdt.core.prefs Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,8 @@ +#Mon Aug 16 10:21:43 CEST 2010 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.6 diff -r 000000000000 -r 813aa2c5bc4b .settings/org.eclipse.wst.common.component --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.wst.common.component Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,21 @@ + + + + + + + uses + + + uses + + + uses + + + uses + + + + + diff -r 000000000000 -r 813aa2c5bc4b .settings/org.eclipse.wst.common.project.facet.core.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.wst.common.project.facet.core.xml Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,10 @@ + + + + + + + + + + diff -r 000000000000 -r 813aa2c5bc4b .settings/org.eclipse.wst.jsdt.ui.superType.container --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.wst.jsdt.ui.superType.container Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,1 @@ +org.eclipse.wst.jsdt.launching.baseBrowserLibrary \ No newline at end of file diff -r 000000000000 -r 813aa2c5bc4b .settings/org.eclipse.wst.jsdt.ui.superType.name --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.settings/org.eclipse.wst.jsdt.ui.superType.name Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,1 @@ +Window \ No newline at end of file diff -r 000000000000 -r 813aa2c5bc4b WebContent/META-INF/MANIFEST.MF --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/WebContent/META-INF/MANIFEST.MF Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + diff -r 000000000000 -r 813aa2c5bc4b WebContent/WEB-INF/web.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/WebContent/WEB-INF/web.xml Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,28 @@ + + +RESTfulJavaWebServices-Restlet + + +org.restlet.application +de.mpiwg.itgroup.metaDataManagerRestlet.RestServer + + + + + +RestletServlet + +org.restlet.ext.servlet.ServerServlet + + + + + +RestletServlet +/* + + \ No newline at end of file diff -r 000000000000 -r 813aa2c5bc4b libs/log4j-1.2.15.jar Binary file libs/log4j-1.2.15.jar has changed diff -r 000000000000 -r 813aa2c5bc4b libs/org.restlet.ext.servlet.jar Binary file libs/org.restlet.ext.servlet.jar has changed diff -r 000000000000 -r 813aa2c5bc4b libs/org.restlet.jar Binary file libs/org.restlet.jar has changed diff -r 000000000000 -r 813aa2c5bc4b src/de/mpiwg/itgroup/metaDataManagerRestlet/RestServer.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/de/mpiwg/itgroup/metaDataManagerRestlet/RestServer.java Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,39 @@ +package de.mpiwg.itgroup.metaDataManagerRestlet; + +import org.apache.log4j.BasicConfigurator; +import org.apache.log4j.Level; +import org.apache.log4j.Logger; +import org.restlet.Application; +import org.restlet.Context; +import org.restlet.Restlet; +import org.restlet.routing.Router; +import org.restlet.routing.Template; +import org.restlet.routing.TemplateRoute; + +import de.mpiwg.itgroup.metaDataManagerRestlet.pid.PIDcreator; + + + +public class RestServer extends Application { + + public RestServer(Context parentContext){ + super(parentContext); + + Logger rl = Logger.getRootLogger(); + BasicConfigurator.configure(); + rl.setLevel(Level.DEBUG); + + + } + + public synchronized Restlet createInboundRoot(){ + Router router = new Router(getContext()); + + router.attach("/PID",PIDcreator.class); + + + + return router; + } +} + diff -r 000000000000 -r 813aa2c5bc4b src/de/mpiwg/itgroup/metaDataManagerRestlet/pid/PIDcreator.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/de/mpiwg/itgroup/metaDataManagerRestlet/pid/PIDcreator.java Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,60 @@ +package de.mpiwg.itgroup.metaDataManagerRestlet.pid; + +import java.io.InputStream; + +import org.apache.log4j.Logger; +import org.restlet.data.Form; +import org.restlet.data.MediaType; +import org.restlet.representation.InputRepresentation; +import org.restlet.representation.Representation; +import org.restlet.representation.StringRepresentation; +import org.restlet.resource.Get; +import org.restlet.resource.Options; +import org.restlet.resource.Post; +import org.restlet.resource.ServerResource; + +import de.mpiwg.itgroup.metadataManager.pid.PidGenerator; + + + +public class PIDcreator extends ServerResource { + +private Logger logger = Logger.getRootLogger(); + + /** + * Erlaubt cross scripting bei Aufruf aus Javascript + * @param entity + */ + @Options + public void doOptions(Representation entity) { + Form responseHeaders = (Form) getResponse().getAttributes().get("org.restlet.http.headers"); + if (responseHeaders == null) { + responseHeaders = new Form(); + getResponse().getAttributes().put("org.restlet.http.headers", responseHeaders); + } + responseHeaders.add("Access-Control-Allow-Origin", "*"); + responseHeaders.add("Access-Control-Allow-Methods", "POST,OPTIONS,GET"); + responseHeaders.add("Access-Control-Allow-Headers", "Content-Type"); + responseHeaders.add("Access-Control-Allow-Credentials", "false"); + responseHeaders.add("Access-Control-Max-Age", "60"); + } + + @Post + public Representation createPid(){ + PidGenerator pg = new PidGenerator(); + String pid = pg.getPID(); + Representation rep = new StringRepresentation(pid, MediaType.TEXT_PLAIN); + return rep; + } + + @Get("html") + public Representation getHTML(){ + InputStream is = getClass().getResourceAsStream("/de/mpiwg/itgroup/metaDataManagerRestlet/staticPages/PID.html"); + + Representation rep = new InputRepresentation(is,MediaType.TEXT_HTML); + return rep; + + } + +} + diff -r 000000000000 -r 813aa2c5bc4b src/de/mpiwg/itgroup/metaDataManagerRestlet/staticPages/PID.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/de/mpiwg/itgroup/metaDataManagerRestlet/staticPages/PID.html Wed Nov 24 16:56:28 2010 +0100 @@ -0,0 +1,7 @@ + + +

PID Generator

+

Erzeugt PIDs für den Gebrauch am MPIWG

+

Usage: POST /PID, zurück kommt eine ID als Plain-Text. + + \ No newline at end of file