From 0e63b9a5d56600856e280f2f4d0ac8ad8cb4528a Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 13 Jun 2014 08:25:38 -0400 Subject: [PATCH] Merged #102 "NPE in GitblitClient" --- src/main/java/com/gitblit/client/GitblitClient.java | 42 ++++++++++++++++++++++-------------------- 1 files changed, 22 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/gitblit/client/GitblitClient.java b/src/main/java/com/gitblit/client/GitblitClient.java index cc7d58a..f5bba1a 100644 --- a/src/main/java/com/gitblit/client/GitblitClient.java +++ b/src/main/java/com/gitblit/client/GitblitClient.java @@ -55,9 +55,9 @@ /** * GitblitClient is a object that retrieves data from a Gitblit server, caches * it for local operations, and allows updating or creating Gitblit objects. - * + * * @author James Moger - * + * */ public class GitblitClient implements Serializable { @@ -191,9 +191,9 @@ return sb.toString(); } } - + public AccessRestrictionType getDefaultAccessRestriction() { - String restriction = null; + String restriction = "PUSH"; if (settings.hasKey(Keys.git.defaultAccessRestriction)) { restriction = settings.get(Keys.git.defaultAccessRestriction).currentValue; } @@ -211,7 +211,7 @@ /** * Returns the list of pre-receive scripts the repository inherited from the * global settings and team affiliations. - * + * * @param repository * if null only the globally specified scripts are returned * @return a list of scripts @@ -243,7 +243,7 @@ * Returns the list of all available Groovy pre-receive push hook scripts * that are not already inherited by the repository. Script files must have * .groovy extension - * + * * @param repository * optional parameter * @return list of available hook scripts @@ -253,9 +253,11 @@ // create list of available scripts by excluding inherited scripts List<String> scripts = new ArrayList<String>(); - for (String script : settings.pushScripts) { - if (!inherited.contains(script)) { - scripts.add(script); + if (!ArrayUtils.isEmpty(settings.pushScripts)) { + for (String script : settings.pushScripts) { + if (!inherited.contains(script)) { + scripts.add(script); + } } } return scripts; @@ -264,7 +266,7 @@ /** * Returns the list of post-receive scripts the repository inherited from * the global settings and team affiliations. - * + * * @param repository * if null only the globally specified scripts are returned * @return a list of scripts @@ -295,7 +297,7 @@ * Returns the list of unused Groovy post-receive push hook scripts that are * not already inherited by the repository. Script files must have .groovy * extension - * + * * @param repository * optional parameter * @return list of available hook scripts @@ -305,7 +307,7 @@ // create list of available scripts by excluding inherited scripts List<String> scripts = new ArrayList<String>(); - if (!ArrayUtils.isEmpty(settings.pushScripts)) { + if (!ArrayUtils.isEmpty(settings.pushScripts)) { for (String script : settings.pushScripts) { if (!inherited.contains(script)) { scripts.add(script); @@ -478,7 +480,7 @@ public List<UserModel> getUsers() { return allUsers; } - + public UserModel getUser(String username) { for (UserModel user : getUsers()) { if (user.username.equalsIgnoreCase(username)) { @@ -506,11 +508,11 @@ } return usernames; } - + /** * Returns the effective list of permissions for this user, taking into account * team memberships, ownerships. - * + * * @param user * @return the effective list of permissions for the user */ @@ -541,12 +543,12 @@ set.add(rp); } } - + List<RegistrantAccessPermission> list = new ArrayList<RegistrantAccessPermission>(set); Collections.sort(list); return list; } - + public List<RegistrantAccessPermission> getUserAccessPermissions(RepositoryModel repository) { List<RegistrantAccessPermission> list = new ArrayList<RegistrantAccessPermission>(); if (AccessRestrictionType.NONE.equals(repository.accessRestriction)) { @@ -593,7 +595,7 @@ } return teamnames; } - + public List<RegistrantAccessPermission> getTeamAccessPermissions(RepositoryModel repository) { List<RegistrantAccessPermission> list = new ArrayList<RegistrantAccessPermission>(); for (TeamModel team : allTeams) { @@ -626,7 +628,7 @@ public List<RepositoryModel> getRepositories() { return allRepositories; } - + public RepositoryModel getRepository(String name) { for (RepositoryModel repository : allRepositories) { if (repository.name.equalsIgnoreCase(name)) { @@ -682,7 +684,7 @@ public boolean deleteRepository(RepositoryModel repository) throws IOException { return RpcUtils.deleteRepository(repository, url, account, password); } - + public boolean clearRepositoryCache() throws IOException { return RpcUtils.clearRepositoryCache(url, account, password); } -- Gitblit v1.9.1