コード例 #1
0
 public InterwikiCommand(
     string commandSource,
     IUser user,
     IList <string> arguments,
     ILogger logger,
     IFlagService flagService,
     IConfigurationProvider configurationProvider,
     IIrcClient client,
     ISession session,
     IMediaWikiApiHelper apiHelper,
     IResponder responder,
     IInterwikiService interwikiService) : base(
         commandSource,
         user,
         arguments,
         logger,
         flagService,
         configurationProvider,
         client)
 {
     this.session          = session;
     this.apiHelper        = apiHelper;
     this.responder        = responder;
     this.interwikiService = interwikiService;
 }
コード例 #2
0
 public AfcCountCommand(
     string commandSource,
     IUser user,
     IList <string> arguments,
     ILogger logger,
     IFlagService flagService,
     IConfigurationProvider configurationProvider,
     IIrcClient client,
     ISession databaseSession,
     IMediaWikiApiHelper apiHelper,
     IDraftStatusService draftStatusService,
     IResponder responder
     ) : base(
         commandSource,
         user,
         arguments,
         logger,
         flagService,
         configurationProvider,
         client)
 {
     this.databaseSession    = databaseSession;
     this.apiHelper          = apiHelper;
     this.draftStatusService = draftStatusService;
     this.responder          = responder;
 }
コード例 #3
0
ファイル: LoginAjaxHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            string account = SJSRequest.GetString("Account");
            string passwd  = SJSRequest.GetString("Passwd");

            passwd = Utils.MD5(passwd);

            User user = UserManager.GetUser(account);

            if (user == null)
            {
                responder.WriteErroredMsg("此用户不存在!");
                return;
            }

            if (user.Passwd.Trim() != passwd)
            {
                responder.WriteErroredMsg("密码错误!");
                return;
            }

            //if (user.Enabled == false)
            //{
            //    responder.WriteErroredMsg("用户处于禁用状态,无法登陆!");
            //    return;
            //}

            Logined(user);

            responder.WriteSuccessedMsg("登陆成功");
        }
コード例 #4
0
        public void handler(IResponder responder)
        {
            string dateStr = SJSRequest.GetString("Date");

            DateTime dt = DateTime.Now;

            if (string.IsNullOrEmpty(dateStr) == false)
            {
                dt = Convert.ToDateTime(dateStr);
            }

            IList <Bookingshop> list;

            if (User.IsAdministrator(PageUtils.Utype))
            {
                list = BookingshopManager.GetBookingshop(dt);
            }
            else
            {
                list = BookingshopManager.GetBookingshop(dt, false);
            }

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #5
0
        /// <summary>
        /// Initializes a new instance of <see cref="MeitanCore"/> class with the specified credential file and the specified configuration file.
        /// </summary>
        /// <param name="credentialPath">A path for the credential file.</param>
        /// <param name="configPath">A path for the configation file.</param>
        public MeitanCore(string credentialPath, string configPath)
        {
            client = new TwitterClient(credentialPath);
            if (System.IO.File.Exists(configPath))
            {
                config = Config.Load(configPath);
            }
            else
            {
                config = new Config();
                config.Save(configPath);
            }

            classTimeTable = new Dictionary <int, Tuple <string, string> >();
            var doc = XElement.Load(config.TsukubaTimeTableFile);

            foreach (var i in Enumerable.Range(0, 6))
            {
                var el = doc.Element("period" + (i + 1));
                classTimeTable[i] = Tuple.Create(el.Attribute("begin").Value, el.Attribute("end").Value);
            }

            ignoreIDList = new List <int>();
            foreach (var s in System.IO.File.ReadAllLines(config.IgnoreIDFile))
            {
                ignoreIDList.Add(int.Parse(s));
            }

            keywordResponder = new KeywordResponder("KeywordResponse.xml");
            replaceResponder = new ReplaceResponder(config, "posts.db");

            client.StartStreaming(null, null, StatusCreated, null, null, null, null);
            randomPostTimer = new System.Threading.Timer(RandomPost, null, 0, config.RandomPostInterval * 1000);
        }
コード例 #6
0
ファイル: MeitanCore.cs プロジェクト: mayth/meitanbot_cs
        /// <summary>
        /// Initializes a new instance of <see cref="MeitanCore"/> class with the specified credential file and the specified configuration file.
        /// </summary>
        /// <param name="credentialPath">A path for the credential file.</param>
        /// <param name="configPath">A path for the configation file.</param>
        public MeitanCore(string credentialPath, string configPath)
        {
            client = new TwitterClient(credentialPath);
            if (System.IO.File.Exists(configPath))
                config = Config.Load(configPath);
            else
            {
                config = new Config();
                config.Save(configPath);
            }

            classTimeTable = new Dictionary<int, Tuple<string, string>>();
            var doc = XElement.Load(config.TsukubaTimeTableFile);
            foreach (var i in Enumerable.Range(0, 6))
            {
                var el = doc.Element("period" + (i + 1));
                classTimeTable[i] = Tuple.Create(el.Attribute("begin").Value, el.Attribute("end").Value);
            }

            ignoreIDList = new List<int>();
            foreach (var s in System.IO.File.ReadAllLines(config.IgnoreIDFile))
                ignoreIDList.Add(int.Parse(s));

            keywordResponder = new KeywordResponder("KeywordResponse.xml");
            replaceResponder = new ReplaceResponder(config, "posts.db");

            client.StartStreaming(null, null, StatusCreated, null, null, null, null);
            randomPostTimer = new System.Threading.Timer(RandomPost, null, 0, config.RandomPostInterval * 1000);
        }
コード例 #7
0
        public void handler(IResponder responder)
        {
            Trade trade = new Trade();

            trade.Shopid     = SJSRequest.GetInt("Shopid", 0);
            trade.Tradename  = SJSRequest.GetString("Tradename");
            trade.Tradevalue = SJSRequest.GetFloat("Tradevalue", 0);

            if (trade.Shopid <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            if (string.IsNullOrEmpty(trade.Tradename))
            {
                responder.WriteErroredMsg("菜单名称不能为空!");
                return;
            }

            int rlt = TradeManager.AddTrade(trade);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("新增菜单失败,数据库写入不成功!");
                return;
            }

            responder.WriteSuccessedMsg("新增菜单成功!");
        }
コード例 #8
0
ファイル: AddTradeHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            Trade trade = new Trade();

            trade.Shopid = SJSRequest.GetInt("Shopid", 0);
            trade.Tradename = SJSRequest.GetString("Tradename");
            trade.Tradevalue = SJSRequest.GetFloat("Tradevalue", 0);

            if (trade.Shopid <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            if (string.IsNullOrEmpty(trade.Tradename))
            {
                responder.WriteErroredMsg("菜单名称不能为空!");
                return;
            }

            int rlt = TradeManager.AddTrade(trade);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("新增菜单失败,数据库写入不成功!");
                return;
            }

            responder.WriteSuccessedMsg("新增菜单成功!");
        }
コード例 #9
0
        public void handler(IResponder responder)
        {
            string json = "{";

            if (PageUtils.IsLogined)
            {
                User user = UserManager.GetUser(PageUtils.AccountID);

                json += string.Format("用户类型:'{0}',", user.Type == (int)eAuthority.CommonUser ? "普通用户" : "管理员");
                json += string.Format("当前用户:'{0}',", user.Realname);
                json += string.Format("当前余额:'{0}'", user.Balance);

                json += "}";
            }
            else
            {
                json += string.Format("用户类型:'{0}',", "");
                json += string.Format("当前用户:'{0}',", "");
                json += string.Format("当前余额:'{0}'", "");

                json += "}";
            }

            responder.WriteSuccessed(json);
        }
コード例 #10
0
        public void handler(IResponder responder)
        {
            string json = "{";

            if (PageUtils.IsLogined)
            {
                User user = UserManager.GetUser(PageUtils.AccountID);

                json += string.Format("用户类型:'{0}',", user.Type == (int)eAuthority.CommonUser ? "普通用户" : "管理员");
                json += string.Format("当前用户:'{0}',", user.Realname);
                json += string.Format("当前余额:'{0}'", user.Balance);

                json += "}";
            }
            else
            {
                json += string.Format("用户类型:'{0}',", "");
                json += string.Format("当前用户:'{0}',", "");
                json += string.Format("当前余额:'{0}'", "");

                json += "}";
            }

            responder.WriteSuccessed(json);
        }
コード例 #11
0
ファイル: DelTradeHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            int id = SJSRequest.GetInt("Id", 0);

            if (id <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            Trade trade = TradeManager.GetTrade(id);

            if (trade == null)
            {
                responder.WriteErroredMsg("此菜单不存在,无法删除!");
                return;
            }

            int hasBookingCount = BookingshopManager.GetBookingshop(trade.Shopid, false, true);
            if (hasBookingCount > 0)
            {
                responder.WriteErroredMsg("此店铺正在接受预订,无法删除此菜单!");
                return;
            }

            int rlt = TradeManager.DelTrade(id);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("菜单删除失败,数据库数据更新不成功!");
                return;
            }

            responder.WriteSuccessedMsg("菜单删除成功!");
        }
コード例 #12
0
 public UserInfoCommand(
     string commandSource,
     IUser user,
     IList <string> arguments,
     ILogger logger,
     IFlagService flagService,
     IConfigurationProvider configurationProvider,
     IIrcClient client,
     ISession databaseSession,
     ILinkerService linkerService,
     IUrlShorteningService urlShortener,
     IMediaWikiApiHelper apiHelper,
     IResponder responder) : base(
         commandSource,
         user,
         arguments,
         logger,
         flagService,
         configurationProvider,
         client)
 {
     this.databaseSession = databaseSession;
     this.linkerService   = linkerService;
     this.urlShortener    = urlShortener;
     this.apiHelper       = apiHelper;
     this.responder       = responder;
 }
コード例 #13
0
ファイル: GlooResponder.cs プロジェクト: dekkerb115/Bam.Net
        public bool TryRespond(IHttpContext context, out IResponder responder)
        {
            string requestedResponder = GetRequestedResponderName(context).Or(ServiceProxyResponder.Name);

            responder = _responders[requestedResponder];
            return(responder.TryRespond(context));
        }
コード例 #14
0
        public void ShouldBeAbleToUseGeneratedClient()
        {
            BamServer server;
            SecureServiceProxyClient <EncryptedEcho> sspc;

            ServiceProxyTestHelpers.StartSecureChannelTestServerGetEncryptedEchoClient(out server, out sspc);
            ConsoleLogger logger         = GetTestConsoleLogger();
            ProxyFactory  serviceFactory = new ProxyFactory(".\\workspace_".RandomLetters(4), logger);

            try
            {
                IResponder responder     = null;
                int        responseCount = 0;
                server.Responded += (srvr, resp, req) =>
                {
                    OutLineFormat("Responded to url: {0}", ConsoleColor.DarkGreen, req.Url.ToString());
                    responder = resp;
                    responseCount++;
                };
                EncryptedEcho echo     = serviceFactory.GetProxy <EncryptedEcho>("localhost", 8080);
                string        value    = "A random string: ".RandomLetters(8);
                string        response = echo.Send(value);
                Expect.IsNotNull(response, "response was null");
                Expect.AreEqual(value, response);
                Expect.IsTrue(responseCount > 0); // download, init session, set key, invoke
                Expect.IsObjectOfType <ServiceProxyResponder>(responder);
            }
            finally
            {
                server.Stop();
            }
        }
コード例 #15
0
 public AccDeployCommand(
     string commandSource,
     IUser user,
     IList <string> arguments,
     ILogger logger,
     IFlagService flagService,
     IConfigurationProvider configurationProvider,
     IIrcClient client,
     IResponder responder,
     BotConfiguration botConfiguration,
     IWebServiceClient webServiceClient,
     ModuleConfiguration deploymentConfiguration) : base(
         commandSource,
         user,
         arguments,
         logger,
         flagService,
         configurationProvider,
         client)
 {
     this.responder          = responder;
     this.botConfiguration   = botConfiguration;
     this.webServiceClient   = webServiceClient;
     this.deploymentPassword = deploymentConfiguration.DeploymentPassword;
 }
コード例 #16
0
        public CategoryWatcherHelperService(
            ILinkerService linkerService,
            IUrlShorteningService urlShorteningService,
            ISession session,
            ILogger logger,
            ICommandParser commandParser,
            IMediaWikiApiHelper apiHelper,
            IResponder responder)
        {
            this.linkerService        = linkerService;
            this.urlShorteningService = urlShorteningService;
            this.session   = session;
            this.logger    = logger;
            this.apiHelper = apiHelper;
            this.responder = responder;

            lock (this.session)
            {
                this.watchedCategories = this.session.CreateCriteria <WatchedCategory>().List <WatchedCategory>();

                this.ignoredPages = this.session.CreateCriteria <IgnoredPage>()
                                    .List <IgnoredPage>()
                                    .Select(x => x.Title)
                                    .ToList();
            }

            logger.DebugFormat("Registering CategoryWatcher keys in CommandParser");
            foreach (var category in this.watchedCategories)
            {
                commandParser.RegisterCommand(category.Keyword, typeof(ForceUpdateCommand));
            }
        }
コード例 #17
0
        public void handler(IResponder responder)
        {
            string dateStr = SJSRequest.GetString("Date");

            DateTime dt = DateTime.Now;

            if (string.IsNullOrEmpty(dateStr) == false)
            {
                dt = Convert.ToDateTime(dateStr);
            }

            IList<Bookingshop> list;

            if (User.IsAdministrator(PageUtils.Utype))
            {
                list = BookingshopManager.GetBookingshop(dt);
            }
            else
            {
                list = BookingshopManager.GetBookingshop(dt, false);
            }

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #18
0
ファイル: QuitRpc.cs プロジェクト: pacificIT/TomP2P.NET
        public override void HandleResponse(Message.Message requestMessage, PeerConnection peerConnection, bool sign, IResponder responder)
        {
            if (!(requestMessage.Type == Message.Message.MessageType.RequestFf1 && requestMessage.Command == Rpc.Commands.Quit.GetNr()))
            {
                throw new ArgumentException("Message content is wrong for this handler.");
            }
            Logger.Debug("Received QUIT message {0}.", requestMessage);

            lock (PeerBean.PeerStatusListeners)
            {
                foreach (var listener in PeerBean.PeerStatusListeners)
                {
                    listener.PeerFailed(requestMessage.Sender,
                        new PeerException(PeerException.AbortCauseEnum.Shutdown, "shutdown"));
                }
            }
            if (requestMessage.IsUdp)
            {
                responder.ResponseFireAndForget();
            }
            else
            {
                responder.Response(CreateResponseMessage(requestMessage, Message.Message.MessageType.Ok));
            }
        }
コード例 #19
0
        public void handler(IResponder responder)
        {
            Bookingshop bookingshop = new Bookingshop();

            bookingshop.Bookingid   = SJSRequest.GetInt("Bookingid", 0);
            bookingshop.Bookingname = SJSRequest.GetString("Bookingname");
            bookingshop.Shopid      = SJSRequest.GetInt("Shopid", 0);
            bookingshop.Shopname    = SJSRequest.GetString("Shopname");
            bookingshop.Uid         = PageUtils.AccountID;
            bookingshop.Realname    = PageUtils.RealName.Trim();
            bookingshop.Isover      = false;
            //bookingshop.Begintime = DateTime.Now;// DateTime.UtcNow;

            if (bookingshop.Bookingid <= 0)
            {
                responder.WriteErroredMsg("预订参数错误!");
                return;
            }

            if (bookingshop.Shopid <= 0)
            {
                responder.WriteErroredMsg("店铺参数错误!");
                return;
            }

            Booking booking = BookingManager.GetBooking(bookingshop.Bookingid);

            if (booking == null)
            {
                responder.WriteErroredMsg("此预订不存在,无法加入!");
                return;
            }

            if (booking.Isbooking == false)
            {
                responder.WriteErroredMsg("此预订已结束,无法加入!");
                return;
            }

            Bookingshop confirm = BookingshopManager.GetBookingshop(bookingshop.Bookingid, bookingshop.Shopid, bookingshop.Uid);

            if (confirm != null)
            {
                responder.WriteErroredMsg("此店铺已存在于" + bookingshop.Bookingname + "的店铺列表,无法再次加入预订!");
                return;
            }

            bookingshop.Begintime = booking.Bookingtime;

            int rlt = BookingshopManager.AddBookingshop(bookingshop);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("店铺预订加入失败,数据库写入不成功!");
                return;
            }

            responder.WriteSuccessedMsg("加入预订成功!");
        }
コード例 #20
0
        public override void HandleResponse(Message requestMessage, PeerConnection peerConnection, bool sign,
                                            IResponder responder)
        {
            var responseMessage = CreateResponseMessage(requestMessage, Message.MessageType.Ok);

            if (requestMessage.Command == Rpc.Commands.Add.GetNr())
            {
                HandleAdd(requestMessage, responseMessage, IsDomainProtected(requestMessage));
            }
            else if (requestMessage.Command == Rpc.Commands.Put.GetNr() ||
                     requestMessage.Command == Rpc.Commands.ReplicaPut.GetNr())
            {
                HandlePut(requestMessage, responseMessage, IsStoreIfAbsent(requestMessage),
                          IsDomainProtected(requestMessage), IsReplicaPut(requestMessage));
            }
            else if (requestMessage.Command == Rpc.Commands.PutConfirm.GetNr())
            {
                HandlePutConfirm(requestMessage, responseMessage);
            }
            else if (requestMessage.Command == Rpc.Commands.Get.GetNr())
            {
                HandleGet(requestMessage, responseMessage);
            }
            else if (requestMessage.Command == Rpc.Commands.GetLatest.GetNr())
            {
                HandleGetLatest(requestMessage, responseMessage, false);
            }
            else if (requestMessage.Command == Rpc.Commands.GetLatestWithDigest.GetNr())
            {
                HandleGetLatest(requestMessage, responseMessage, true);
            }
            else if (requestMessage.Command == Rpc.Commands.Digest.GetNr() ||
                     requestMessage.Command == Rpc.Commands.DigestBloomfilter.GetNr() ||
                     requestMessage.Command == Rpc.Commands.DigestMetaValues.GetNr() ||
                     requestMessage.Command == Rpc.Commands.DigestAllBloomfilter.GetNr())
            {
                HandleDigest(requestMessage, responseMessage);
            }
            else if (requestMessage.Command == Rpc.Commands.Remove.GetNr())
            {
                HandleRemove(requestMessage, responseMessage,
                             requestMessage.Type == Message.MessageType.Request2);
            }
            else if (requestMessage.Command == Rpc.Commands.PutMeta.GetNr())
            {
                HandlePutMeta(requestMessage, responseMessage,
                              requestMessage.Type == Message.MessageType.Request2);
            }
            else
            {
                throw new ArgumentException($"Message content is wrong {requestMessage.Command}.");
            }
            if (sign)
            {
                responseMessage.SetPublicKeyAndSign(PeerBean.KeyPair);
            }
            Logger.Debug("Response for storage request: {0}.", responseMessage);
            responder.Response(responseMessage);
        }
コード例 #21
0
        public void handler(IResponder responder)
        {
            Bookingshop bookingshop = new Bookingshop();

            bookingshop.Bookingid = SJSRequest.GetInt("Bookingid", 0);
            bookingshop.Bookingname = SJSRequest.GetString("Bookingname");
            bookingshop.Shopid = SJSRequest.GetInt("Shopid", 0);
            bookingshop.Shopname = SJSRequest.GetString("Shopname");
            bookingshop.Uid = PageUtils.AccountID;
            bookingshop.Realname = PageUtils.RealName.Trim();
            bookingshop.Isover = false;
            //bookingshop.Begintime = DateTime.Now;// DateTime.UtcNow;

            if (bookingshop.Bookingid <= 0)
            {
                responder.WriteErroredMsg("预订参数错误!");
                return;
            }

            if (bookingshop.Shopid <= 0)
            {
                responder.WriteErroredMsg("店铺参数错误!");
                return;
            }

            Booking booking = BookingManager.GetBooking(bookingshop.Bookingid);

            if (booking == null)
            {
                responder.WriteErroredMsg("此预订不存在,无法加入!");
                return;
            }

            if (booking.Isbooking == false)
            {
                responder.WriteErroredMsg("此预订已结束,无法加入!");
                return;
            }

            Bookingshop confirm = BookingshopManager.GetBookingshop(bookingshop.Bookingid, bookingshop.Shopid, bookingshop.Uid);

            if (confirm != null)
            {
                responder.WriteErroredMsg("此店铺已存在于" + bookingshop.Bookingname + "的店铺列表,无法再次加入预订!");
                return;
            }

            bookingshop.Begintime = booking.Bookingtime;

            int rlt = BookingshopManager.AddBookingshop(bookingshop);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("店铺预订加入失败,数据库写入不成功!");
                return;
            }

            responder.WriteSuccessedMsg("加入预订成功!");
        }
コード例 #22
0
        public void SimpleResponderCanRespond()
        {
            Bot             bot       = new Bot();
            IResponder      responder = bot.RespondsTo("Hi").With("Hello, friend!").GetResponder();
            ResponseContext context   = GetResponseContext("Hi everybody.");

            Assert.AreEqual(true, responder.CanRespond(context));
        }
コード例 #23
0
        public void handler(IResponder responder)
        {
            IList <Shop> list = ShopManager.GetShop();

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #24
0
        public void SimpleResponderWithMentionRespondsToMention()
        {
            Bot             bot       = new Bot();
            IResponder      responder = bot.RespondsTo("Hi").With("Hello, friend!").IfBotIsMentioned().GetResponder();
            ResponseContext context   = GetResponseContext("Hi, Margie.");

            Assert.AreEqual(true, responder.CanRespond(context));
        }
コード例 #25
0
        public void SimpleResponderWithMentionDoesntRespondWithoutMention()
        {
            Bot             bot       = new Bot();
            IResponder      responder = bot.RespondsTo("Hi").With("Hello, friend!").IfBotIsMentioned().GetResponder();
            ResponseContext context   = GetResponseContext("Hi, everybody.");

            Assert.AreEqual(false, responder.CanRespond(context));
        }
コード例 #26
0
        public void SimpleResponderRespondsCorrectly()
        {
            Bot             bot       = new Bot();
            IResponder      responder = bot.RespondsTo("Hi").With("Hello, friend!").GetResponder();
            ResponseContext context   = GetResponseContext("Hi, everybody.");

            Assert.AreEqual("Hello, friend!", responder.GetResponse(context).Text);
        }
コード例 #27
0
ファイル: DelShopHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            int id = SJSRequest.GetInt("Id", 0);

            if (id <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            Shop shop = ShopManager.GetShop(id);

            if (shop == null)
            {
                responder.WriteErroredMsg("此店铺不存在,无法删除!");
                return;
            }

            int hasBookingCount = BookingshopManager.GetBookingshop(shop.Id, false, true);

            if (hasBookingCount > 0)
            {
                responder.WriteErroredMsg("此店铺正在接受预订,无法删除!");
                return;
            }

            using (DbTransaction trans = DbHelper.BeginTransaction())
            {
                bool writeError = false;
                try
                {
                    int rlt = ShopManager.DelShop(id, trans);

                    if (rlt <= 0)
                    {
                        writeError = true;
                        trans.Rollback();
                        responder.WriteErroredMsg("店铺删除失败,数据库更新不成功!");
                        return;
                    }

                    TradeManager.DelTrade(id, trans);

                    trans.Commit();
                }
                catch (Exception ex)
                {
                    trans.Rollback();
                    if (writeError == false)
                    {
                        responder.WriteErroredMsg("店铺删除失败,程序异常!");
                    }
                    return;
                }
            }

            responder.WriteSuccessedMsg("店铺删除成功!");
        }
コード例 #28
0
    public WechatLoginDelegate(IResponder _responder, string _token)
    {
        m_responder = _responder;

        WWWForm form = new WWWForm();

        form.AddField("token", _token);
        m_httpService = new HttpService(Const.Url.WECHAT_LOGIN, HttpRequestType.Post, form);
    }
コード例 #29
0
        public void RegisterContentTypeResponder(string ContentType, IResponder Responder)
        {
            this.Responders.Add(ContentType, Responder);

            if (this.DefaultResponder == null)
            {
                this.DefaultResponder = Responder;
            }
        }
コード例 #30
0
        public void handler(IResponder responder)
        {
            int shopid = SJSRequest.GetInt("Id", 0);

            IList<Trade> list = TradeManager.GetTrade(shopid, true);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #31
0
        public void handler(IResponder responder)
        {
            int shopid = SJSRequest.GetInt("Id", 0);

            IList <Trade> list = TradeManager.GetTrade(shopid, true);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #32
0
        public void handler(IResponder responder)
        {
            int bookingshopid = SJSRequest.GetInt("Bookingshopid", 0);

            IList <Bookingtrade> list = BookingtradeManager.GetBookingtrade(bookingshopid, 0, 0);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #33
0
        public void handler(IResponder responder)
        {
            int bookingshopid = SJSRequest.GetInt("Bookingshopid", 0);

            IList<Bookingtrade> list = BookingtradeManager.GetBookingtrade(bookingshopid, 0, 0);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #34
0
    public VerifyCodeDelegate(IResponder _responder, string _phoneNumber)
    {
        m_responder = _responder;

        WWWForm form = new WWWForm();

        form.AddField("phone", _phoneNumber);

        m_httpService = new HttpService(Const.Url.REQUEST_FOR_VERIFY_CODE, HttpRequestType.Post, form);
    }
コード例 #35
0
    public LoginDelegate(IResponder _responder, LoginVO _loginVO)
    {
        WWWForm form = new WWWForm();

        form.AddField("username", _loginVO.userName);
        form.AddField("password", _loginVO.password);

        m_responder   = _responder;
        m_httpService = new HttpService(Const.Url.CONTROL_CENTER_LOGIN, HttpRequestType.Post, form);
    }
コード例 #36
0
ファイル: LogoutHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            if (PageUtils.IsLogined)
            {
                LoginAjaxHandler.Logined(new User());
                responder.WriteSuccessedMsg("注销登陆成功!");
                return;
            }

            responder.WriteErroredMsg("当前未登陆或已注销!");
        }
コード例 #37
0
		public ResponderRequest (ushort requestID,
		                         Connection connection)
			: base (requestID, connection)
		{
			if (!Server.SupportsResponder)
				throw new Exception ();
			
			responder = Server.CreateResponder (this);
			
			InputDataReceived  += OnInputDataReceived;
		}
コード例 #38
0
ファイル: ResponderBase.cs プロジェクト: ThreeHeadz/Bam.Net
 protected static void WireResponseLogging(IResponder responder, ILogger logger)
 {
     responder.Responded += (r, context) =>
     {
         logger.AddEntry("*** ({0}) Responded ***\r\n{1}", LogEventType.Information, responder.Name, context.Request.PropertiesToString());
     };
     responder.NotResponded += (r, context) =>
     {
         logger.AddEntry("*** Didn't Respond ***\r\n{0}", LogEventType.Warning, context.Request.PropertiesToString());
     };
 }
コード例 #39
0
    public PhoneLoginDelegate(IResponder _responder, PhoneLoginVO _vo)
    {
        m_responder = _responder;

        WWWForm form = new WWWForm();

        form.AddField("phone", _vo.phoneNumber);
        form.AddField("verify_code", _vo.verifyCode);

        m_httpService = new HttpService(Const.Url.PHONE_LOGIN, HttpRequestType.Post, form);
    }
コード例 #40
0
ファイル: LogoutHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            if (PageUtils.IsLogined)
            {
                LoginAjaxHandler.Logined(new User());
                responder.WriteSuccessedMsg("注销登陆成功!");
                return;
            }

            responder.WriteErroredMsg("当前未登陆或已注销!");
        }
コード例 #41
0
 /// <summary>
 /// Indicates that a request was received and responds to it.
 /// </summary>
 /// <remarks>On invalid request you would call: <see cref="IResponder{TResponse}.Reject(string)"/>.</remarks>
 public void OnRequest(string path, string request, IResponder <string> responder)
 {
     if (request == "Hello?")        // message to the filter to obtain the session ID
     {
         responder.Respond("Yes");
     }
     else
     {
         WriteLine($"Received request: '{request}'.");
         responder.Respond(DateTime.UtcNow.ToLongTimeString());
     }
 }
コード例 #42
0
        public void handler(IResponder responder)
        {
            int id = SJSRequest.GetInt("Id", 0);

            if (id <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            Booking booking = BookingManager.GetBooking(id);

            if (booking == null)
            {
                responder.WriteErroredMsg("不存在此预订, 无法结束预订!");
                return;
            }

            if (booking.Isbooking == false)
            {
                responder.WriteErroredMsg("此预订已经结束,无法重复结束!");
                return;
            }

            if (booking.Uid != PageUtils.AccountID)
            {
                responder.WriteErroredMsg("没有权限结束其他人的预订!");
                return;
            }

            booking.Isbooking = false;

            int rlt = BookingManager.UpdateBooking(booking);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("结束预订失败,数据库更新不成功!");
                return;
            }

            IList<Bookingshop> list = BookingshopManager.GetBookingshop(booking.Id, true);

            foreach (Bookingshop item in list)
            {
                item.Isover = true;
                BookingshopManager.UpdateBookingshop(item);
            }

            BookingtradeManager.UpdateBookingtrade(booking.Id, !booking.Isbooking);

            responder.WriteSuccessedMsg("结束预订成功!");
        }
コード例 #43
0
        public void TestInitialise()
        {
            _Responder = Factory.Singleton.Resolve<IResponder>();

            _Response = new Mock<IResponse>() { DefaultValue = DefaultValue.Mock }.SetupAllProperties();
            _OutputStream = new MemoryStream();
            _Response.Setup(m => m.OutputStream).Returns(_OutputStream);

            _Image = new Bitmap(10, 10);
            using(var graphics = Graphics.FromImage(_Image)) {
                graphics.FillRectangle(Brushes.White, 0, 0, _Image.Width, _Image.Height);
            }
        }
コード例 #44
0
        public void handler(IResponder responder)
        {
            IList<User> list = UserManager.GetUser();

            foreach (User item in list)
            {
                item.Passwd = "";
            }

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #45
0
        public void handler(IResponder responder)
        {
            int uid = SJSRequest.GetInt("Uid", 0);

            if (uid <= 0)
            {
                uid = PageUtils.AccountID;
            }

            IList<Balance> list = BalanceManager.GetBalance(uid, true);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #46
0
        public void handler(IResponder responder)
        {
            int bookingId = SJSRequest.GetInt("Bookingid", 0);

            //if (bookingId <= 0)
            //{
            //    responder.WriteErroredMsg("请求参数错误!");
            //    return;
            //}

            IList<Bookingshop> list = BookingshopManager.GetBookingshop(bookingId, true);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #47
0
        public void handler(IResponder responder)
        {
            DateTime dt = DateTime.Now;

            int uid = PageUtils.AccountID;

            if (uid <= 0)
            {
                uid = -1;
            }

            IList<Bookingtrade> list = BookingtradeManager.GetBookingtrade(uid, dt);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #48
0
        public void handler(IResponder responder)
        {
            string dateStr = SJSRequest.GetString("Date");

            DateTime dt = DateTime.Now;

            if (string.IsNullOrEmpty(dateStr) == false)
            {
                dt = Convert.ToDateTime(dateStr);
            }

            IList<Booking> list = BookingManager.GetBooking(true, PageUtils.AccountID, dt);

            string json = PageUtils.TranformJSON(list);

            responder.WriteSuccessed(json);
        }
コード例 #49
0
ファイル: AddUserHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            string isAdmin = SJSRequest.GetString("IsAdmin");
            User user = new User();
            user.Uid = 0;
            user.Account = SJSRequest.GetString("Account").Trim();
            user.Passwd = SJSRequest.GetString("Passwd");
            user.Realname = SJSRequest.GetString("Realname");
            user.Balance = 0;
            user.Type = (isAdmin == "on" ? (int)eAuthority.AdminUser : (int)eAuthority.CommonUser);

            if (string.IsNullOrEmpty(user.Account))
            {
                responder.WriteErroredMsg("帐号不能为空");
                return;
            }

            if (string.IsNullOrEmpty(user.Passwd))
            {
                responder.WriteErroredMsg("密码不能为空");
                return;
            }
            else
            {
                user.Passwd = Utils.MD5(user.Passwd);
            }

            User confirm = UserManager.GetUser(user.Account);
            if (confirm != null)
            {
                responder.WriteErroredMsg("此用户名已存在!");
                return;
            }

            user.Uid = UserManager.AddUser(user);

            if (user.Uid > 0)
            {
                responder.WriteSuccessedMsg("新增用户成功!");
            }
            else
            {
                responder.WriteErroredMsg("新增用户失败,数据库写入不成功!");
            }
        }
コード例 #50
0
ファイル: BroadcastRpc.cs プロジェクト: pacificIT/TomP2P.NET
 public override void HandleResponse(Message.Message requestMessage, PeerConnection peerConnection, bool sign, IResponder responder)
 {
     if (!(requestMessage.Type == Message.Message.MessageType.RequestFf1
         && requestMessage.Command == Rpc.Commands.Broadcast.GetNr()))
     {
         throw new ArgumentException("Message content is wrong for this handler.");   
     }
     Logger.Debug("Received BROADCAST message: {0}.", requestMessage);
     BroadcastHandler.Receive(requestMessage);
     if (requestMessage.IsUdp)
     {
         responder.ResponseFireAndForget();
     }
     else
     {
         responder.Response(CreateResponseMessage(requestMessage, Message.Message.MessageType.Ok));    
     }
 }
コード例 #51
0
ファイル: EditShopHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            int id = SJSRequest.GetInt("Id", 0);

            if (id <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            Shop shop = ShopManager.GetShop(id);

            if (shop == null)
            {
                responder.WriteErroredMsg("此店铺不存在,无法修改!");
                return;
            }

            int hasBookingCount = BookingshopManager.GetBookingshop(shop.Id, false, true);
            if (hasBookingCount > 0)
            {
                responder.WriteErroredMsg("此店铺正在接受预订,无法修改!");
                return;
            }

            shop.Shopname = SJSRequest.GetString("Shopname");
            shop.Phone = SJSRequest.GetString("Phone");

            if (string.IsNullOrEmpty(shop.Shopname))
            {
                responder.WriteErroredMsg("店铺名称不能为空!");
                return;
            }

            int rlt = ShopManager.UpdateShop(shop);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("店铺修改失败,数据库更新不成功!");
                return;
            }

            responder.WriteSuccessedMsg("修改店铺成功!");
        }
コード例 #52
0
ファイル: EditTradeHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            int id = SJSRequest.GetInt("Id", 0);

            if (id <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            Trade trade = TradeManager.GetTrade(id);

            if (trade == null)
            {
                responder.WriteErroredMsg("此菜单不存在,无法修改!");
                return;
            }

            int hasBookingCount = BookingshopManager.GetBookingshop(trade.Shopid, false, true);
            if (hasBookingCount > 0)
            {
                responder.WriteErroredMsg("此店铺正在接受预订,无法修改此菜单!");
                return;
            }

            trade.Tradename = SJSRequest.GetString("Tradename");
            trade.Tradevalue = SJSRequest.GetFloat("Tradevalue", 0);

            if (string.IsNullOrEmpty(trade.Tradename))
            {
                responder.WriteErroredMsg("菜单名称不能为空!");
                return;
            }

            int rlt = TradeManager.UpdateTrade(trade);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("菜单修改失败,数据库更新不成功!");
                return;
            }

            responder.WriteSuccessedMsg("修改菜单成功!");
        }
コード例 #53
0
ファイル: DelUserHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            int uid = SJSRequest.GetInt("Uid", 0);

            if (uid <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            User user = UserManager.GetUser(uid);
            if (user == null)
            {
                responder.WriteErroredMsg("此用户不存在,无法删除!");
                return;
            }

            if (user.Balance > 0)
            {
                responder.WriteErroredMsg(string.Format("此用户还有余额{0}未返还,无法删除!", user.Balance));
                return;
            }
            else if (user.Balance < 0)
            {
                responder.WriteErroredMsg(string.Format("此用户欠费{0}元,无法删除!", Math.Abs(user.Balance)));
                return;
            }

            int rlt = UserManager.DelUser(uid);

            if (rlt > 0)
            {
                responder.WriteSuccessedMsg("用户删除成功!");
            }
            else
            {
                responder.WriteErroredMsg("用户删除失败,删除数据库数据不成功");
            }
        }
コード例 #54
0
        public void handler(IResponder responder)
        {
            int start = SJSRequest.GetInt("start", 0);
            int limit = SJSRequest.GetInt("limit", PageUtils.DefaultPageSize);
            if (start <= 0)
            {
                start = 0;
            }
            if (limit <= 0)
            {
                limit = PageUtils.DefaultPageSize;
            }

            int curPage = PageUtils.TranformCurrentPage(start, limit);

            int len = DeductionManager.GetDeductionCount(PageUtils.AccountID);
            IList<Deduction> list = DeductionManager.GetDeduction(PageUtils.AccountID, limit, curPage);

            string json = PageUtils.TranformJSON(list);

            responder.WritePagingList(len, json);
        }
コード例 #55
0
        public void handler(IResponder responder)
        {
            int uid = SJSRequest.GetInt("Uid", 0);

            if (uid <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            User user = UserManager.GetUser(uid);
            if (user == null)
            {
                responder.WriteErroredMsg("此用户不存在,无法禁用!");
                return;
            }

            //if (user.Balance > 0)
            //{
            //    responder.WriteErroredMsg(string.Format("此用户还有余额{0}未返还,无法禁用!", user.Balance));
            //    return;
            //}
            //else if (user.Balance < 0)
            //{
            //    responder.WriteErroredMsg(string.Format("此用户欠费{0}元,无法禁用!", Math.Abs(user.Balance)));
            //    return;
            //}

            int rlt = UserManager.DisableUser(uid, true);

            if (rlt > 0)
            {
                responder.WriteSuccessedMsg("用户禁用成功!");
            }
            else
            {
                responder.WriteErroredMsg("用户禁用失败,数据库数据更新不成功");
            }
        }
コード例 #56
0
        public void handler(IResponder responder)
        {
            int start = SJSRequest.GetInt("start", 0);
            int limit = SJSRequest.GetInt("limit", PageUtils.DefaultPageSize);
            if (start <= 0)
            {
                start = 0;
            }
            if (limit <= 0)
            {
                limit = PageUtils.DefaultPageSize;
            }

            int curPage = PageUtils.TranformCurrentPage(start, limit);

            int len = BookingtradeManager.GetBookingtradeCountByUid(PageUtils.AccountID);
            IList<Bookingtrade> list = BookingtradeManager.GetBookingtrade(PageUtils.AccountID, limit, curPage, (uint)0);

            string json = PageUtils.TranformJSON(list);

            responder.WritePagingList(len, json);
        }
コード例 #57
0
ファイル: AddShopHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            Shop shop = new Shop();

            shop.Shopname = SJSRequest.GetString("Shopname");
            shop.Phone = SJSRequest.GetString("Phone");

            if (string.IsNullOrEmpty(shop.Shopname))
            {
                responder.WriteErroredMsg("店铺名称不能为空!");
                return;
            }

            int rlt = ShopManager.AddShop(shop);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("新增店铺失败,数据库写入不成功!");
                return;
            }

            responder.WriteSuccessedMsg("新增店铺成功!");
        }
コード例 #58
0
ファイル: SetNormalHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            int uid = SJSRequest.GetInt("Uid", 0);

            if (uid <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            User user = UserManager.GetUser(uid);

            if (user == null)
            {
                responder.WriteErroredMsg("此用户不存在,设置失败!");
                return;
            }

            if (user.Type == (int)eAuthority.CommonUser)
            {
                responder.WriteSuccessedMsg(user.Realname + "已经是普通用户,请不要重复设置!");
                return;
            }

            user.Type = (int)eAuthority.CommonUser;

            int rlt = UserManager.UpdateUser(user);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("设置失败,数据库更新数据不成功!");
            }
            else
            {
                responder.WriteSuccessedMsg("设置成功!");
            }
        }
コード例 #59
0
        public void handler(IResponder responder)
        {
            int uid = SJSRequest.GetInt("Uid", 0);
            if (uid <= 0)
            {
                responder.WriteErroredMsg("请求参数错误!");
                return;
            }

            string passwd = SJSRequest.GetString("NewPasswd");
            if (string.IsNullOrEmpty(passwd))
            {
                responder.WriteErroredMsg("密码不能为空");
                return;
            }

            User user = UserManager.GetUser(uid);

            if (user == null)
            {
                responder.WriteErroredMsg("找不到此用户,无法重置密码!");
                return;
            }

            user.Passwd = Utils.MD5(passwd);

            int rlt = UserManager.UpdateUser(user);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("密码重置失败,数据为更新不成功!");
            }
            else
            {
                responder.WriteSuccessedMsg("密码重置成功!");
            }
        }
コード例 #60
0
ファイル: AddBookingHandler.cs プロジェクト: W8023Y2014/jsion
        public void handler(IResponder responder)
        {
            Booking booking = new Booking();
            booking.Bookingname = SJSRequest.GetString("Bookingname").Trim();
            DateTime dt = DateTime.Now;
            string dtStr = SJSRequest.GetString("Bookingtime");
            if (string.IsNullOrEmpty(dtStr) == false)
            {
                dt = Convert.ToDateTime(dtStr);
                dt = dt.AddHours(DateTime.Now.Hour).AddMinutes(DateTime.Now.Minute).AddSeconds(DateTime.Now.Second);
            }
            booking.Bookingtime = dt;// DateTime.UtcNow;
            booking.Isbooking = true;
            booking.Uid = PageUtils.AccountID;
            booking.Realname = PageUtils.RealName;
            booking.Issettle = false;
            booking.Haserror = false;

            if (string.IsNullOrEmpty(booking.Bookingname))
            {
                responder.WriteErroredMsg("预订名称不能为空!");
                return;
            }

            booking.Bookingname += "(" + booking.Bookingtime.Month + "-" + booking.Bookingtime.Day + ")";

            int rlt = BookingManager.AddBooking(booking);

            if (rlt <= 0)
            {
                responder.WriteErroredMsg("预订新建失败,数据库写入不成功!");
                return;
            }

            responder.WriteSuccessedMsg("新建预订成功!");
        }