From 77f7a62b2d36fca3ca81e567bfce67217136a992 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Sat, 07 Mar 2015 09:09:15 -0500
Subject: [PATCH] Merged #244 "Implement user/team difference detection"
---
src/main/java/com/gitblit/manager/IAuthenticationManager.java | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 52 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/gitblit/manager/IAuthenticationManager.java b/src/main/java/com/gitblit/manager/IAuthenticationManager.java
index 093f44d..3600b32 100644
--- a/src/main/java/com/gitblit/manager/IAuthenticationManager.java
+++ b/src/main/java/com/gitblit/manager/IAuthenticationManager.java
@@ -20,6 +20,7 @@
import com.gitblit.models.TeamModel;
import com.gitblit.models.UserModel;
+import com.gitblit.transport.ssh.SshKey;
public interface IAuthenticationManager extends IManager {
@@ -30,8 +31,19 @@
*
* @param httpRequest
* @return a user object or null
+ * @since 1.4.0
*/
UserModel authenticate(HttpServletRequest httpRequest);
+
+ /**
+ * Authenticate a user based on a ssh public key.
+ *
+ * @param username
+ * @param key
+ * @return a user object or null
+* * @since 1.5.0
+ */
+ UserModel authenticate(String username, SshKey key);
/**
* Authenticate a user based on HTTP request parameters.
@@ -42,6 +54,7 @@
* @param httpRequest
* @param requiresCertificate
* @return a user object or null
+ * @since 1.4.0
*/
UserModel authenticate(HttpServletRequest httpRequest, boolean requiresCertificate);
@@ -52,29 +65,63 @@
* @param username
* @param password
* @return a user object or null
+ * @since 1.4.0
*/
UserModel authenticate(String username, char[] password);
+
+ /**
+ * Returns the Gitlbit cookie in the request.
+ *
+ * @param request
+ * @return the Gitblit cookie for the request or null if not found
+ * @since 1.4.0
+ */
+ String getCookie(HttpServletRequest request);
/**
* Sets a cookie for the specified user.
*
* @param response
* @param user
+ * @since 1.4.0
*/
+ @Deprecated
void setCookie(HttpServletResponse response, UserModel user);
+
+ /**
+ * Sets a cookie for the specified user.
+ *
+ * @param request
+ * @param response
+ * @param user
+ * @since 1.6.1
+ */
+ void setCookie(HttpServletRequest request, HttpServletResponse response, UserModel user);
/**
* Logout a user.
*
* @param user
+ * @since 1.4.0
*/
+ @Deprecated
void logout(HttpServletResponse response, UserModel user);
+
+ /**
+ * Logout a user.
+ *
+ * @param request
+ * @param response
+ * @param user
+ * @since 1.6.1
+ */
+ void logout(HttpServletRequest request, HttpServletResponse response, UserModel user);
/**
* Does the user service support changes to credentials?
*
* @return true or false
- * @since 1.0.0
+ * @since 1.4.0
*/
boolean supportsCredentialChanges(UserModel user);
@@ -83,6 +130,7 @@
*
* @param user
* @return true if the user service supports display name changes
+ * @since 1.4.0
*/
boolean supportsDisplayNameChanges(UserModel user);
@@ -91,6 +139,7 @@
*
* @param user
* @return true if the user service supports email address changes
+ * @since 1.4.0
*/
boolean supportsEmailAddressChanges(UserModel user);
@@ -99,6 +148,7 @@
*
* @param user
* @return true if the user service supports team membership changes
+ * @since 1.4.0
*/
boolean supportsTeamMembershipChanges(UserModel user);
@@ -107,6 +157,7 @@
*
* @param user
* @return true if the team memberships can be changed
+ * @since 1.4.0
*/
boolean supportsTeamMembershipChanges(TeamModel team);
--
Gitblit v1.9.1