Exemplo n.º 1
0
 public static string ParsePostKeyData(string postKeyData)
 {
     if (postKeyData.StartsWith("postkey="))
     {
         return(postKeyData.Substring(8));
     }
     throw CustomExceptionFactory.Create(NiconicoHResult.E_PARSE);
 }
Exemplo n.º 2
0
 public static bool ParseVoteData(string voteData)
 {
     if (voteData.StartsWith("status="))
     {
         return(voteData.Substring(7) == "true");
     }
     throw CustomExceptionFactory.Create(NiconicoHResult.E_PARSE);
 }
Exemplo n.º 3
0
        public static PlayerStatusResponse ParsePlayerStatusData(string playerStatusData)
        {
            var xml = XDocument.Parse(playerStatusData);

            var getPlayerStatusXml = xml.Root;

            if (getPlayerStatusXml.Name != "getplayerstatus")
            {
                throw new ParseException("Parse Error: Node name is invalid.");
            }

            if (getPlayerStatusXml.Attribute("status").Value != "ok")
            {
                var error = getPlayerStatusXml.Elements().First();
                var code  = error.Element("code").Value;
                switch (code)
                {
                case "not_found":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_NOT_FOUND);

                case "closed":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_CLOSED);

                case "comingsoon":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_COMING_SOON);

                case "maintenance":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_MAINTENANCE);

                case "require_community_member":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_COMMUNITY_MEMBER_ONLY);

                case "full":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_FULL);

                case "premium_only":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_PREMIUM_ONLY);

                case "notlogin":
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_NOT_SIGNING_IN);

                default:
                    throw CustomExceptionFactory.Create(NiconicoHResult.E_LIVE_UNKNOWN);
                }
            }

            return(new PlayerStatusResponse(getPlayerStatusXml));
        }
Exemplo n.º 4
0
        public EnsureOptions WithExceptionFactory(CustomExceptionFactory factory)
        {
            CustomExceptionFactory = factory;

            return(this);
        }