Beispiel #1
0
 /// <summary>
 /// Returns a request to ping a session opened by a specific user to keep it alive.
 /// </summary>
 /// <param name="status">The status to set the session status to.</param>
 /// <param name="username">The user name of the session owner.</param>
 /// <param name="user_token">The user token of the session owner.</param>
 public static GameJoltRequest <GameJoltResponse> Ping(SessionStatus status, string username, string user_token)
 => new GameJoltRequest <GameJoltResponse>("sessions/ping",
                                           new Dictionary <string, string>()
 {
     { nameof(status), status.ToString().ToLowerInvariant() },
     { nameof(username), username },
     { nameof(user_token), user_token }
 });
Beispiel #2
0
		public static void Ping(SessionStatus status = SessionStatus.Active, Action<bool> callback = null)
		{
			var parameters = new Dictionary<string, string>();
			parameters.Add("status", status.ToString().ToLower());

			Core.Request.Get(Constants.API_SESSIONS_PING, null, (Core.Response response) => {
				if (callback != null)
				{
					callback(response.success);
				}
			}, true, Core.ResponseFormat.Json);
		}
Beispiel #3
0
        /// <summary>
        /// Ping (i.e. keep alive) a session (on the GameJolt).
        /// </summary>
        /// <param name="status">The <see cref="SessionStatus"/> to set the session to.</param>
        /// <param name="callback">A callback function accepting a single parameter, a boolean indicating success.</param>
        public static void Ping(SessionStatus status = SessionStatus.Active, Action <bool> callback = null)
        {
            var parameters = new Dictionary <string, string>();

            parameters.Add("status", status.ToString().ToLower());

            Core.Request.Get(Constants.API_SESSIONS_PING, null, (Core.Response response) => {
                if (callback != null)
                {
                    callback(response.success);
                }
            }, true, Core.ResponseFormat.Json);
        }
Beispiel #4
0
        /// <summary>
        /// Ping (i.e. keep alive) a session (on the GameJolt).
        /// </summary>
        /// <param name="status">The <see cref="SessionStatus"/> to set the session to.</param>
        /// <param name="callback">A callback function accepting a single parameter, a boolean indicating success.</param>
        public static void Ping(SessionStatus status = SessionStatus.Active, Action <bool> callback = null)
        {
            var parameters = new Dictionary <string, string> {
                { "status", status.ToString().ToLower() }
            };

            Core.Request.Get(Constants.ApiSessionsPing, parameters, response => {
                if (callback != null)
                {
                    callback(response.Success);
                }
            });
        }
Beispiel #5
0
        public void UpdateStatus(SessionStatus status)
        {
            if (Status == status)
            {
                return;
            }

            Status = status;

            Log("Session - " + status.ToString());

            if (RudpControl.SessionUpdate != null)
            {
                RudpControl.SessionUpdate.Invoke(this);
            }
        }
Beispiel #6
0
        public void UpdateTestStatus_ShouldUpdateSessionStatus(SessionStatus sessionStatus)
        {
            // Arrange
            const string baseAddress  = "http://some/address";
            var          sessionId    = Guid.NewGuid().ToString();
            const string errorMessage = "Something bad happened!";
            var          client       = Substitute.For <IHttpClient>();

            _clientFactory.Create(baseAddress).Returns(client);
            _configurationProvider.BrowserStackApiUrl.Returns(baseAddress);


            // Act
            _sut.UpdateTestStatus(sessionId, sessionStatus, errorMessage);

            // Assert

            client.Received()
            .PutAsJsonAsync($"sessions/{sessionId}.json",
                            Arg.Is <SessionUpdate>(s => s.Status == sessionStatus.ToString().ToLower() && s.Reason == errorMessage));
        }
Beispiel #7
0
 public static RequestParameter CreateStatus(SessionStatus value)
 {
     return(new RequestParameter(StatusKey, value.ToString().ToLower()));
 }
Beispiel #8
0
 public SessionUpdate(SessionStatus sessionStatus, string reason)
 {
     Status = sessionStatus.ToString().ToLower();
     Reason = reason;
 }