Commit 8f2f8d12 authored by Grzegorz Pietrusza's avatar Grzegorz Pietrusza

path query parameters in proxy request

parent 5eb501f3
...@@ -4,12 +4,15 @@ import com.telephoners.krakyournet.ctf.beans.User; ...@@ -4,12 +4,15 @@ import com.telephoners.krakyournet.ctf.beans.User;
import com.telephoners.krakyournet.ctf.beans.tasks.Task; import com.telephoners.krakyournet.ctf.beans.tasks.Task;
import com.telephoners.krakyournet.ctf.repositories.TasksRepository; import com.telephoners.krakyournet.ctf.repositories.TasksRepository;
import io.dropwizard.auth.Auth; import io.dropwizard.auth.Auth;
import org.glassfish.jersey.server.ContainerRequest;
import javax.inject.Inject; import javax.inject.Inject;
import javax.inject.Singleton; import javax.inject.Singleton;
import javax.ws.rs.GET; import javax.ws.rs.GET;
import javax.ws.rs.Path; import javax.ws.rs.Path;
import javax.ws.rs.PathParam; import javax.ws.rs.PathParam;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.Response; import javax.ws.rs.core.Response;
import java.io.IOException; import java.io.IOException;
...@@ -29,10 +32,13 @@ public class TaskResource ...@@ -29,10 +32,13 @@ public class TaskResource
@GET @GET
public Response getTask(@Auth User user, public Response getTask(@Auth User user,
final @PathParam("task_level") int taskLevel, final @PathParam("task_level") int taskLevel,
final @PathParam("path") String path) throws IOException final @PathParam("path") String path,
@Context ContainerRequestContext containerRequestContext) throws IOException
{ {
Task task = tasksRepository.getByLevel(taskLevel); Task task = tasksRepository.getByLevel(taskLevel);
//todo: refactor, path not necessary in textTasks //todo: refactor, path not necessary in textTasks
return Response.ok().entity(task.getTextForUser(user, path)).build(); ContainerRequest context = (ContainerRequest) containerRequestContext;
String fullPath = String.format("%s?%s", path, context.getRequestUri().getQuery());
return Response.ok().entity(task.getTextForUser(user, fullPath)).build();
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment