public bool TryRequestDecision(string contextJson, ActionFlags flags, out DecisionResponse response, ApiStatus apiStatus)
        {
            response = new DecisionResponse();

            GC.KeepAlive(this);
            return(this.TryRequestDecision(contextJson, flags, response, apiStatus));
        }
        public bool TryRequestDecision(string contextJson, DecisionResponse response, ApiStatus apiStatus = null)
        {
            int result = LiveModelRequestDecision(this.DangerousGetHandle(), contextJson, response.DangerousGetHandle(), apiStatus.ToNativeHandleOrNullptrDangerous());

            GC.KeepAlive(this);
            return(result == NativeMethods.SuccessStatus);
        }
            private static New <DecisionResponseEnumerator> BindConstructorArguments(DecisionResponse decisionResponse)
            {
                return(new New <DecisionResponseEnumerator>(() =>
                {
                    IntPtr result = CreateDecisionEnumeratorAdapter(decisionResponse.DangerousGetHandle());

                    GC.KeepAlive(decisionResponse); // Extend the lifetime of this handle because the delegate (and its data) is not stored on the heap.
                    return result;
                }));
            }
        public DecisionResponse RequestDecision(string contextJson, ActionFlags flags)
        {
            DecisionResponse result = new DecisionResponse();

            using (ApiStatus apiStatus = new ApiStatus())
                if (!this.TryRequestDecision(contextJson, flags, result, apiStatus))
                {
                    throw new RLException(apiStatus);
                }

            return(result);
        }
        public bool TryRequestDecision(string contextJson, ActionFlags flags, DecisionResponse response, ApiStatus apiStatus)
        {
            int result = LiveModelRequestDecisionWithFlags(this.DangerousGetHandle(), contextJson, (uint)flags, response.DangerousGetHandle(), apiStatus.ToNativeHandleOrNullptrDangerous());

            return(result == NativeMethods.SuccessStatus);
        }
 public bool TryRequestDecision(string contextJson, out DecisionResponse response, ApiStatus apiStatus = null)
 {
     response = new DecisionResponse();
     return(this.TryRequestDecision(contextJson, response, apiStatus));
 }
 public DecisionResponseEnumerator(DecisionResponse decisionResponse) : base(BindConstructorArguments(decisionResponse), new Delete <DecisionResponseEnumerator>(DeleteDecisionEnumeratorAdapter))
 {
 }