Ejemplo n.º 1
0
        private void ProcessResult <T>(ExecutionResponse <T> result, KieCommandTypeEnum commandType)
        {
            if (typeof(T) != typeof(object))
            {
                try
                {
                    var command    = Commands.FirstOrDefault(c => c.Command.CommandType == commandType);
                    var identifier = command?.Command as ICommandOutIdentifier;
                    var outObject  = result.Result?.ExecutionResults.Results.SingleOrDefault(e => e.Key == identifier?.OutIdentifier);

                    if (outObject != null)
                    {
                        var item  = (JObject)outObject.Value.Value;
                        var first = item.First;

                        if (first is JProperty)
                        {
                            var prop          = first as JProperty;
                            var commandObject = command?.Command as ICommandObject;
                            var v             = prop.Name.Equals(commandObject?.CommandObject);
                            if (true)
                            {
                                result.SmartSingleResponse = JsonConvert.DeserializeObject <T>(prop.Value.ToString(), new UnixTimestampConverter());
                            }
                        }
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
            }
        }
Ejemplo n.º 2
0
        private async Task <ExecutionResponse <T> > ExecuteAsync <T>(string containerName, KieCommandTypeEnum commandType)
        {
            var startDate = DateTime.Now;

            ExecutionResponse <T> result = await ExecuteCall <T>(containerName);

            ProcessResult(result, commandType);

            var span = DateTime.Now - startDate;

            result.ElapsedTime = (int)span.TotalMilliseconds;

            return(result);
        }