From 997c16d6826cfa1bef33ba08e15055cc407b9398 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Tue, 13 Dec 2011 17:36:58 -0500 Subject: [PATCH] Federation support for Teams --- src/com/gitblit/utils/FederationUtils.java | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-) diff --git a/src/com/gitblit/utils/FederationUtils.java b/src/com/gitblit/utils/FederationUtils.java index 324aa67..8207962 100644 --- a/src/com/gitblit/utils/FederationUtils.java +++ b/src/com/gitblit/utils/FederationUtils.java @@ -38,6 +38,7 @@ import com.gitblit.models.FederationModel; import com.gitblit.models.FederationProposal; import com.gitblit.models.RepositoryModel; +import com.gitblit.models.TeamModel; import com.gitblit.models.UserModel; import com.google.gson.reflect.TypeToken; @@ -56,6 +57,9 @@ }.getType(); private static final Type USERS_TYPE = new TypeToken<Collection<UserModel>>() { + }.getType(); + + private static final Type TEAMS_TYPE = new TypeToken<Collection<TeamModel>>() { }.getType(); private static final Logger LOGGER = LoggerFactory.getLogger(FederationUtils.class); @@ -281,6 +285,20 @@ } /** + * Tries to pull the gitblit team definitions from the remote gitblit instance. + * + * @param registration + * @return a collection of TeamModel objects + * @throws Exception + */ + public static List<TeamModel> getTeams(FederationModel registration) throws Exception { + String url = asLink(registration.url, registration.token, FederationRequest.PULL_TEAMS); + Collection<TeamModel> models = JsonUtils.retrieveJson(url, TEAMS_TYPE); + List<TeamModel> list = new ArrayList<TeamModel>(models); + return list; + } + + /** * Tries to pull the gitblit server settings from the remote gitblit * instance. * -- Gitblit v1.9.1