Commit cd6fb4c4 authored by Grzegorz Pietrusza's avatar Grzegorz Pietrusza

more injections

parent 813782cc
dbHost: localhost
dbPort: 27017
dbName: db
flagHashMethod: "MD5"
\ No newline at end of file
......@@ -88,7 +88,7 @@ public class CTFApplication extends Application<ApplicationConfiguration> {
TeamsRepository teamsRepository = new TeamsRepository(dbConnector);
TasksRepository tasksRepository = new TasksRepository(dbConnector);
SolutionsRepository solutionsRepository = new SolutionsRepository(dbConnector);
FlagChecker flagChecker = new FlagChecker(tasksRepository, teamsRepository, solutionsRepository);
FlagChecker flagChecker = new FlagChecker(applicationConfiguration, tasksRepository, teamsRepository, solutionsRepository);
bind(TeamsRepository.class).toInstance(teamsRepository);
bind(TasksRepository.class).toInstance(tasksRepository);
......
......@@ -25,7 +25,6 @@ public class TasksResource
private TeamsRepository teamsRepository;
private SolutionsRepository solutionsRepository;
private FlagChecker flagChecker;
//todo: use injections
@Inject
public TasksResource(TasksRepository tasksRepository, TeamsRepository teamsRepository,
......
......@@ -18,7 +18,6 @@ import java.util.List;
public class TeamsResource
{
private TeamsRepository teamsRepository;
//todo: use injections
@Inject
public TeamsResource(TeamsRepository teamsRepository) {
......
package api;
import repositories.UsersRepository;
import objects.User;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import java.util.List;
/**
* Created by gpietrus on 16.02.16.
*/
@Path(value = "/users")
@Produces(MediaType.APPLICATION_JSON)
public class UsersResource
{
private UsersRepository usersRepository;
//todo: use injections
public UsersResource(UsersRepository usersRepository) {
this.usersRepository = usersRepository;
}
@GET
public List<User> getUsers() {
return usersRepository.getAll();
}
}
......@@ -5,12 +5,21 @@ import io.dropwizard.Configuration;
/**
* Created by gpietrus on 16.02.16.
*/
public class ApplicationConfiguration extends Configuration
{
public class ApplicationConfiguration extends Configuration {
private String dbHost;
private int dbPort;
private String dbName;
private String flagHashMethod;
public String getFlagHashMethod() {
return flagHashMethod;
}
public void setFlagHashMethod(String flagHashMethod) {
this.flagHashMethod = flagHashMethod;
}
public String getDbHost() {
return dbHost;
}
......
package core;
import repositories.SolutionsRepository;
import repositories.TasksRepository;
import repositories.TeamsRepository;
import objects.Solution;
import objects.Task;
import org.apache.commons.codec.binary.Hex;
import repositories.SolutionsRepository;
import repositories.TasksRepository;
import repositories.TeamsRepository;
import javax.inject.Inject;
import java.security.MessageDigest;
......@@ -23,9 +23,11 @@ public class FlagChecker {
private TasksRepository tasksRepository;
private TeamsRepository teamsRepository;
private SolutionsRepository solutionsRepository;
private ApplicationConfiguration applicationConfiguration;
@Inject
public FlagChecker(TasksRepository tasksRepository, TeamsRepository teamsRepository, SolutionsRepository solutionsRepository) {
public FlagChecker(ApplicationConfiguration applicationConfiguration, TasksRepository tasksRepository, TeamsRepository teamsRepository, SolutionsRepository solutionsRepository) {
this.applicationConfiguration = applicationConfiguration;
this.tasksRepository = tasksRepository;
this.teamsRepository = teamsRepository;
this.solutionsRepository = solutionsRepository;
......@@ -35,7 +37,7 @@ public class FlagChecker {
String combinedStrings = salt + username + flagValue; //todo
MessageDigest md5 = null;//todo: discuss
try {
md5 = MessageDigest.getInstance("MD5");
md5 = MessageDigest.getInstance(applicationConfiguration.getFlagHashMethod());
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
......
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