package de.juplo.yourshouter;
+import java.io.IOException;
import java.util.Collections;
+import java.util.regex.Pattern;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.slf4j.Logger;
{
private final static Logger LOG =
LoggerFactory.getLogger(UserCookieInterceptor.class);
+ private final static Pattern PATTERN = Pattern.compile("^/signin|canvas");
private final UsersConnectionRepository repository;
* @return
* Always <code>true</code>, to indicate, that the intercepted request
* should be handled normally.
+ * @throws java.io.IOException
+ * if something wents wrong, while sending the redirect to the
+ * sign-in-page.
*/
@Override
public boolean preHandle(
HttpServletResponse response,
Object handler
)
+ throws
+ IOException
{
+ if (PATTERN.matcher(request.getServletPath()).find())
+ return true;
+
String user = UserCookieGenerator.INSTANCE.readCookieValue(request);
if (user != null)
{
UserCookieGenerator.INSTANCE.removeCookie(response);
}
}
- return true;
+
+ response.sendRedirect("/signin.html");
+ return false;
}
/**