|
|
|
@ -3,11 +3,12 @@ package org.gcube.resourcemanagement.manager.webapp.rs;
|
|
|
|
|
import javax.ws.rs.POST;
|
|
|
|
|
import javax.ws.rs.Path;
|
|
|
|
|
import javax.ws.rs.Produces;
|
|
|
|
|
import javax.ws.rs.QueryParam;
|
|
|
|
|
import javax.ws.rs.core.Response;
|
|
|
|
|
import javax.ws.rs.core.Response.Status;
|
|
|
|
|
|
|
|
|
|
import org.gcube.informationsystem.model.entity.Context;
|
|
|
|
|
import org.gcube.resourcemanagement.manager.io.rs.RMContextPath;
|
|
|
|
|
import static org.gcube.resourcemanagement.manager.io.rs.RMContextPath.*;
|
|
|
|
|
import org.gcube.resourcemanagement.manager.webapp.ResourceInitializer;
|
|
|
|
|
import org.gcube.resourcemanagement.manager.webapp.context.CreateRequest;
|
|
|
|
|
import org.gcube.resourcemanagement.manager.webapp.context.ResponseFromResourceRegistry;
|
|
|
|
@ -21,7 +22,7 @@ import org.slf4j.LoggerFactory;
|
|
|
|
|
* @author Manuele Simi (ISTI-CNR)
|
|
|
|
|
*
|
|
|
|
|
*/
|
|
|
|
|
@Path(RMContextPath.CONTEXT_ROOT)
|
|
|
|
|
@Path(CONTEXT_ROOT)
|
|
|
|
|
public class RMContext {
|
|
|
|
|
|
|
|
|
|
private static Logger logger = LoggerFactory.getLogger(RMContext.class);
|
|
|
|
@ -31,11 +32,12 @@ public class RMContext {
|
|
|
|
|
*/
|
|
|
|
|
@POST
|
|
|
|
|
@Produces(ResourceInitializer.APPLICATION_JSON_CHARSET_UTF_8)
|
|
|
|
|
public Response create(String json) {
|
|
|
|
|
public Response create(String json, @QueryParam(FORCE_RRURL_PARAM) String rrURL) {
|
|
|
|
|
logger.info("Requested to create context {} with json {}", Context.NAME, json);
|
|
|
|
|
logger.info("Force URL: " + rrURL);
|
|
|
|
|
Response response;
|
|
|
|
|
ContextHolder holder = new ContextHolder(json);
|
|
|
|
|
ResponseFromResourceRegistry returned = CreateRequest.fromHolder(holder).forceURL("").submit();
|
|
|
|
|
ResponseFromResourceRegistry returned = CreateRequest.fromHolder(holder).forceURL(rrURL).submit();
|
|
|
|
|
if (returned.wasSuccessful()) {
|
|
|
|
|
response = Response.status(Status.CREATED)
|
|
|
|
|
.entity(returned.getMessage().map(m -> m).orElse("Context successfully created."))
|
|
|
|
|