Exemple #1
0
 public void Stop()
 {
     m_logger.InfoFormat("Stopping service");
     PluginDriver.Stopping();
     DetachAbstractionsLibraryLogging();
     m_server.Stop();
 }
Exemple #2
0
 public void Start()
 {
     m_logger.InfoFormat("Starting service");
     HookUpAbstractionsLibraryLogging();
     m_server.Start();
     PluginDriver.Starting();
 }
Exemple #3
0
        private LoginResponseMessage HandleLoginRequest(LoginRequestMessage msg)
        {
            try
            {
                PluginDriver sessionDriver = new PluginDriver();

                // Remove white space around username
                if (string.IsNullOrEmpty(msg.Username))
                {
                    sessionDriver.UserInformation.Username = msg.Username;
                }
                else
                {
                    sessionDriver.UserInformation.Username = msg.Username.Trim();
                }

                sessionDriver.UserInformation.Password = msg.Password;
                sessionDriver.LogonInformation.Reason  = msg.Reason.ToString();

                m_logger.DebugFormat("Processing LoginRequest for: {0} in session: {1} reason: {2}",
                                     sessionDriver.UserInformation.Username, msg.Session, msg.Reason);
                BooleanResult result = sessionDriver.PerformLoginProcess();

                if (msg.Reason == LoginRequestMessage.LoginReason.Login)
                {
                    lock (m_sessionPropertyCache)
                    {
                        m_sessionPropertyCache.Add(msg.Session, sessionDriver.SessionProperties);
                    }
                }

                return(new LoginResponseMessage()
                {
                    Result = result.Success,
                    Message = result.Message,
                    Username = sessionDriver.UserInformation.Username,
                    Domain = sessionDriver.UserInformation.Domain,
                    Password = sessionDriver.UserInformation.Password
                });
            }
            catch (Exception e)
            {
                m_logger.ErrorFormat("Internal error, unexpected exception while handling login request: {0}", e);
                return(new LoginResponseMessage()
                {
                    Result = false, Message = "Internal error"
                });
            }
        }