Ejemplo n.º 1
0
        public override Task <SessionPauses_Reply> GetSessionPausesBySession(SessionId_Request request, ServerCallContext context)
        {
            SessionPauses_Reply sessionPauses_Reply = new SessionPauses_Reply(); //make Projects_Reply equal to a new Projects_Reply

            sessionPauses_Reply.Error = "unknown error";                         //set error to unknown error
            MySqlConnection connection = null;

            try
            {
                connection = CreateDBConnection();
                var cmd = connection.CreateCommand();                                                        //create command called cmd
                cmd.CommandText = $"SELECT * FROM trackerdb.session_pause WHERE `sessionId` = {request.Id}"; //fill cmd text
                var reader = cmd.ExecuteReader();                                                            //execute cmd
                FillSessionPauses(sessionPauses_Reply, reader);                                              //calls func FillProjects
            }
            catch (Exception ex)                                                                             //catch exception
            {
                sessionPauses_Reply.Error = ex.Message;                                                      //if error
            }
            finally                                                                                          //after everything above is done
            {
                if (connection != null)                                                                      //if connection is not null
                {
                    if (connection.State != ConnectionState.Closed)                                          //if connection is not closed
                    {
                        connection.Close();                                                                  //close connection
                    }
                    connection.Dispose();                                                                    //dipose of connection
                }
            }
            return(Task.FromResult(sessionPauses_Reply)); //return projects
        }
Ejemplo n.º 2
0
        public void GetSessionPausesBySession()
        {
            //Arrange
            var connection = CreateConnection();
            //Act
            SessionPauses_Reply sessionPauses_Reply = connection.GetSessionPausesBySession(new SessionId_Request {
                Id = 176                                                                                             /*SESSION ID HERE*/
            });

            //Assert
            Assert.IsNotNull(sessionPauses_Reply.SessionPauses);
        }
Ejemplo n.º 3
0
 private static void FillSessionPauses(SessionPauses_Reply sessionPauses_Reply, MySqlDataReader reader)
 {
     while (reader.Read())
     {
         var sessionPause = new SessionPause()
         {
             SessionPauseId = Convert.ToInt32(reader["session_pauseId"]),
             SessionId      = Convert.ToInt32(reader["sessionId"]),
             Pause          = Convert.ToString(reader["pause"]),
             Resume         = Convert.ToString(reader["resume"])
         };
         sessionPauses_Reply.SessionPauses.Add(sessionPause);
     }
     sessionPauses_Reply.Error = "";
 }