Пример #1
0
        public void OperationStorage_Return_Instance_Of_IOperationCreator_By_OparationName()
        {
            var creatorName = "fake_operation4";
            var fakeCreator = GetFakeCreator(creatorName);

            _storage.AddOperationCreator(fakeCreator);
            var creator = _storage.GetCreatorByOperationName(creatorName);

            Assert.IsNotNull(creator);
            Assert.IsInstanceOfType(creator, typeof(IOperationCreator));
        }
Пример #2
0
        public async Task <JsonResult> MakeOperation(string operationName, int arg1, int arg2)
        {
            var operationCreator = _operationService.GetCreatorByOperationName(operationName);

            if (operationCreator == null)
            {
                return(Json(new { result = "" }));
            }
            var operation = operationCreator.CreateOperation();
            var result    = operation.Execute(arg1, arg2);
            var storeKey  = await _storage.SaveResultToStorage(result);

            if (_logger != null)
            {
                await _logger.WriteOperationLogAsync(OperationLogParameter.Create(operation, arg1, arg2, result, HttpContext?.Session?.SessionID));
            }
            return(Json(new { StoreResultKey = storeKey }));
        }