Commit cfbabaed authored by Grzegorz Pietrusza's avatar Grzegorz Pietrusza

add crypto and web task stub

parent 70a8b631
import resources.ProxyResource;
import resources.SolutionsResource;
import resources.TasksResource;
import resources.TeamsResource;
import com.bazaarvoice.dropwizard.webjars.WebJarBundle;
import com.google.common.base.Optional;
import com.google.inject.AbstractModule;
......@@ -15,6 +11,7 @@ import io.dropwizard.assets.AssetsBundle;
import io.dropwizard.auth.*;
import io.dropwizard.auth.basic.BasicCredentialAuthFilter;
import io.dropwizard.auth.basic.BasicCredentials;
import io.dropwizard.jersey.setup.JerseyEnvironment;
import io.dropwizard.setup.Bootstrap;
import io.dropwizard.setup.Environment;
import objects.Flag;
......@@ -27,6 +24,10 @@ import repositories.SolutionsRepository;
import repositories.TasksRepository;
import repositories.TeamsRepository;
import repositories.UsersRepository;
import resources.ProxyResource;
import resources.SolutionsResource;
import resources.TasksResource;
import resources.TeamsResource;
import java.util.UUID;
import java.util.stream.Stream;
......@@ -86,10 +87,16 @@ public class CTFApplication extends Application<ApplicationConfiguration> {
}
private void registerResources(Environment environment) {
environment.jersey().register(injector.getInstance(TeamsResource.class));
environment.jersey().register(injector.getInstance(TasksResource.class));
environment.jersey().register(injector.getInstance(ProxyResource.class));
environment.jersey().register(injector.getInstance(SolutionsResource.class));
JerseyEnvironment jersey = environment.jersey();
jersey.register(injector.getInstance(TeamsResource.class));
jersey.register(injector.getInstance(TasksResource.class));
jersey.register(injector.getInstance(ProxyResource.class));
jersey.register(injector.getInstance(SolutionsResource.class));
//todo: use reflections to register tasks?
// jersey.register(new CryptoTaskResource());
// jersey.register(new WebTaskResource());
}
private void registerAuthFeatures(Environment environment) {
......@@ -163,9 +170,7 @@ public class CTFApplication extends Application<ApplicationConfiguration> {
bind(TeamsResource.class).toInstance(new TeamsResource(teamsRepository));
bind(TasksResource.class).toInstance(new TasksResource(tasksRepository
));
bind(ProxyResource.class).toInstance(new ProxyResource());
bind(SolutionsResource.class).toInstance(new SolutionsResource(solutionsRepository));
}
});
}
......
package resources.tasks;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
/**
* Created by gpietrus on 23.02.2016.
*/
public class CryptoTaskResource extends TaskResource {
@Override
@Path("/crypto/1")
public Response getTask() {
return Response.ok().entity("crypto task").build();
}
}
package resources.tasks;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
/**
* Created by gpietrus on 23.02.2016.
*/
@Path("/task")
public abstract class TaskResource {
public abstract Response getTask(); //todo: auth
}
package resources.tasks;
import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
/**
* Created by gpietrus on 23.02.2016.
*/
public class WebTaskResource extends TaskResource {
@Path("/web/1")
public Response getTask() {
return Response.ok().entity("web task").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