コード例 #1
0
        internal static TurnBasedMatch ToTurnBasedMatch(AndroidJavaObject turnBasedMatch)
        {
            if (turnBasedMatch == null)
            {
                return(null);
            }

            string matchId = turnBasedMatch.Call <string>("getMatchId");

            byte[]             data       = turnBasedMatch.Call <byte[]>("getData");
            bool               canRematch = turnBasedMatch.Call <bool>("canRematch");
            uint               availableAutomatchSlots = (uint)turnBasedMatch.Call <int>("getAvailableAutoMatchSlots");
            string             selfParticipantId       = turnBasedMatch.Call <string>("getCreatorId");
            List <Participant> participants            = ToParticipantList(turnBasedMatch);
            string             pendingParticipantId    = turnBasedMatch.Call <string>("getPendingParticipantId");

            TurnBasedMatch.MatchStatus     turnStatus  = ToMatchStatus(turnBasedMatch.Call <int>("getStatus"));
            TurnBasedMatch.MatchTurnStatus matchStatus =
                AndroidJavaConverter.ToMatchTurnStatus(turnBasedMatch.Call <int>("getTurnStatus"));
            uint     variant        = (uint)turnBasedMatch.Call <int>("getVariant");
            uint     version        = (uint)turnBasedMatch.Call <int>("getVersion");
            DateTime creationTime   = AndroidJavaConverter.ToDateTime(turnBasedMatch.Call <long>("getCreationTimestamp"));
            DateTime lastUpdateTime =
                AndroidJavaConverter.ToDateTime(turnBasedMatch.Call <long>("getLastUpdatedTimestamp"));

            return(new TurnBasedMatch(matchId, data, canRematch, selfParticipantId, participants,
                                      availableAutomatchSlots, pendingParticipantId, matchStatus, turnStatus, variant, version, creationTime,
                                      lastUpdateTime));
        }