public async Task <ActionResult> GetToken()
        {
            ManualFlowClient client = new ManualFlowClient();
            var response            = await client.GetToken();

            return(View("Token", response));
        }
        public async Task <ActionResult> RevokeRefreshToken()
        {
            ManualFlowClient client = new ManualFlowClient();

            await client.RevokeRefreshToken();

            return(RedirectToAction("AppIndex"));
        }
        public async Task <ActionResult> CallService()
        {
            ManualFlowClient client = new ManualFlowClient();

            var result = await client.CallService("");

            return(View(result));
        }
        public async Task <ActionResult> Callback()
        {
            ViewBag.Code = Request.QueryString["code"] ?? "none";

            var state = Request.QueryString["state"];
            ManualFlowClient client = new ManualFlowClient();
            var tempState           = await client.GetTempStateAsync();

            if (state.Equals(tempState.Item1, StringComparison.Ordinal))
            {
                ViewBag.State = state + " (valid)";
            }
            else
            {
                ViewBag.State = state + " (invalid)";
            }

            ViewBag.Error = Request.QueryString["error"] ?? "none";

            return(View());
        }
        public ActionResult Index(string scopes)
        {
            ManualFlowClient client = new ManualFlowClient();

            return(Redirect(client.Connect(scopes)));
        }