public HistoryViewModel(IRequestHistory requests)
        {
            Requests = new ReactiveList<HttpRequest>();
            requests.GetRequestsAsync().ContinueWith(continuation => Requests.AddRange(continuation.Result));
            requests.GetRequestsObservable().Subscribe(request => Requests.Add(request));

            SelectedRequestObservable = this.ObservableForProperty(vm => vm.SelectedRequest).Select(r => r.Value);
        }
Beispiel #2
0
        /// <summary>
        /// Initiliases the HttpMobile registering this modules interest in
        /// all new requests and handler mappings.
        /// </summary>
        /// <param name="application">
        /// <see cref="HttpApplication"/> object for the web application.</param>
        public virtual void Init(HttpApplication application)
        {
            EventLog.Debug("Initialising redirection module");

            StaticFieldInit(application);

            // Initialise the request history processor if required.
            if (_firstRequestOnly == true)
            {
#if AZURE
                _requestHistory = new Azure.RequestHistory();
#else
                _requestHistory = new RequestHistory();
#endif
            }

            RegisterEventHandlersInit(application);
        }
        public RequestViewModel(IRequestHistory requests, IObservable<HttpRequest> selectedRequested )
        {
            this.requests = requests;
            HttpMethods = new ReactiveList<HttpMethods>(Enum.GetValues(typeof(HttpMethods)).Cast<HttpMethods>());
            SelectedHttpMethod = HttpMethods.First();

            var canSendRequest = this.WhenAny(x => x.Url, url => UrlHelper.IsValidUrl(url.Value));
            SendRequest = ReactiveCommand.CreateAsyncTask(canSendRequest, SendRequestImpl);

            this.ObservableForProperty(vm => vm.Url).Subscribe(_ =>
            {
                Reset();
            });

            selectedRequested.Subscribe(request =>
            {
                Reset();
                SelectedHttpMethod = request.Method;
                Url = request.Url;
                SendRequest.Execute(null);
            });
        }
        /// <summary>
        /// Initiliases the HttpMobile registering this modules interest in
        /// all new requests and handler mappings.
        /// </summary>
        /// <param name="application">
        /// <see cref="HttpApplication"/> object for the web application.</param>
        public virtual void Init(HttpApplication application)
        {
            EventLog.Debug("Initialising redirection module");

            StaticFieldInit(application);

            // Initialise the request history processor if required.
            if (_firstRequestOnly == true)
            {
            #if AZURE
                _requestHistory = new Azure.RequestHistory();
            #else
                _requestHistory = new RequestHistory();
            #endif
            }

            RegisterEventHandlersInit(application);
        }