* [JAVA-13854] added parent module * [JAVA-13854] moved apache-tapestry(submodule) to web-modules(parent) * [JAVA-13854] moved bootique(submodule) to web-modules(parent) * [JAVA-13854] moved dropwizard(submodule) to web-modules(parent) * [JAVA-13854] moved blade(submodule) to web-modules(parent) * [JAVA-13854] moved java-lite(submodule) to web-modules(parent) * [JAVA-13854] moved jooby(submodule) to web-modules(parent) * [JAVA-13854] moved linkrest(submodule) to web-modules(parent) * [JAVA-13854] moved ninja(submodule) to web-modules(parent) * [JAVA-13854] moved ratpack(submodule) to web-modules(parent) * [JAVA-13854] moved resteasy(submodule) to web-modules(parent) * [JAVA-13854] moved restx(submodule) to web-modules(parent) * [JAVA-13854] moved spark-java(submodule) to web-modules(parent) * [JAVA-13854] moved vraptor(submodule) to web-modules(parent) * [JAVA-13854] delete modules that were moved * [JAVA-13854] * [JAVA-13854] * [JAVA-13854] delete ninja submodule + moved raml(submodule) to web-modules(parent) * [JAVA-13854] moved gwt(submodule) to web-modules(parent) * [JAVA-13854] moved jakarta-ee(submodule) to web-modules(parent) * [JAVA-13854] moved javax-servlets(submodule) to web-modules(parent) * [JAVA-13854] moved javax-servlets-2(submodule) to web-modules(parent) * [JAVA-13854] moved jee-7(submodule) to web-modules(parent) * [JAVA-13854] moved play-framework(not a module) to web-modules * [JAVA-13854] fix failing test * [JAVA-13854] moved struts-2(submodule) to web-modules(parent) * [JAVA-13854] moved wicket(submodule) to web-modules(parent) * [JAVA-13854] deleted modules that were moved to web-modules * JAVA-13854 Removed moved modules from the main pom.xml Co-authored-by: panagiotiskakos <panagiotis.kakos@libra-is.com> Co-authored-by: Dhawal Kapil <dhawalkapil@gmail.com>
65 lines
2.3 KiB
Java
65 lines
2.3 KiB
Java
package com.baeldung.sparkjava;
|
|
|
|
import static spark.Spark.delete;
|
|
import static spark.Spark.get;
|
|
import static spark.Spark.options;
|
|
import static spark.Spark.post;
|
|
import static spark.Spark.put;
|
|
|
|
import com.google.gson.Gson;
|
|
|
|
public class SparkRestExample {
|
|
public static void main(String[] args) {
|
|
final UserService userService = new UserServiceMapImpl();
|
|
|
|
post("/users", (request, response) -> {
|
|
response.type("application/json");
|
|
|
|
User user = new Gson().fromJson(request.body(), User.class);
|
|
userService.addUser(user);
|
|
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS));
|
|
});
|
|
|
|
get("/users", (request, response) -> {
|
|
response.type("application/json");
|
|
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS, new Gson().toJsonTree(userService.getUsers())));
|
|
});
|
|
|
|
get("/users/:id", (request, response) -> {
|
|
response.type("application/json");
|
|
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS, new Gson().toJsonTree(userService.getUser(request.params(":id")))));
|
|
});
|
|
|
|
put("/users/:id", (request, response) -> {
|
|
response.type("application/json");
|
|
|
|
User toEdit = new Gson().fromJson(request.body(), User.class);
|
|
User editedUser = userService.editUser(toEdit);
|
|
|
|
if (editedUser != null) {
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS, new Gson().toJsonTree(editedUser)));
|
|
} else {
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.ERROR, new Gson().toJson("User not found or error in edit")));
|
|
}
|
|
});
|
|
|
|
delete("/users/:id", (request, response) -> {
|
|
response.type("application/json");
|
|
|
|
userService.deleteUser(request.params(":id"));
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS, "user deleted"));
|
|
});
|
|
|
|
options("/users/:id", (request, response) -> {
|
|
response.type("application/json");
|
|
|
|
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS, (userService.userExist(request.params(":id"))) ? "User exists" : "User does not exists"));
|
|
});
|
|
|
|
}
|
|
|
|
}
|