Apachai.Apachai.DoPost C# (CSharp) 메소드

DoPost() 개인적인 메소드

private DoPost ( IManosContext ctx ) : void
ctx IManosContext
리턴 void
        public void DoPost(IManosContext ctx)
        {
            IHttpRequest req = ctx.Request;

            var cookie = req.Cookies.Get ("apachai:userId");
            long uid;

            if (string.IsNullOrEmpty (cookie) || !long.TryParse (cookie, out uid) || !store.DoWeKnowUser (uid)) {
                ctx.Response.Redirect ("/Login");
                return;
            }

            var twittertext = System.Web.HttpUtility.HtmlDecode (req.PostData.GetString ("twittertext"));
            var effect = req.PostData.GetString ("effect");

            if (req.Files.Count == 0) {
                Log.Debug ("No file received");
                ctx.Response.Redirect ("/Post?error=1");
                return;
            }

            var file = req.Files.Values.First ().Contents;

            if (!CheckImageType (file)) {
                ctx.Response.Redirect ("/Post?error=1");
                return;
            }

            HandleUploadedFile (file, uid.ToString (), effect)
                .ContinueWith (cont => DoPictureTasks (ctx, cont.Result, uid, twittertext), ExecuteSync);
        }