Exemple #1
0
        public OkHeyResponse(IMethodBinder methodBinder, IScheduleType scheduleType, IHttpReturnType returnType)
        {
            _methodBinder = methodBinder;
            _scheduleType = scheduleType;
            _returnType   = returnType;

            _log = LogManager.GetLogger(GetType());
        }
Exemple #2
0
        public IHeyResponse Make(IScheduleType prototype, IHttpReturnType returnType)
        {
            HeyRememberDto         heyRemember   = _methodBinder.CreateDeferredExecution().HeyRemember;
            BinderCanCallTheMethod binderCanCall = new BinderCanCallTheMethod(_methodBinder);

            if (binderCanCall.Can)
            {
                return(new OkHeyResponse(_methodBinder, prototype.Prototype(), returnType));
            }

            if (binderCanCall.ExecutionResultEnum == MethodExecutionResultEnum.Empty)
            {
                return(new MethodNotFoundHeyResponse(heyRemember));
            }
            if (!binderCanCall.ParametersOk)
            {
                return(new ParametersErrorHeyResponse(heyRemember, binderCanCall.ParametersOkNum));
            }
            return(new BindingFailedHeyResponse(heyRemember));
        }