Change IGitblit API to be more distinct from IUserService
Change-Id: I8fb38fb6a3dae74ad7a12b045b054373b9b02518
| | |
| | | UserModel originOwner = userManager.getUserModel(owner); |
| | | if (originOwner != null) { |
| | | originOwner.setRepositoryPermission(cloneName, AccessPermission.CLONE); |
| | | updateUserModel(originOwner.username, originOwner, false); |
| | | reviseUser(originOwner.username, originOwner); |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | /** |
| | | * Adds a TeamModel object. |
| | | * |
| | | * @param team |
| | | */ |
| | | @Override |
| | | public void addTeam(TeamModel team) throws GitBlitException { |
| | | if (!userManager.updateTeamModel(team)) { |
| | | throw new GitBlitException("Failed to add team!"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * Updates the TeamModel object for the specified name. |
| | | * |
| | | * @param teamname |
| | | * @param team |
| | | * @param isCreate |
| | | */ |
| | | @Override |
| | | public void updateTeamModel(String teamname, TeamModel team, boolean isCreate) |
| | | throws GitBlitException { |
| | | public void reviseTeam(String teamname, TeamModel team) throws GitBlitException { |
| | | if (!teamname.equalsIgnoreCase(team.name)) { |
| | | if (userManager.getTeamModel(team.name) != null) { |
| | | throw new GitBlitException(MessageFormat.format( |
| | |
| | | } |
| | | } |
| | | if (!userManager.updateTeamModel(teamname, team)) { |
| | | throw new GitBlitException(isCreate ? "Failed to add team!" : "Failed to update team!"); |
| | | throw new GitBlitException("Failed to update team!"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * Adds/updates a complete user object keyed by username. This method allows |
| | | * for renaming a user. |
| | | * Adds a user object. |
| | | * |
| | | * @see IUserService.updateUserModel(String, UserModel) |
| | | * @param username |
| | | * @param user |
| | | * @param isCreate |
| | | * @throws GitBlitException |
| | | */ |
| | | @Override |
| | | public void updateUserModel(String username, UserModel user, boolean isCreate) |
| | | throws GitBlitException { |
| | | public void addUser(UserModel user) throws GitBlitException { |
| | | if (!userManager.updateUserModel(user)) { |
| | | throw new GitBlitException("Failed to add user!"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * Updates a user object keyed by username. This method allows |
| | | * for renaming a user. |
| | | * |
| | | * @param username |
| | | * @param user |
| | | * @throws GitBlitException |
| | | */ |
| | | @Override |
| | | public void reviseUser(String username, UserModel user) throws GitBlitException { |
| | | if (!username.equalsIgnoreCase(user.username)) { |
| | | if (userManager.getUserModel(user.username) != null) { |
| | | throw new GitBlitException(MessageFormat.format( |
| | |
| | | } |
| | | } |
| | | if (!userManager.updateUserModel(username, user)) { |
| | | throw new GitBlitException(isCreate ? "Failed to add user!" : "Failed to update user!"); |
| | | throw new GitBlitException("Failed to update user!"); |
| | | } |
| | | } |
| | | |
| | |
| | | List<RepositoryUrl> getRepositoryUrls(HttpServletRequest request, UserModel user, RepositoryModel repository); |
| | | |
| | | /** |
| | | * Adds/updates a complete user object keyed by username. This method allows |
| | | * for renaming a user. |
| | | * Creates a complete user object. |
| | | * |
| | | * @see IUserService.updateUserModel(String, UserModel) |
| | | * @param username |
| | | * @param user |
| | | * @param isCreate |
| | | * @throws GitBlitException |
| | | */ |
| | | void updateUserModel(String username, UserModel user, boolean isCreate) throws GitBlitException; |
| | | void addUser(UserModel user) throws GitBlitException; |
| | | |
| | | /** |
| | | * Updates a complete user object keyed by username. This method allows |
| | | * for renaming a user. |
| | | * |
| | | * @param username |
| | | * @param user |
| | | * @throws GitBlitException |
| | | */ |
| | | void reviseUser(String username, UserModel user) throws GitBlitException; |
| | | |
| | | /** |
| | | * Creates a TeamModel object. |
| | | * |
| | | * @param team |
| | | * @param isCreate |
| | | */ |
| | | void addTeam(TeamModel team) throws GitBlitException; |
| | | |
| | | /** |
| | | * Updates the TeamModel object for the specified name. |
| | | * |
| | | * @param teamname |
| | | * @param team |
| | | * @param isCreate |
| | | */ |
| | | void updateTeamModel(String teamname, TeamModel team, boolean isCreate) throws GitBlitException; |
| | | void reviseTeam(String teamname, TeamModel team) throws GitBlitException; |
| | | |
| | | /** |
| | | * Creates a personal fork of the specified repository. The clone is view |
| | |
| | | import com.gitblit.Constants.AccessPermission; |
| | | import com.gitblit.Constants.FederationPullStatus; |
| | | import com.gitblit.Constants.FederationStrategy; |
| | | import com.gitblit.GitBlitException.ForbiddenException; |
| | | import com.gitblit.GitBlit; |
| | | import com.gitblit.GitBlitException.ForbiddenException; |
| | | import com.gitblit.IUserService; |
| | | import com.gitblit.Keys; |
| | | import com.gitblit.models.FederationModel; |
| | |
| | | UserModel localUser = gitblit.getUserModel(user.username); |
| | | if (localUser == null) { |
| | | // create new local user |
| | | gitblit.updateUserModel(user.username, user, true); |
| | | gitblit.addUser(user); |
| | | } else { |
| | | // update repository permissions of local user |
| | | if (user.permissions != null) { |
| | |
| | | } |
| | | localUser.password = user.password; |
| | | localUser.canAdmin = user.canAdmin; |
| | | gitblit.updateUserModel(localUser.username, localUser, false); |
| | | gitblit.reviseUser(localUser.username, localUser); |
| | | } |
| | | |
| | | for (String teamname : gitblit.getAllTeamNames()) { |
| | |
| | | // create user
|
| | | UserModel model = deserialize(request, response, UserModel.class);
|
| | | try {
|
| | | gitblit.updateUserModel(model.username, model, true);
|
| | | gitblit.addUser(model);
|
| | | } catch (GitBlitException e) {
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | |
| | | username = model.username;
|
| | | }
|
| | | try {
|
| | | gitblit.updateUserModel(username, model, false);
|
| | | gitblit.reviseUser(username, model);
|
| | | } catch (GitBlitException e) {
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | |
| | | // create team
|
| | | TeamModel model = deserialize(request, response, TeamModel.class);
|
| | | try {
|
| | | gitblit.updateTeamModel(model.name, model, true);
|
| | | gitblit.addTeam(model);
|
| | | } catch (GitBlitException e) {
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | |
| | | teamname = model.name;
|
| | | }
|
| | | try {
|
| | | gitblit.updateTeamModel(teamname, model, false);
|
| | | gitblit.reviseTeam(teamname, model);
|
| | | } catch (GitBlitException e) {
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | |
| | |
|
| | | user.password = password;
|
| | | try {
|
| | | app().gitblit().updateUserModel(user.username, user, false);
|
| | | app().gitblit().reviseUser(user.username, user);
|
| | | if (app().settings().getBoolean(Keys.web.allowCookieAuthentication, false)) {
|
| | | WebResponse response = (WebResponse) getRequestCycle().getResponse();
|
| | | app().authentication().setCookie(response.getHttpServletResponse(), user);
|
| | |
| | | teamModel.postReceiveScripts.addAll(postReceiveScripts);
|
| | |
|
| | | try {
|
| | | app().gitblit().updateTeamModel(oldName, teamModel, isCreate);
|
| | | if (isCreate) {
|
| | | app().gitblit().addTeam(teamModel);
|
| | | } else {
|
| | | app().gitblit().reviseTeam(oldName, teamModel);
|
| | | }
|
| | | } catch (GitBlitException e) {
|
| | | error(e.getMessage());
|
| | | return;
|
| | |
| | | }
|
| | |
|
| | | try {
|
| | | app().gitblit().updateUserModel(oldName, userModel, isCreate);
|
| | | if (isCreate) {
|
| | | app().gitblit().addUser(userModel);
|
| | | } else {
|
| | | app().gitblit().reviseUser(oldName, userModel);
|
| | | }
|
| | | } catch (GitBlitException e) {
|
| | | error(e.getMessage());
|
| | | return;
|
| | |
| | | UserRepositoryPreferences prefs = user.getPreferences().getRepositoryPreferences(getRepositoryModel().name);
|
| | | prefs.starred = star;
|
| | | try {
|
| | | app().gitblit().updateUserModel(user.username, user, false);
|
| | | app().gitblit().reviseUser(user.username, user);
|
| | | } catch (GitBlitException e) {
|
| | | logger.error("Failed to update user " + user.username, e);
|
| | | error(getString("gb.failedToUpdateUser"), false);
|
| | |
| | | model.authorizationControl = AuthorizationControl.NAMED;
|
| | | UserModel user = new UserModel("james");
|
| | | user.password = "james";
|
| | | gitblit().updateUserModel(user.username, user, true);
|
| | | gitblit().addUser(user);
|
| | | repositories().updateRepositoryModel(model.name, model, false);
|
| | |
|
| | | FileUtils.delete(ticgit2Folder, FileUtils.RECURSIVE);
|
| | |
| | | // grant user push permission
|
| | | user.setRepositoryPermission(model.name, AccessPermission.PUSH);
|
| | |
|
| | | gitblit().updateUserModel(user.username, user, true);
|
| | | gitblit().addUser(user);
|
| | | repositories().updateRepositoryModel(model.name, model, false);
|
| | |
|
| | | // clone temp bare repo to working copy
|
| | |
| | | // grant user push permission
|
| | | user.setRepositoryPermission(model.name, AccessPermission.PUSH);
|
| | |
|
| | | gitblit().updateUserModel(user.username, user, true);
|
| | | gitblit().addUser(user);
|
| | | repositories().updateRepositoryModel(model.name, model, false);
|
| | |
|
| | | // clone temp bare repo to working copy
|
| | |
| | | // grant user specified
|
| | | user.setRepositoryPermission(model.name, permission);
|
| | |
|
| | | gitblit().updateUserModel(user.username, user, true);
|
| | | gitblit().addUser(user);
|
| | | repositories().updateRepositoryModel(model.name, model, false);
|
| | |
|
| | | // clone temp bare repo to working copy
|
| | |
| | | user.canCreate = canCreate;
|
| | | user.canAdmin = canAdmin;
|
| | |
|
| | | gitblit().updateUserModel(user.username, user, true);
|
| | | gitblit().addUser(user);
|
| | |
|
| | | CredentialsProvider cp = new UsernamePasswordCredentialsProvider(user.username, user.password);
|
| | |
|