/// <summary> /// redirigimos a la página con el nodeId de sesión /// </summary> /// <param name="context"></param> /// <param name="session"></param> public void SetSessionState(HttpContext context, IWebSession session) { string url = UrlUtils.InsertSessionId("", (string)session.Auth, context.Request.OriginalRequestUrl); url = UrlUtils.RemoveArgs(url); context.Reply.RedirectTo(url); }
public void OnDisconnect(IWebSession session) { //Console.WriteLine(m_LocalNode.GetName() + " - OnDisconnect: " + session.GetRemoteAddress()); //m_LocalNode.GetLogger().Info("OnClientDisconnect: " + session.GetRemoteAddress()); if (m_Deliverer != null) { m_Deliverer.RemoveClient(session.GetRemoteAddress()); } }
public UserController(IWebSession webSession, ILog log, IDatabase database, IUserRepository repository, IUserManagementFacade managementFacade, ICache cache) : base(webSession, log) { m_session = webSession; m_log = log; m_database = database; m_repository = repository; m_managementFacade = managementFacade; m_cache = cache; }
public StockEventsController(IWebSession webSession, ILog log, IStockEventRepository eventRepository, IMaterialBatchFacade batchFacade, IMaterialBatchRepository batchRepository, AmountProcessor amountProcessor) : base(webSession, log) { m_eventRepository = eventRepository; m_batchFacade = batchFacade; m_batchRepository = batchRepository; m_amountProcessor = amountProcessor; }
public void AddClient(string clientId, IWebSession client) { IWebSession oldOne = null; if (m_Clients.ContainsKey(clientId)) { m_Clients.TryRemove(clientId, out oldOne); } m_Clients.TryAdd(clientId, client); }
public void AddSession(IWebSession session) { lock (sync) { if (!sessions.ContainsKey(session.Auth)) { sessions.Add(session.Auth, session); } // ((HtmlSession)his[auth]).d } }
public static ClaimsIdentity CreateClaimsIdentities(IWebSession userSession) { ClaimsIdentity claimsIdentity = new ClaimsIdentity(); claimsIdentity.AddClaim(new Claim("UserId", userSession.UserId.ToString())); claimsIdentity.AddClaim(new Claim("SessionId", userSession.Id.ToString())); claimsIdentity.AddClaim(new Claim("Username", userSession.Username)); claimsIdentity.AddClaim(new Claim("FirstName", userSession.FirstName)); claimsIdentity.AddClaim(new Claim("LastName", userSession.LastName ?? "")); return(claimsIdentity); }
public VirtualProductsController(IWebSession webSession, ILog log, IVirtualProductRepository virtualProductRepository, IErpRepository erpRepository, ICache cache, IMaterialRepository materialRepository, IVirtualProductFacade virtualProductFacade, IMaterialFacade materialFacade, IUnitConversionHelper conversionHelper, IDatabase database, IMaterialThresholdRepository materialThresholdRepository) : base(webSession, log) { m_virtualProductRepository = virtualProductRepository; m_erpRepository = erpRepository; m_cache = cache; m_materialRepository = materialRepository; m_virtualProductFacade = virtualProductFacade; m_materialFacade = materialFacade; m_conversionHelper = conversionHelper; m_database = database; m_materialThresholdRepository = materialThresholdRepository; }
public IWebSession this[WebAuth auth] { get { IWebSession ret = null; try { ret = sessions[auth]; } catch { } return(ret); } }
public void OnDisconnect(IWebSession session) { //Console.WriteLine(m_LocalNode.GetName() + " - OnDisconnect: " + session.GetRemoteAddress()); if (m_Clients == null) { return; } if (m_Clients != null) { m_Clients.RemoveClient(session.GetRemoteAddress()); } }
public InvoiceFormsController(IWebSession webSession, ILog log, InvoiceFormsQueryingFacade facade, IInvoiceFormsRepository invoiceFormsRepository, IInvoiceFormsGenerationRunner generationRunner, IInvoiceFormRendererFactory formRendererFactory, IDatabase database) : base(webSession, log) { m_log = log; m_facade = facade; m_invoiceFormsRepository = invoiceFormsRepository; m_generationRunner = generationRunner; m_formRendererFactory = formRendererFactory; m_database = database; m_session = webSession; }
public WebSocketSession FindClientSession(string sessionId) { if (String.IsNullOrEmpty(sessionId)) { return(null); } IWebSession session = null; lock (m_ClientSessions) { if (!m_ClientSessions.TryGetValue(sessionId, out session)) { session = null; } } return(session == null ? null : session as WebSocketSession); }
public void OnDisconnect(IWebSession session) { //Console.WriteLine(m_LocalNode.GetName() + " - OnDisconnect: " + session.GetRemoteAddress()); var clientMsg = new { msg = "client_info", client_id = session.GetRemoteAddress(), front_end = m_LocalNode.GetName(), action = "disconnect" }; var server = m_LocalNode.GetPublicServer(); if (server != null && server.IsWorking()) { session.Send(m_LocalNode.GetJsonHelper().ToJsonString(clientMsg)); } }
public static string CreateJwt( IWebSession session, string jwtSecret, int daysValid = 1) { var tokenHandler = new JwtSecurityTokenHandler(); var claims = CreateClaimsIdentities(session); var now = DateTime.UtcNow; // Create JWToken var token = tokenHandler.CreateJwtSecurityToken(subject: claims, notBefore: now, expires: now.AddDays(daysValid), signingCredentials: new SigningCredentials( new SymmetricSecurityKey( Convert.FromBase64String(jwtSecret)), SecurityAlgorithms.HmacSha256Signature)); return(tokenHandler.WriteToken(token)); }
public PackingController( IWebSession webSession, ILog log, IPurchaseOrderRepository orderRepository, IShipmentProvider shipmentProvider, IOrdersFacade ordersFacade, IKitProductRepository kitProductRepository, IErpClientFactory erpClientFactory, IMaterialBatchFacade batchFacade, IDatabase database, IVirtualProductFacade virtualProductFacade, OrdersSystemConfig config) : base(webSession, log) { m_orderRepository = orderRepository; m_shipmentProvider = shipmentProvider; m_ordersFacade = ordersFacade; m_kitProductRepository = kitProductRepository; m_erpClientFactory = erpClientFactory; m_batchFacade = batchFacade; m_database = database; m_virtualProductFacade = virtualProductFacade; m_config = config; }
public void OnConnect(IWebSession session) { //Console.WriteLine(m_LocalNode.GetName() + " - OnConnect: " + session.GetRemoteAddress()); //System.Diagnostics.Debugger.Break(); //m_LocalNode.GetLogger().Info("OnClientConnect: " + session.GetRequestPath()); var clientMsg = new { msg = "client_info", client_id = session.GetRemoteAddress(), front_end = m_LocalNode.GetName(), action = "connect" }; var server = m_LocalNode.GetPublicServer(); if (server != null && server.IsWorking()) { session.Send(m_LocalNode.GetJsonHelper().ToJsonString(clientMsg)); } }
public ShipmentController(IWebSession webSession, ILog log, IOrdersFacade ordersFacade, IShipmentProvider shipmentProvider) : base(webSession, log) { m_ordersFacade = ordersFacade; m_shipmentProvider = shipmentProvider; }
private async void Deliver() { Dictionary <string, List <dynamic> > betResults = new Dictionary <string, List <dynamic> >(); var dbhelper = m_Node.GetDataHelper(); using (var cnn = dbhelper.OpenDatabase(m_MainCache)) { using (var cmd = cnn.CreateCommand()) { dbhelper.AddParam(cmd, "@front_end", m_ServerName); cmd.CommandText = " update tbl_bet_record " + " set bet_state = 2 " // that means we are going to send them + " where front_end = @front_end and bet_state = 1 "; cmd.ExecuteNonQuery(); } using (var cmd = cnn.CreateCommand()) { dbhelper.AddParam(cmd, "@front_end", m_ServerName); // select records which are ready to be sent cmd.CommandText = " select * from tbl_bet_record " + " where front_end = @front_end and bet_state = 2 "; using (var reader = cmd.ExecuteReader()) { while (reader.Read()) { var item = new { client = reader["client_id"].ToString(), server = reader["server_code"].ToString(), table = reader["table_code"].ToString(), shoe = reader["shoe_code"].ToString(), round = Convert.ToInt32(reader["round_number"].ToString()), pool = Convert.ToInt32(reader["bet_pool"].ToString()), bet = Convert.ToDecimal(reader["bet_amount"].ToString()), payout = Convert.ToDecimal(reader["pay_amount"].ToString()), result = Convert.ToInt32(reader["game_result"].ToString()) }; if (betResults.ContainsKey(item.client)) { var list = betResults[item.client]; list.Add(item); } else { var list = new List <dynamic>(); list.Add(item); betResults.Add(item.client, list); } } } } using (var cmd = cnn.CreateCommand()) { dbhelper.AddParam(cmd, "@front_end", m_ServerName); // remove them cmd.CommandText = " delete from tbl_bet_record " + " where front_end = @front_end and bet_state = 2 "; cmd.ExecuteNonQuery(); } } foreach (var item in betResults) { try { var list = item.Value; var clientMsg = new { msg = "bet_result", results = list }; IWebSession client = null; if (m_Clients.TryGetValue(item.Key, out client)) { await client.Send(m_Node.GetJsonHelper().ToJsonString(clientMsg)); } } catch (Exception ex) { Console.WriteLine("FES Send-Bet-Result Error - " + ex.ToString()); } } if (betResults.Count > 0) { m_Logger.Info("Sent bet results - " + betResults.Count); } }
protected AutoControllerBase(IWebSession webSession, ILog log) : base(webSession, log) { }
public void AddClient(string clientId, string merchantCode, string currencyCode, string playerId, IWebSession session) { ClientInfo newOne = new ClientInfo(); newOne.ClientId = clientId; newOne.PlayerId = playerId; newOne.MerchantCode = merchantCode; newOne.CurrencyCode = currencyCode; newOne.Session = session; ClientInfo oldOne = null; lock (m_Clients) { if (m_Clients.ContainsKey(clientId)) { oldOne = m_Clients[clientId]; m_Clients.Remove(clientId); } if (session != null) { m_Clients.Add(clientId, newOne); } } if (oldOne != null) { oldOne.Session.CloseConnection(); } }
public FixedCostTypeController(IWebSession webSession, ILog log, IFixedCostRepository repository) : base(webSession, log) { m_repository = repository; }
public PackingSettingsController(IWebSession webSession, ILog log, IVirtualProductRepository vpRepo) : base(webSession, log) { m_vpRepo = vpRepo; }
public CommonReportsController(IWebSession webSession, ILog log, IStockReportLoader stockReportLoader) : base(webSession, log) { m_stockReportLoader = stockReportLoader; }
public SuppliersAutoController(IWebSession webSession, ILog log, ISupplierRepository supplierRepository) : base(webSession, log) { m_supplierRepository = supplierRepository; }
public InvoiceFilesController(IWebSession webSession, ILog log, InvoiceModelFactory invoiceModelFactory, IInvoiceFileProcessor invoiceFileProcessor) : base(webSession, log) { m_invoiceModelFactory = invoiceModelFactory; m_invoiceFileProcessor = invoiceFileProcessor; }
protected ElsaControllerBase(IWebSession webSession, ILog log) { WebSession = webSession; m_log = log; }
public string CreateJwt(IWebSession session) { return(JwtHelper.CreateJwt(session, _jwtSecret, 1)); }
public void OnConnect(IWebSession session) { //Console.WriteLine(m_LocalNode.GetName() + " - OnConnect: " + session.GetRemoteAddress()); //m_LocalNode.GetLogger().Info("OnClientConnect: " + session.GetRequestPath()); if (m_Clients == null) { session.CloseConnection(); return; } var count = 0; var playerId = ""; var merchantCode = ""; var currencyCode = ""; var sessionId = ""; var parts = session.GetRequestPath().Split('/'); foreach (var part in parts) { if (part.Length <= 0) { continue; } count++; if (count == 1) { merchantCode = part; } if (count == 2) { currencyCode = part; } if (count == 3) { playerId = part; } if (count == 4) { sessionId = part; } if (count > 4) { break; } } var okay = false; var clientToken = ""; if (!String.IsNullOrEmpty(merchantCode) && !String.IsNullOrEmpty(currencyCode) && !String.IsNullOrEmpty(playerId) && !String.IsNullOrEmpty(sessionId)) { var dbhelper = m_LocalNode.GetDataHelper(); using (var cnn = dbhelper.OpenDatabase(m_MainCache)) { using (var cmd = cnn.CreateCommand()) { dbhelper.AddParam(cmd, "@session_id", sessionId); dbhelper.AddParam(cmd, "@merchant_code", merchantCode); dbhelper.AddParam(cmd, "@currency_code", currencyCode); dbhelper.AddParam(cmd, "@player_id", playerId); cmd.CommandText = " select * from tbl_player_session " + " where merchant_code = @merchant_code " + " and currency_code = @currency_code " + " and player_id = @player_id " + " and session_id = @session_id " ; using (var reader = cmd.ExecuteReader()) { if (reader.Read()) { okay = true; } } } if (okay) { clientToken = Guid.NewGuid().ToString(); using (var cmd = cnn.CreateCommand()) { dbhelper.AddParam(cmd, "@client_token", clientToken); dbhelper.AddParam(cmd, "@session_id", sessionId); dbhelper.AddParam(cmd, "@merchant_code", merchantCode); dbhelper.AddParam(cmd, "@currency_code", currencyCode); dbhelper.AddParam(cmd, "@player_id", playerId); cmd.CommandText = " update tbl_player_session " + " set client_token = @client_token, update_time = NOW() " + " where merchant_code = @merchant_code " + " and currency_code = @currency_code " + " and player_id = @player_id " + " and session_id = @session_id " ; okay = cmd.ExecuteNonQuery() > 0; } } } } //if (okay) m_LocalNode.GetLogger().Info("Client session is ok: " + sessionId); //else m_LocalNode.GetLogger().Info("Invalid session: " + sessionId); if (okay && m_Clients != null) { m_Clients.AddClient(session.GetRemoteAddress(), merchantCode, currencyCode, playerId, session); var clientMsg = new { msg = "client_info", client_id = session.GetRemoteAddress(), front_end = m_LocalNode.GetName(), client_token = clientToken, action = "connect" }; var server = m_LocalNode.GetPublicServer(); if (server != null && server.IsWorking()) { session.Send(m_LocalNode.GetJsonHelper().ToJsonString(clientMsg)); } } else { session.CloseConnection(); } }
public RecipientListsSettingsController(IWebSession webSession, ILog log, IRecipientListsRepository repository) : base(webSession, log) { m_repository = repository; }
public SaleEventsController(IWebSession webSession, ILog log, ISaleEventRepository saleEventRepository, EventModelProcessor eventModelProcessor) : base(webSession, log) { m_saleEventRepository = saleEventRepository; m_eventModelProcessor = eventModelProcessor; }