Repository URL to install this package:
Version:
2025.1.5 ▾
|
/*
* Copyright 2016 Game Server Services, Inc. or its affiliates. All Rights
* Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* or in the "license" file accompanying this file. This file 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.
*
* deny overwrite
*/
// ReSharper disable RedundantNameQualifier
// ReSharper disable RedundantUsingDirective
// ReSharper disable CheckNamespace
// ReSharper disable PartialTypeWithSinglePart
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedAutoPropertyAccessor.Global
// ReSharper disable UseObjectOrCollectionInitializer
// ReSharper disable ArrangeThisQualifier
// ReSharper disable NotAccessedField.Local
#pragma warning disable 1998
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Gs2.Core;
using Gs2.Core.Model;
using Gs2.Core.Domain;
using Gs2.Core.Util;
using Gs2.Gs2Auth.Model;
using Gs2.Util.LitJson;
using UnityEngine.Scripting;
namespace Gs2.Unity.Gs2Guild.Domain.Iterator
{
public class EzListGuildsIterator : Gs2Iterator<Gs2.Unity.Gs2Guild.Model.EzGuild>
{
private Gs2Iterator<Gs2.Gs2Guild.Model.Guild> _it;
private readonly Gs2.Gs2Guild.Domain.Model.UserAccessTokenDomain _domain;
private readonly Gs2.Unity.Util.IGameSession _gameSession;
private readonly Gs2.Unity.Util.Gs2Connection _connection;
private readonly string _guildModelName;
private readonly string? _displayName;
private readonly int[] _attributes1;
private readonly int[] _attributes2;
private readonly int[] _attributes3;
private readonly int[] _attributes4;
private readonly int[] _attributes5;
private readonly string[] _joinPolicies;
private readonly bool? _includeFullMembersGuild;
public EzListGuildsIterator(
Gs2.Gs2Guild.Domain.Model.UserAccessTokenDomain domain,
Gs2.Unity.Util.IGameSession gameSession,
Gs2.Unity.Util.Gs2Connection connection,
string guildModelName,
string? displayName = null,
int[]? attributes1 = null,
int[]? attributes2 = null,
int[]? attributes3 = null,
int[]? attributes4 = null,
int[]? attributes5 = null,
string[]? joinPolicies = null,
bool? includeFullMembersGuild = null
)
{
_domain = domain;
_gameSession = gameSession;
_connection = connection;
_guildModelName = guildModelName;
_displayName = displayName;
_attributes1 = attributes1;
_attributes2 = attributes2;
_attributes3 = attributes3;
_attributes4 = attributes4;
_attributes5 = attributes5;
_joinPolicies = joinPolicies;
_includeFullMembersGuild = includeFullMembersGuild;
_it = _domain.SearchGuilds(
guildModelName,
displayName,
attributes1,
attributes2,
attributes3,
attributes4,
attributes5,
joinPolicies,
includeFullMembersGuild
);
}
public override bool HasNext()
{
return _it.HasNext();
}
protected override IEnumerator Next(Action<AsyncResult<Gs2.Unity.Gs2Guild.Model.EzGuild>> callback)
{
yield return _connection.RunIterator(
_gameSession,
_it,
() =>
{
return _it = _domain.SearchGuilds(
this._guildModelName,
this._displayName,
this._attributes1,
this._attributes2,
this._attributes3,
this._attributes4,
this._attributes5,
this._joinPolicies,
this._includeFullMembersGuild
);
}
);
callback.Invoke(
new AsyncResult<Gs2.Unity.Gs2Guild.Model.EzGuild>(
_it.Current == null ? null : Gs2.Unity.Gs2Guild.Model.EzGuild.FromModel(_it.Current),
_it.Error
)
);
}
}
}