From f8f6aa4d07cdfaaf23e24bf9eaf0a5fb9b437dda Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 29 Nov 2013 11:05:51 -0500
Subject: [PATCH] Update unit tests for refactored architecture
---
src/main/java/com/gitblit/WindowsUserService.java | 27 ++++++++++++++-------------
1 files changed, 14 insertions(+), 13 deletions(-)
diff --git a/src/main/java/com/gitblit/WindowsUserService.java b/src/main/java/com/gitblit/WindowsUserService.java
index 4830297..99077c6 100644
--- a/src/main/java/com/gitblit/WindowsUserService.java
+++ b/src/main/java/com/gitblit/WindowsUserService.java
@@ -29,6 +29,7 @@
import waffle.windows.auth.impl.WindowsAuthProviderImpl;
import com.gitblit.Constants.AccountType;
+import com.gitblit.manager.IRuntimeManager;
import com.gitblit.models.UserModel;
import com.gitblit.utils.ArrayUtils;
import com.gitblit.utils.StringUtils;
@@ -36,7 +37,7 @@
/**
* Implementation of a Windows user service.
- *
+ *
* @author James Moger
*/
public class WindowsUserService extends GitblitUserService {
@@ -44,7 +45,7 @@
private final Logger logger = LoggerFactory.getLogger(WindowsUserService.class);
private IStoredSettings settings;
-
+
private IWindowsAuthProvider waffle;
public WindowsUserService() {
@@ -52,15 +53,15 @@
}
@Override
- public void setup(IStoredSettings settings) {
- this.settings = settings;
+ public void setup(IRuntimeManager runtimeManager) {
+ this.settings = runtimeManager.getSettings();
String file = settings.getString(Keys.realm.windows.backingUserService, "${baseFolder}/users.conf");
- File realmFile = GitBlit.getFileOrFolder(file);
+ File realmFile = runtimeManager.getFileOrFolder(file);
serviceImpl = createUserService(realmFile);
logger.info("Windows User Service backed by " + serviceImpl.toString());
-
+
waffle = new WindowsAuthProviderImpl();
IWindowsComputer computer = waffle.getCurrentComputer();
logger.info(" name = " + computer.getComputerName());
@@ -68,7 +69,7 @@
logger.info(" memberOf = " + computer.getMemberOf());
//logger.info(" groups = " + Arrays.asList(computer.getGroups()));
}
-
+
protected String describeJoinStatus(String value) {
if ("NetSetupUnknownStatus".equals(value)) {
return "unknown";
@@ -101,9 +102,9 @@
public boolean supportsTeamMembershipChanges() {
return true;
}
-
+
@Override
- protected AccountType getAccountType() {
+ public AccountType getAccountType() {
return AccountType.WINDOWS;
}
@@ -150,7 +151,7 @@
identity.dispose();
return null;
}
-
+
UserModel user = getUserModel(username);
if (user == null) // create user object for new authenticated user
user = new UserModel(username.toLowerCase());
@@ -174,12 +175,12 @@
for (IWindowsAccount group : identity.getGroups()) {
groupNames.add(group.getFqn());
}
-
+
if (groupNames.contains("BUILTIN\\Administrators")) {
// local administrator
user.canAdmin = true;
}
-
+
// TODO consider mapping Windows groups to teams
// push the changes to the backing user service
@@ -188,7 +189,7 @@
// cleanup resources
identity.dispose();
-
+
return user;
}
}
--
Gitblit v1.9.1