/// <summary> /// Lists all members for a group /// </summary> public static void ListGroupMembers(ListGroupMembersRequest request, Action <ListGroupMembersResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null) { var context = (request == null ? null : request.AuthenticationContext) ?? PlayFabSettings.staticPlayer; PlayFabHttp.MakeApiCall("/Group/ListGroupMembers", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context); }
public void ListGroupMembers(string groupId, Action <ListGroupMembersResponse> callback) { var request = new ListGroupMembersRequest { Group = EntityKeyMaker(groupId) }; PlayFabGroupsAPI.ListGroupMembers(request, callback, (PlayFabError e) => callback(null)); }
/// <summary> /// Lists all members for a group /// </summary> public void ListGroupMembers(ListGroupMembersRequest request, Action <ListGroupMembersResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null) { var context = (request == null ? null : request.AuthenticationContext) ?? authenticationContext; var callSettings = apiSettings ?? PlayFabSettings.staticSettings; if (!context.IsEntityLoggedIn()) { throw new PlayFabException(PlayFabExceptionCode.NotLoggedIn, "Must be logged in to call this method"); } PlayFabHttp.MakeApiCall("/Group/ListGroupMembers", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders, context, callSettings, this); }
/// <summary> /// Lists all members for a group /// </summary> /// <param name="Group">ID of the group to list the members and roles for (Required)</param> public static Task <ListGroupMembersResponse> ListGroupMembers(EntityKey Group, PlayFabAuthenticationContext customAuthContext = null, object customData = null, Dictionary <string, string> extraHeaders = null) { ListGroupMembersRequest request = new ListGroupMembersRequest() { Group = Group, }; var context = GetContext(customAuthContext); return(PlayFabHttp.MakeApiCallAsync <ListGroupMembersResponse>("/Group/ListGroupMembers", request, AuthType.EntityToken, customData, extraHeaders, context)); }
/// <summary>Snippet for ListGroupMembersAsync</summary> public async Task ListGroupMembersAsync_RequestObject() { // Snippet: ListGroupMembersAsync(ListGroupMembersRequest,CallSettings) // Create client GroupServiceClient groupServiceClient = await GroupServiceClient.CreateAsync(); // Initialize request argument(s) ListGroupMembersRequest request = new ListGroupMembersRequest { GroupName = new GroupName("[PROJECT]", "[GROUP]"), }; // Make the request PagedAsyncEnumerable <ListGroupMembersResponse, MonitoredResource> response = groupServiceClient.ListGroupMembersAsync(request); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((MonitoredResource item) => { // Do something with each item Console.WriteLine(item); }); // Or iterate over pages (of server-defined size), performing one RPC per page await response.AsRawResponses().ForEachAsync((ListGroupMembersResponse page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (MonitoredResource item in page) { Console.WriteLine(item); } }); // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required int pageSize = 10; Page <MonitoredResource> singlePage = await response.ReadPageAsync(pageSize); // Do something with the page of items Console.WriteLine($"A page of {pageSize} results (unless it's the final page):"); foreach (MonitoredResource item in singlePage) { Console.WriteLine(item); } // Store the pageToken, for when the next page is required. string nextPageToken = singlePage.NextPageToken; // End snippet }
/// <summary> /// Lists all members for a group /// </summary> public static async Task <PlayFabResult <ListGroupMembersResponse> > ListGroupMembersAsync(ListGroupMembersRequest request, object customData = null, Dictionary <string, string> extraHeaders = null) { if ((request?.AuthenticationContext?.EntityToken ?? PlayFabSettings.staticPlayer.EntityToken) == null) { throw new PlayFabException(PlayFabExceptionCode.EntityTokenNotSet, "Must call GetEntityToken before calling this method"); } var httpResult = await PlayFabHttp.DoPost("/Group/ListGroupMembers", request, "X-EntityToken", PlayFabSettings.staticPlayer.EntityToken, extraHeaders); if (httpResult is PlayFabError) { var error = (PlayFabError)httpResult; PlayFabSettings.GlobalErrorHandler?.Invoke(error); return(new PlayFabResult <ListGroupMembersResponse> { Error = error, CustomData = customData }); } var resultRawJson = (string)httpResult; var resultData = PluginManager.GetPlugin <ISerializerPlugin>(PluginContract.PlayFab_Serializer).DeserializeObject <PlayFabJsonSuccess <ListGroupMembersResponse> >(resultRawJson); var result = resultData.data; return(new PlayFabResult <ListGroupMembersResponse> { Result = result, CustomData = customData }); }
/// <summary> /// Lists all members for a group /// </summary> public static void ListGroupMembers(ListGroupMembersRequest request, Action <ListGroupMembersResponse> resultCallback, Action <PlayFabError> errorCallback, object customData = null, Dictionary <string, string> extraHeaders = null) { PlayFabHttp.MakeApiCall("/Group/ListGroupMembers", request, AuthType.EntityToken, resultCallback, errorCallback, customData, extraHeaders); }
private static async Task SeafClientDemo(Uri host, string user, char[] pw) { try { // if the seafile server uses a self-signed certificate we accept it // for demonstration purposes ServicePointManager.ServerCertificateValidationCallback = (s, cert, chain, errors) => true; // try to connect to the seafile server using the given credentials Console.Write("Connecting..."); var session = await SeafSession.Establish(host, user, pw); Console.WriteLine("OK"); Console.WriteLine(); // ping the server Console.Write("Pinging the server..."); if (await session.Ping()) { Console.WriteLine("OK"); } else { Console.WriteLine("Failed"); } // retrieve user account info var info = await session.CheckAccountInfo(); Console.WriteLine("Account info: "); Console.WriteLine("User name: " + info.Name); Console.WriteLine("Space used: " + MiscUtils.FormatByteSize(info.Usage)); Console.WriteLine("Space total: " + (info.HasUnlimitedSpace ? "unlimited" : MiscUtils.FormatByteSize(info.Quota))); Console.WriteLine(""); // create a test library // Console.Write("Creating library..."); // var newLib = await session.CreateLibrary("TestLib", "123"); // Console.WriteLine("OK"); // groups Console.WriteLine("Groups:"); var groupList = await session.ListGroups(); foreach (var g in groupList) { Console.WriteLine(String.Format("{0:d} {1}", g.Id, g.Name)); } if (groupList.Count > 0) { var group = groupList.First(); //await session.AddGroupMember(group, "*****@*****.**"); //Console.WriteLine("added user to group"); var request = new ListGroupMembersRequest(session.AuthToken, group.Id, 120); var members = await session.SendRequest(request); Console.WriteLine("Group members:"); foreach (var m in members) { Console.WriteLine(" " + m.Name + " " + m.Email); } //await session.RemoveGroupMember(group, "*****@*****.**"); //Console.WriteLine("removed user from group"); //await session.DeleteGroup(group); //Console.WriteLine("deleted group: " + group.Name); //await session.RenameGroup(group, "changed name"); //Console.WriteLine("renamed group"); } else { var group = await session.AddGroup("new group"); Console.WriteLine("added group: " + group.Id + " - " + group.Name); } // default library var defLib = await session.GetDefaultLibrary(); Console.WriteLine("Default library: " + defLib.Name); // retrieve user's libraries & shared libraries var libs = await session.ListLibraries(); libs = libs.Union(await session.ListSharedLibraries()).ToList(); Console.WriteLine("Libraries:"); IList <string[]> lines = new List <string[]>(); lines.Add(new[] { "Modified", "Permission", "Name", "Owner" }); foreach (var lib in libs) { var permission = lib.Permission == SeafPermission.ReadOnly ? "r" : "rw"; lines.Add(new[] { lib.Timestamp.ToString(), permission, lib.Name, lib.Owner }); } Console.WriteLine(MiscUtils.PadElementsInLines(lines, 2)); // list directories recursively var listDirsRequest = new ListDirectoryEntriesRequest(session.AuthToken, defLib.Id, "/", true); var dirs = await session.SendRequest(listDirsRequest); foreach (var d in dirs) { Console.WriteLine(d.Path); } } catch (AggregateException ex) { if (ex.InnerException != null) { throw ex.InnerException; } } catch (SeafException ex) { Console.WriteLine("Failed"); Console.WriteLine("Request failed: " + ex.Message); } }