public IAuthenticator?SelectAuthenticator(IOperationRequest request) { if (request == null) { throw new ArgumentNullException(nameof(request)); } return(request.Authenticator ?? _securitySchemeSetRegistry.SelectAuthenticator(request.GetType())); }
public static string ToStr(this IOperationRequest info, bool isForParent = false) { StringBuilder builder = new StringBuilder(); if (info == null) { builder.AppendLine(string.Format("IOperationRequest=null")); } else { builder.AppendLine(string.Format("IOperationRequest.OperationCode={0}", info.OperationCode)); builder.AppendLine(string.Format("IOperationRequest.WebFlags={0}", info.WebFlags)); builder.AppendLine(info.Parameters.ToStr <byte, object>("IOperationRequest.Parameters")); if (!isForParent) { if (info is IJoinGameRequest) { ToStr((IJoinGameRequest)info, true); } if (info is ILeaveGameRequest) { ToStr((ILeaveGameRequest)info, true); } if (info is IRaiseEventRequest) { ToStr((IRaiseEventRequest)info, true); } if (info is ISetPropertiesRequest) { ToStr((ISetPropertiesRequest)info, true); } if (info is ICloseRequest) { ToStr((ICloseRequest)info, true); } } } return(builder.ToString()); }
internal static OperationEntity Create(IOperationRequest request, string txHash) { return(new OperationEntity { Id = request.Id, CustomerId = request.CustomerId, MasterWalletAddress = request.MasterWalletAddress, Nonce = request.Nonce, Timestamp = DateTime.UtcNow, CreatedAt = request.CreatedAt, Type = request.Type, // Operations can be created only in Accepted state Status = OperationStatus.Accepted, // Since operation is in Accepted state the transaction hash is required TransactionHash = txHash, ContextJson = request.ContextJson }); }
public void RegisterOperation(string trackId, IOperationRequest request, IOperationResponse response, DateTime date) { var journalFound = _journal.TryGetValue(trackId, out var journalOperations); if (!journalFound) { journalOperations = new List <JournalOperation>(); } var calculation = $"{request.GetFormatedRequest()} = {response.GetFormatedResponse()}"; var operation = new JournalOperation { Operation = request.GetOperationName(), Calculation = calculation, Date = date }; journalOperations.Add(operation); _journal.TryAdd(trackId, journalOperations); }
public Operation(RedisSocket socket, IOperationRequest request, IOperationResponse <T> response) { this.socket = socket; this.request = request; this.response = response; }
public OperationAction(IOperationRequest <T> operationRequest, IOperationResponse <U> operationResponse, IOperationContext <V> operationContext) { this.operationRequest = operationRequest; this.operationResponse = operationResponse; this.operationContext = operationContext; }