Move GroupInfo and related classes from GroupJson to extensions
Change-Id: I299411d99ef5d635aa62f9e862049c7842aa9038
This commit is contained in:
		@@ -26,12 +26,12 @@ import com.google.gerrit.acceptance.TestAccount;
 | 
				
			|||||||
import com.google.gerrit.common.data.GlobalCapability;
 | 
					import com.google.gerrit.common.data.GlobalCapability;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescription;
 | 
					import com.google.gerrit.common.data.GroupDescription;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescriptions;
 | 
					import com.google.gerrit.common.data.GroupDescriptions;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.common.SuggestedReviewerInfo;
 | 
					import com.google.gerrit.extensions.common.SuggestedReviewerInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.TopLevelResource;
 | 
					import com.google.gerrit.extensions.restapi.TopLevelResource;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.Url;
 | 
					import com.google.gerrit.extensions.restapi.Url;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.group.GroupsCollection;
 | 
					import com.google.gerrit.server.group.GroupsCollection;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -25,6 +25,7 @@ import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			|||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
import com.google.gerrit.acceptance.TestAccount;
 | 
					import com.google.gerrit.acceptance.TestAccount;
 | 
				
			||||||
import com.google.gerrit.extensions.common.AccountInfo;
 | 
					import com.google.gerrit.extensions.common.AccountInfo;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.Account;
 | 
					import com.google.gerrit.reviewdb.client.Account;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroupById;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroupById;
 | 
				
			||||||
@@ -32,7 +33,6 @@ import com.google.gerrit.reviewdb.client.AccountGroupMember;
 | 
				
			|||||||
import com.google.gerrit.server.group.AddIncludedGroups;
 | 
					import com.google.gerrit.server.group.AddIncludedGroups;
 | 
				
			||||||
import com.google.gerrit.server.group.AddMembers;
 | 
					import com.google.gerrit.server.group.AddMembers;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gson.reflect.TypeToken;
 | 
					import com.google.gson.reflect.TypeToken;
 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.gwtorm.server.ResultSet;
 | 
					import com.google.gwtorm.server.ResultSet;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,9 +20,9 @@ import static com.google.gerrit.acceptance.rest.group.GroupAssert.assertGroupInf
 | 
				
			|||||||
import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
					import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestSession;
 | 
					import com.google.gerrit.acceptance.RestSession;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.apache.http.HttpStatus;
 | 
					import org.apache.http.HttpStatus;
 | 
				
			||||||
import org.junit.Test;
 | 
					import org.junit.Test;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,8 +22,8 @@ import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			|||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestSession;
 | 
					import com.google.gerrit.acceptance.RestSession;
 | 
				
			||||||
import com.google.gerrit.acceptance.SshSession;
 | 
					import com.google.gerrit.acceptance.SshSession;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gson.reflect.TypeToken;
 | 
					import com.google.gson.reflect.TypeToken;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.junit.Test;
 | 
					import org.junit.Test;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,8 +18,8 @@ import static com.google.gerrit.acceptance.rest.group.GroupAssert.assertGroupInf
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
					import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.junit.Test;
 | 
					import org.junit.Test;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -17,9 +17,9 @@ package com.google.gerrit.acceptance.rest.group;
 | 
				
			|||||||
import static com.google.common.truth.Truth.assertThat;
 | 
					import static com.google.common.truth.Truth.assertThat;
 | 
				
			||||||
import static com.google.common.truth.Truth.assert_;
 | 
					import static com.google.common.truth.Truth.assert_;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.Url;
 | 
					import com.google.gerrit.extensions.restapi.Url;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.util.Set;
 | 
					import java.util.Set;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,11 +20,11 @@ import static com.google.gerrit.acceptance.rest.group.GroupAssert.toBoolean;
 | 
				
			|||||||
import com.google.common.base.Strings;
 | 
					import com.google.common.base.Strings;
 | 
				
			||||||
import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
					import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupOptionsInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.Url;
 | 
					import com.google.gerrit.extensions.restapi.Url;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.group.GroupOptionsInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.group.PutDescription;
 | 
					import com.google.gerrit.server.group.PutDescription;
 | 
				
			||||||
import com.google.gerrit.server.group.PutName;
 | 
					import com.google.gerrit.server.group.PutName;
 | 
				
			||||||
import com.google.gerrit.server.group.PutOptions;
 | 
					import com.google.gerrit.server.group.PutOptions;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -21,8 +21,8 @@ import com.google.common.collect.Collections2;
 | 
				
			|||||||
import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
					import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
import com.google.gerrit.common.Nullable;
 | 
					import com.google.gerrit.common.Nullable;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gson.reflect.TypeToken;
 | 
					import com.google.gson.reflect.TypeToken;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.apache.http.HttpStatus;
 | 
					import org.apache.http.HttpStatus;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -24,9 +24,9 @@ import com.google.common.collect.Sets;
 | 
				
			|||||||
import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
					import com.google.gerrit.acceptance.AbstractDaemonTest;
 | 
				
			||||||
import com.google.gerrit.acceptance.RestResponse;
 | 
					import com.google.gerrit.acceptance.RestResponse;
 | 
				
			||||||
import com.google.gerrit.common.Nullable;
 | 
					import com.google.gerrit.common.Nullable;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gson.reflect.TypeToken;
 | 
					import com.google.gson.reflect.TypeToken;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import org.apache.http.HttpStatus;
 | 
					import org.apache.http.HttpStatus;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -12,11 +12,10 @@
 | 
				
			|||||||
// See the License for the specific language governing permissions and
 | 
					// See the License for the specific language governing permissions and
 | 
				
			||||||
// limitations under the License.
 | 
					// limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.common.groups;
 | 
					package com.google.gerrit.extensions.client;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.util.EnumSet;
 | 
					import java.util.EnumSet;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
/** Output options available when using {@code /groups/} RPCs. */
 | 
					/** Output options available when using {@code /groups/} RPCs. */
 | 
				
			||||||
public enum ListGroupsOption {
 | 
					public enum ListGroupsOption {
 | 
				
			||||||
  /** Return information on the direct group members. */
 | 
					  /** Return information on the direct group members. */
 | 
				
			||||||
@@ -0,0 +1,32 @@
 | 
				
			|||||||
 | 
					// Copyright (C) 2015 The Android Open Source Project
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					// you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					// You may obtain a copy of the License at
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					//
 | 
				
			||||||
 | 
					// Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					// distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					// See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					// limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					package com.google.gerrit.extensions.common;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import java.util.List;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					public class GroupInfo extends GroupBaseInfo {
 | 
				
			||||||
 | 
					  public String url;
 | 
				
			||||||
 | 
					  public GroupOptionsInfo options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // These fields are only supplied for internal groups.
 | 
				
			||||||
 | 
					  public String description;
 | 
				
			||||||
 | 
					  public Integer groupId;
 | 
				
			||||||
 | 
					  public String owner;
 | 
				
			||||||
 | 
					  public String ownerId;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  // These fields are only supplied for internal groups, and only if requested.
 | 
				
			||||||
 | 
					  public List<AccountInfo> members;
 | 
				
			||||||
 | 
					  public List<GroupInfo> includes;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -1,4 +1,4 @@
 | 
				
			|||||||
// Copyright (C) 2013 The Android Open Source Project
 | 
					// Copyright (C) 2015 The Android Open Source Project
 | 
				
			||||||
//
 | 
					//
 | 
				
			||||||
// Licensed under the Apache License, Version 2.0 (the "License");
 | 
					// Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
// you may not use this file except in compliance with the License.
 | 
					// you may not use this file except in compliance with the License.
 | 
				
			||||||
@@ -12,21 +12,8 @@
 | 
				
			|||||||
// See the License for the specific language governing permissions and
 | 
					// See the License for the specific language governing permissions and
 | 
				
			||||||
// limitations under the License.
 | 
					// limitations under the License.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.extensions.common;
 | 
				
			||||||
 | 
					 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescription;
 | 
					 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescriptions;
 | 
					 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GroupOptionsInfo {
 | 
					public class GroupOptionsInfo {
 | 
				
			||||||
  public Boolean visibleToAll;
 | 
					  public Boolean visibleToAll;
 | 
				
			||||||
 | 
					 | 
				
			||||||
  public GroupOptionsInfo(GroupDescription.Basic group) {
 | 
					 | 
				
			||||||
    AccountGroup ag = GroupDescriptions.toAccountGroup(group);
 | 
					 | 
				
			||||||
    visibleToAll = ag != null && ag.isVisibleToAll() ? true : null;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  public GroupOptionsInfo(AccountGroup group) {
 | 
					 | 
				
			||||||
    visibleToAll = group.isVisibleToAll() ? true : null;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -16,12 +16,12 @@ package com.google.gerrit.server.account;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import com.google.common.collect.Lists;
 | 
					import com.google.common.collect.Lists;
 | 
				
			||||||
import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
					import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.Account;
 | 
					import com.google.gerrit.reviewdb.client.Account;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.IdentifiedUser;
 | 
					import com.google.gerrit.server.IdentifiedUser;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson;
 | 
					import com.google.gerrit.server.group.GroupJson;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Singleton;
 | 
					import com.google.inject.Singleton;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,6 +20,7 @@ import com.google.common.collect.Lists;
 | 
				
			|||||||
import com.google.common.collect.Maps;
 | 
					import com.google.common.collect.Maps;
 | 
				
			||||||
import com.google.gerrit.audit.AuditService;
 | 
					import com.google.gerrit.audit.AuditService;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescription;
 | 
					import com.google.gerrit.common.data.GroupDescription;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.AuthException;
 | 
					import com.google.gerrit.extensions.restapi.AuthException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.DefaultInput;
 | 
					import com.google.gerrit.extensions.restapi.DefaultInput;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
					import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
				
			||||||
@@ -33,7 +34,6 @@ import com.google.gerrit.server.IdentifiedUser;
 | 
				
			|||||||
import com.google.gerrit.server.account.GroupControl;
 | 
					import com.google.gerrit.server.account.GroupControl;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupIncludeCache;
 | 
					import com.google.gerrit.server.account.GroupIncludeCache;
 | 
				
			||||||
import com.google.gerrit.server.group.AddIncludedGroups.Input;
 | 
					import com.google.gerrit.server.group.AddIncludedGroups.Input;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Provider;
 | 
					import com.google.inject.Provider;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -20,6 +20,7 @@ import com.google.gerrit.common.data.GlobalCapability;
 | 
				
			|||||||
import com.google.gerrit.common.data.GroupDescription;
 | 
					import com.google.gerrit.common.data.GroupDescription;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescriptions;
 | 
					import com.google.gerrit.common.data.GroupDescriptions;
 | 
				
			||||||
import com.google.gerrit.extensions.annotations.RequiresCapability;
 | 
					import com.google.gerrit.extensions.annotations.RequiresCapability;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.registration.DynamicSet;
 | 
					import com.google.gerrit.extensions.registration.DynamicSet;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.AuthException;
 | 
					import com.google.gerrit.extensions.restapi.AuthException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.BadRequestException;
 | 
					import com.google.gerrit.extensions.restapi.BadRequestException;
 | 
				
			||||||
@@ -39,7 +40,6 @@ import com.google.gerrit.server.account.GroupCache;
 | 
				
			|||||||
import com.google.gerrit.server.account.GroupUUID;
 | 
					import com.google.gerrit.server.account.GroupUUID;
 | 
				
			||||||
import com.google.gerrit.server.config.GerritServerConfig;
 | 
					import com.google.gerrit.server.config.GerritServerConfig;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup.Input;
 | 
					import com.google.gerrit.server.group.CreateGroup.Input;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.validators.GroupCreationValidationListener;
 | 
					import com.google.gerrit.server.validators.GroupCreationValidationListener;
 | 
				
			||||||
import com.google.gerrit.server.validators.ValidationException;
 | 
					import com.google.gerrit.server.validators.ValidationException;
 | 
				
			||||||
import com.google.gwtorm.server.OrmDuplicateKeyException;
 | 
					import com.google.gwtorm.server.OrmDuplicateKeyException;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,9 +14,9 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import com.google.gerrit.common.groups.ListGroupsOption;
 | 
					import com.google.gerrit.extensions.client.ListGroupsOption;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Singleton;
 | 
					import com.google.inject.Singleton;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,8 +14,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Singleton;
 | 
					import com.google.inject.Singleton;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,8 +14,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Singleton;
 | 
					import com.google.inject.Singleton;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,6 +14,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupOptionsInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.inject.Singleton;
 | 
					import com.google.inject.Singleton;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -22,6 +23,6 @@ public class GetOptions implements RestReadView<GroupResource> {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  @Override
 | 
					  @Override
 | 
				
			||||||
  public GroupOptionsInfo apply(GroupResource resource) {
 | 
					  public GroupOptionsInfo apply(GroupResource resource) {
 | 
				
			||||||
    return new GroupOptionsInfo(resource.getGroup());
 | 
					    return GroupJson.createOptions(resource.getGroup());
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,12 +15,12 @@
 | 
				
			|||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
					import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
					import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.ResourceNotFoundException;
 | 
					import com.google.gerrit.extensions.restapi.ResourceNotFoundException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupControl;
 | 
					import com.google.gerrit.server.account.GroupControl;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Singleton;
 | 
					import com.google.inject.Singleton;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,14 +14,15 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import static com.google.gerrit.common.groups.ListGroupsOption.INCLUDES;
 | 
					import static com.google.gerrit.extensions.client.ListGroupsOption.INCLUDES;
 | 
				
			||||||
import static com.google.gerrit.common.groups.ListGroupsOption.MEMBERS;
 | 
					import static com.google.gerrit.extensions.client.ListGroupsOption.MEMBERS;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import com.google.common.base.Strings;
 | 
					import com.google.common.base.Strings;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescription;
 | 
					import com.google.gerrit.common.data.GroupDescription;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescriptions;
 | 
					import com.google.gerrit.common.data.GroupDescriptions;
 | 
				
			||||||
import com.google.gerrit.common.groups.ListGroupsOption;
 | 
					import com.google.gerrit.extensions.client.ListGroupsOption;
 | 
				
			||||||
import com.google.gerrit.extensions.common.AccountInfo;
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupOptionsInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
					import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.Url;
 | 
					import com.google.gerrit.extensions.restapi.Url;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
@@ -33,9 +34,17 @@ import com.google.inject.Provider;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import java.util.Collection;
 | 
					import java.util.Collection;
 | 
				
			||||||
import java.util.EnumSet;
 | 
					import java.util.EnumSet;
 | 
				
			||||||
import java.util.List;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GroupJson {
 | 
					public class GroupJson {
 | 
				
			||||||
 | 
					  public static GroupOptionsInfo createOptions(GroupDescription.Basic group) {
 | 
				
			||||||
 | 
					    GroupOptionsInfo options = new GroupOptionsInfo();
 | 
				
			||||||
 | 
					    AccountGroup ag = GroupDescriptions.toAccountGroup(group);
 | 
				
			||||||
 | 
					    if (ag != null && ag.isVisibleToAll()) {
 | 
				
			||||||
 | 
					      options.visibleToAll = true;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return options;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  private final GroupBackend groupBackend;
 | 
					  private final GroupBackend groupBackend;
 | 
				
			||||||
  private final GroupControl.Factory groupControlFactory;
 | 
					  private final GroupControl.Factory groupControlFactory;
 | 
				
			||||||
  private final Provider<ListMembers> listMembers;
 | 
					  private final Provider<ListMembers> listMembers;
 | 
				
			||||||
@@ -86,7 +95,7 @@ public class GroupJson {
 | 
				
			|||||||
    info.id = Url.encode(group.getGroupUUID().get());
 | 
					    info.id = Url.encode(group.getGroupUUID().get());
 | 
				
			||||||
    info.name = Strings.emptyToNull(group.getName());
 | 
					    info.name = Strings.emptyToNull(group.getName());
 | 
				
			||||||
    info.url = Strings.emptyToNull(group.getUrl());
 | 
					    info.url = Strings.emptyToNull(group.getUrl());
 | 
				
			||||||
    info.options = new GroupOptionsInfo(group);
 | 
					    info.options = createOptions(group);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    AccountGroup g = GroupDescriptions.toAccountGroup(group);
 | 
					    AccountGroup g = GroupDescriptions.toAccountGroup(group);
 | 
				
			||||||
    if (g != null) {
 | 
					    if (g != null) {
 | 
				
			||||||
@@ -125,24 +134,4 @@ public class GroupJson {
 | 
				
			|||||||
      throw new IllegalStateException(e);
 | 
					      throw new IllegalStateException(e);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					 | 
				
			||||||
  public static class GroupInfo extends GroupBaseInfo {
 | 
					 | 
				
			||||||
    public String url;
 | 
					 | 
				
			||||||
    public GroupOptionsInfo options;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // These fields are only supplied for internal groups.
 | 
					 | 
				
			||||||
    public String description;
 | 
					 | 
				
			||||||
    public Integer groupId;
 | 
					 | 
				
			||||||
    public String owner;
 | 
					 | 
				
			||||||
    public String ownerId;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // These fields are only supplied for internal groups, but only if requested
 | 
					 | 
				
			||||||
    public List<AccountInfo> members;
 | 
					 | 
				
			||||||
    public List<GroupInfo> includes;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  public static class GroupBaseInfo {
 | 
					 | 
				
			||||||
    public String id;
 | 
					 | 
				
			||||||
    public String name;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -22,7 +22,8 @@ import com.google.common.collect.Sets;
 | 
				
			|||||||
import com.google.gerrit.common.data.GroupDescriptions;
 | 
					import com.google.gerrit.common.data.GroupDescriptions;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupReference;
 | 
					import com.google.gerrit.common.data.GroupReference;
 | 
				
			||||||
import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
					import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
				
			||||||
import com.google.gerrit.common.groups.ListGroupsOption;
 | 
					import com.google.gerrit.extensions.client.ListGroupsOption;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.TopLevelResource;
 | 
					import com.google.gerrit.extensions.restapi.TopLevelResource;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.Url;
 | 
					import com.google.gerrit.extensions.restapi.Url;
 | 
				
			||||||
@@ -35,7 +36,6 @@ import com.google.gerrit.server.account.GetGroups;
 | 
				
			|||||||
import com.google.gerrit.server.account.GroupCache;
 | 
					import com.google.gerrit.server.account.GroupCache;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupComparator;
 | 
					import com.google.gerrit.server.account.GroupComparator;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupControl;
 | 
					import com.google.gerrit.server.account.GroupControl;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.project.ProjectControl;
 | 
					import com.google.gerrit.server.project.ProjectControl;
 | 
				
			||||||
import com.google.gson.reflect.TypeToken;
 | 
					import com.google.gson.reflect.TypeToken;
 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,12 +18,12 @@ import static com.google.common.base.Strings.nullToEmpty;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import com.google.common.collect.Lists;
 | 
					import com.google.common.collect.Lists;
 | 
				
			||||||
import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
					import com.google.gerrit.common.errors.NoSuchGroupException;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
					import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestReadView;
 | 
					import com.google.gerrit.extensions.restapi.RestReadView;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroupById;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroupById;
 | 
				
			||||||
import com.google.gerrit.reviewdb.server.ReviewDb;
 | 
					import com.google.gerrit.reviewdb.server.ReviewDb;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupControl;
 | 
					import com.google.gerrit.server.account.GroupControl;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
import com.google.inject.Provider;
 | 
					import com.google.inject.Provider;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,6 +14,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
package com.google.gerrit.server.group;
 | 
					package com.google.gerrit.server.group;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupOptionsInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.AuthException;
 | 
					import com.google.gerrit.extensions.restapi.AuthException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.BadRequestException;
 | 
					import com.google.gerrit.extensions.restapi.BadRequestException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
					import com.google.gerrit.extensions.restapi.MethodNotAllowedException;
 | 
				
			||||||
@@ -72,6 +73,10 @@ public class PutOptions implements RestModifyView<GroupResource, Input> {
 | 
				
			|||||||
    db.get().accountGroups().update(Collections.singleton(group));
 | 
					    db.get().accountGroups().update(Collections.singleton(group));
 | 
				
			||||||
    groupCache.evict(group);
 | 
					    groupCache.evict(group);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return new GroupOptionsInfo(group);
 | 
					    GroupOptionsInfo options = new GroupOptionsInfo();
 | 
				
			||||||
 | 
					    if (group.isVisibleToAll()) {
 | 
				
			||||||
 | 
					      options.visibleToAll = true;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return options;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -16,6 +16,7 @@ package com.google.gerrit.server.group;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import com.google.common.base.Strings;
 | 
					import com.google.common.base.Strings;
 | 
				
			||||||
import com.google.gerrit.common.data.GroupDescription;
 | 
					import com.google.gerrit.common.data.GroupDescription;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.AuthException;
 | 
					import com.google.gerrit.extensions.restapi.AuthException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.BadRequestException;
 | 
					import com.google.gerrit.extensions.restapi.BadRequestException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.DefaultInput;
 | 
					import com.google.gerrit.extensions.restapi.DefaultInput;
 | 
				
			||||||
@@ -26,7 +27,6 @@ import com.google.gerrit.extensions.restapi.UnprocessableEntityException;
 | 
				
			|||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.reviewdb.server.ReviewDb;
 | 
					import com.google.gerrit.reviewdb.server.ReviewDb;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupCache;
 | 
					import com.google.gerrit.server.account.GroupCache;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.group.PutOwner.Input;
 | 
					import com.google.gerrit.server.group.PutOwner.Input;
 | 
				
			||||||
import com.google.gwtorm.server.OrmException;
 | 
					import com.google.gwtorm.server.OrmException;
 | 
				
			||||||
import com.google.inject.Inject;
 | 
					import com.google.inject.Inject;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,6 +18,7 @@ import com.google.common.base.Function;
 | 
				
			|||||||
import com.google.common.collect.FluentIterable;
 | 
					import com.google.common.collect.FluentIterable;
 | 
				
			||||||
import com.google.gerrit.common.data.GlobalCapability;
 | 
					import com.google.gerrit.common.data.GlobalCapability;
 | 
				
			||||||
import com.google.gerrit.extensions.annotations.RequiresCapability;
 | 
					import com.google.gerrit.extensions.annotations.RequiresCapability;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.IdString;
 | 
					import com.google.gerrit.extensions.restapi.IdString;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.RestApiException;
 | 
					import com.google.gerrit.extensions.restapi.RestApiException;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.TopLevelResource;
 | 
					import com.google.gerrit.extensions.restapi.TopLevelResource;
 | 
				
			||||||
@@ -26,7 +27,6 @@ import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			|||||||
import com.google.gerrit.server.group.AddIncludedGroups;
 | 
					import com.google.gerrit.server.group.AddIncludedGroups;
 | 
				
			||||||
import com.google.gerrit.server.group.AddMembers;
 | 
					import com.google.gerrit.server.group.AddMembers;
 | 
				
			||||||
import com.google.gerrit.server.group.CreateGroup;
 | 
					import com.google.gerrit.server.group.CreateGroup;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.group.GroupResource;
 | 
					import com.google.gerrit.server.group.GroupResource;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupsCollection;
 | 
					import com.google.gerrit.server.group.GroupsCollection;
 | 
				
			||||||
import com.google.gerrit.sshd.CommandMetaData;
 | 
					import com.google.gerrit.sshd.CommandMetaData;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,6 +18,7 @@ import static com.google.gerrit.sshd.CommandMetaData.Mode.MASTER_OR_SLAVE;
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import com.google.common.base.MoreObjects;
 | 
					import com.google.common.base.MoreObjects;
 | 
				
			||||||
import com.google.common.base.Strings;
 | 
					import com.google.common.base.Strings;
 | 
				
			||||||
 | 
					import com.google.gerrit.extensions.common.GroupInfo;
 | 
				
			||||||
import com.google.gerrit.extensions.restapi.Url;
 | 
					import com.google.gerrit.extensions.restapi.Url;
 | 
				
			||||||
import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
					import com.google.gerrit.reviewdb.client.AccountGroup;
 | 
				
			||||||
import com.google.gerrit.server.IdentifiedUser;
 | 
					import com.google.gerrit.server.IdentifiedUser;
 | 
				
			||||||
@@ -25,7 +26,6 @@ import com.google.gerrit.server.account.GetGroups;
 | 
				
			|||||||
import com.google.gerrit.server.account.GroupCache;
 | 
					import com.google.gerrit.server.account.GroupCache;
 | 
				
			||||||
import com.google.gerrit.server.account.GroupControl;
 | 
					import com.google.gerrit.server.account.GroupControl;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson;
 | 
					import com.google.gerrit.server.group.GroupJson;
 | 
				
			||||||
import com.google.gerrit.server.group.GroupJson.GroupInfo;
 | 
					 | 
				
			||||||
import com.google.gerrit.server.group.ListGroups;
 | 
					import com.google.gerrit.server.group.ListGroups;
 | 
				
			||||||
import com.google.gerrit.server.ioutil.ColumnFormatter;
 | 
					import com.google.gerrit.server.ioutil.ColumnFormatter;
 | 
				
			||||||
import com.google.gerrit.sshd.CommandMetaData;
 | 
					import com.google.gerrit.sshd.CommandMetaData;
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user