コード例 #1
0
        public static Invocation ToModel(this InvocationState self, UrlHelper url)
        {
            return(new Invocation()
            {
                Id = self.Id,
                Job = self.Job,
                JobInstanceName = self.JobInstanceName,
                Source = self.Source,

                Payload = self.Payload,

                Status = self.Status,
                Result = self.Result,
                ResultMessage = self.ResultMessage,
                LastUpdatedBy = self.LastUpdatedBy,
                LogUrl = url == null ? self.LogUrl : url.RouteUri(Routes.GetInvocationLog, new {
                    id = self.Id.ToString("N").ToLowerInvariant()
                }).AbsoluteUri,

                DequeueCount = self.DequeueCount,
                IsContinuation = self.IsContinuation,

                LastDequeuedAt = self.LastDequeuedAt,
                LastSuspendedAt = self.LastSuspendedAt,
                CompletedAt = self.CompletedAt,
                QueuedAt = self.QueuedAt,
                NextVisibleAt = self.NextVisibleAt,
                UpdatedAt = self.UpdatedAt
            });
        }
コード例 #2
0
ファイル: ApplicationEngine.cs プロジェクト: diafasenong/neo
        internal void CallFromNativeContract(Action onComplete, UInt160 hash, string method, params StackItem[] args)
        {
            InvocationState state = GetInvocationState(CurrentContext);

            state.ReturnType = typeof(void);
            state.Callback   = onComplete;
            CallContractInternal(hash, method, new VMArray(ReferenceCounter, args), CallFlags.All, ReturnTypeConvention.EnsureIsEmpty);
        }
コード例 #3
0
        internal void CallFromNativeContract <T>(Action <T> onComplete, UInt160 hash, string method, params StackItem[] args)
        {
            InvocationState state = GetInvocationState(CurrentContext);

            state.ReturnType = typeof(T);
            state.Callback   = onComplete;
            CallContract(hash, method, new VMArray(ReferenceCounter, args));
        }
コード例 #4
0
        public BlobInvocationLogCapture(InvocationState invocation, CloudBlobContainer logContainer)
            : base(invocation)
        {
            LogContainer = logContainer;

            _tempDirectory = Path.Combine(Path.GetTempPath(), "InvocationLogs");
            _blobName      = invocation.Id.ToString("N") + ".json";
        }
コード例 #5
0
 private InvocationState GetInvocationState(ExecutionContext context)
 {
     if (!invocationStates.TryGetValue(context, out InvocationState state))
     {
         state = new InvocationState();
         invocationStates.Add(context, state);
     }
     return(state);
 }
コード例 #6
0
        public InvocationLogCapture(InvocationState invocation)
        {
            Invocation = invocation;

            // Set up an event stream
            _listener    = new ObservableEventListener();
            _eventStream = from events in _listener
                           where InvocationContext.GetCurrentInvocationId() == Invocation.Id
                           select events;
        }
コード例 #7
0
 protected internal override Task Dispatch(InvocationState invocation, InvocationLogCapture capture, CancellationToken cancelToken)
 {
     LastDispatched = invocation;
     if (_skipDispatch)
     {
         return(DispatchTCS.Task);
     }
     else
     {
         return(base.Dispatch(invocation, capture, cancelToken));
     }
 }
コード例 #8
0
 protected internal override Task Dispatch(InvocationState invocation, InvocationLogCapture capture, CancellationToken cancelToken)
 {
     LastDispatched = invocation;
     if (_skipDispatch)
     {
         return DispatchTCS.Task;
     }
     else
     {
         return base.Dispatch(invocation, capture, cancelToken);
     }
 }
コード例 #9
0
 protected internal override Task Dispatch(InvocationState invocation, CancellationToken cancelToken)
 {
     return Dispatch(invocation, new InvocationLogCapture(invocation), cancelToken);
 }
コード例 #10
0
 public void Aborted(InvocationState invocation)
 {
     Aborted(invocation.Id);
 }
コード例 #11
0
 public void Aborted(InvocationState invocation) { Aborted(invocation.Id); }
コード例 #12
0
 protected internal override Task Dispatch(InvocationState invocation, CancellationToken cancelToken)
 {
     return(Dispatch(invocation, new InvocationLogCapture(invocation), cancelToken));
 }
コード例 #13
0
 public void Cancelled(InvocationState invocation)
 {
     Cancelled(invocation.Id, invocation.Job, invocation.UpdatedAt.ToString("O"), invocation.ResultMessage);
 }
コード例 #14
0
 public void InvocationTookTooLong(InvocationState invocation)
 {
     InvocationTookTooLong(invocation.Id, invocation.Job, invocation.QueuedAt.ToString("O"), invocation.NextVisibleAt.ToString("O"));
 }
コード例 #15
0
 public void Cancelled(InvocationState invocation) { Cancelled(invocation.Id, invocation.Job, invocation.UpdatedAt.ToString("O"), invocation.ResultMessage); }
コード例 #16
0
 public void ScheduledRepeat(InvocationState original, InvocationState repeat, TimeSpan period) { ScheduledRepeat(original.Id, repeat.Id, repeat.Job, period.ToString()); }
コード例 #17
0
 public static Invocation ToModel(this InvocationState self)
 {
     return(ToModel(self, null));
 }
コード例 #18
0
 public void InvocationTookTooLong(InvocationState invocation)
 {
     InvocationTookTooLong(invocation.Id, invocation.Job, invocation.QueuedAt.ToString("O"), invocation.NextVisibleAt.ToString("O"));
 }
コード例 #19
0
 public void ScheduledRepeat(InvocationState original, InvocationState repeat, TimeSpan period)
 {
     ScheduledRepeat(original.Id, repeat.Id, repeat.Job, period.ToString());
 }