From 4362922ba00a22d9177df1731673b5fb4db03fb5 Mon Sep 17 00:00:00 2001
From: Roberto Sánchez <roberto.sanchez@curisit.net>
Date: Thu, 19 Dec 2013 17:58:11 +0000
Subject: [PATCH] #333 feature - Added first page with Bootstrap

---
 securis/src/main/java/net/curisit/securis/services/BasicServices.java |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/securis/src/main/java/net/curisit/securis/services/BasicServices.java b/securis/src/main/java/net/curisit/securis/services/BasicServices.java
index 8fea2fd..52df174 100644
--- a/securis/src/main/java/net/curisit/securis/services/BasicServices.java
+++ b/securis/src/main/java/net/curisit/securis/services/BasicServices.java
@@ -3,6 +3,7 @@
 import java.io.IOException;
 import java.net.URI;
 
+import javax.annotation.security.RolesAllowed;
 import javax.servlet.http.HttpServletRequest;
 import javax.ws.rs.FormParam;
 import javax.ws.rs.GET;
@@ -40,8 +41,8 @@
 	@GET
 	@Produces(
 		{ MediaType.TEXT_HTML })
-	public Response index() {
-
+	public Response index(@Context HttpServletRequest request) {
+		log.info("index session: " + request.getSession());
 		URI uri = UriBuilder.fromUri("/login").build();
 		return Response.seeOther(uri).build();
 		// return Response.ok().entity("License server").build();
@@ -51,7 +52,8 @@
 	@Path("/login")
 	@Produces(
 		{ MediaType.TEXT_HTML })
-	public Response login() {
+	public Response login(@Context HttpServletRequest request) {
+		log.info("index login: " + request.getSession());
 		try {
 			String index = IOUtils.toString(this.getClass().getResourceAsStream("/static/login.html"));
 			return Response.ok().entity(index).build();
@@ -67,9 +69,11 @@
 	@Produces(
 		{ MediaType.TEXT_HTML })
 	public Response login(@FormParam("user") String user, @FormParam("password") String password, @Context HttpServletRequest request) {
+		log.info("index session: " + request.getSession());
 		log.info("Request: " + request.getParameter("user"));
-		log.info("user/pass: {} == {} ? ", user, password);
+		log.info("is user in role: {} == {} ? ", "advance", request.isUserInRole("advance"));
 		// log.info("user: {} == {} ? " + request.getParameter("user"), user);
+		request.getSession().setAttribute("user", user);
 		URI uri = UriBuilder.fromUri("/main").build();
 		return Response.seeOther(uri).build();
 	}
@@ -81,8 +85,10 @@
 	@Path("/main")
 	@Produces(
 		{ MediaType.TEXT_HTML })
-	public Response main() {
+	@RolesAllowed("advance")
+	public Response main(@Context HttpServletRequest request) {
 		try {
+			log.info("Is user in role advance: {}", request.isUserInRole("advance"));
 			String index = IOUtils.toString(this.getClass().getResourceAsStream("/static/main.html"));
 			return Response.ok().entity(index).build();
 		} catch (IOException e) {
@@ -92,6 +98,18 @@
 		return Response.status(Status.FORBIDDEN).build();
 
 	}
+
+	@GET
+	@Path("/logout")
+	@Produces(
+		{ MediaType.TEXT_HTML })
+	public Response logout(@Context HttpServletRequest request) {
+		request.getSession().setAttribute("user", null);
+		URI uri = UriBuilder.fromUri("/login").build();
+		return Response.seeOther(uri).build();
+
+	}
+
 	//
 	// private <T> ServiceResponse<T> buildErrorResponse(ServiceResponse<T> response, String msgErrorCode) {
 	// response.setSuccess(false);

--
Gitblit v1.3.2