Exemple #1
0
        public void Execute(IJobExecutionContext context)
        {
            ICompanySCBLL  companyBll  = new CompanySCBLL();
            List <Company> companyList = null;
            DateTime       dateTimeM   = DateTime.Now;

            FlashLogger.Error(string.Format("下载生产企业信息【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = companyBll.GetCompanys("", dateTimeM.ToString("yyyy-MM"), "1");
                if (listEntity == null)
                {
                    break;
                }
                companyList = listEntity.DataList;
                if (companyList != null && companyList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        companyBll.AddCompanys(companyList);
                        FlashLogger.Warn(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条生产企业信息.【{4}】", dateTimeM.ToString("yyyy-MM"),
                                                       i, listEntity.TotalPageCount, companyList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId));
                        companyList = companyBll.GetCompanys("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                    }
                }
                dateTimeM = dateTimeM.AddMonths(-1);
            }
            FlashLogger.Error(string.Format("下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
        }
        //http://www.cnblogs.com/emrys5/p/6693454.html
        static void Main(string[] args)
        {
            FlashLogger.Instance().Register();

            FlashLogger.Debug("Debug");
            FlashLogger.Debug("Debug", new Exception("testexception"));
            FlashLogger.Info("Info");
            FlashLogger.Fatal("Fatal");
            FlashLogger.Error("Error");
            FlashLogger.Warn("Warn", new Exception("testexception"));
        }
Exemple #3
0
        public void TestWriteLog()
        {
            FlashLogger.Instance().Register();

            FlashLogger.Debug("Debug");
            FlashLogger.Debug("Debug", new Exception("testexception"));
            FlashLogger.Info("Info");
            FlashLogger.Fatal("Fatal");
            FlashLogger.Error("Error");
            FlashLogger.Warn("Warn", new Exception("testexception"));
        }
Exemple #4
0
        public ActionResult Index()
        {
            ViewBag.Message = "Modify this template to jump-start your ASP.NET MVC application.";
            FlashLogger.Debug("Debug");
            FlashLogger.Debug("Debug", new Exception("testexception"));
            FlashLogger.Info("Info");
            FlashLogger.Fatal("Fatal");
            FlashLogger.Error("Error");
            FlashLogger.Warn("Warn", new Exception("testexception"));

            return(View());
        }
Exemple #5
0
 /**
  *
  * @param localIP 本地IP
  * @param port  端口
  */
 public judpServer(string localIP, int port)
 {
     try {
         server = new UDTServerSocket(port, localIP);
     } catch (SocketException e) {
         FlashLogger.Warn("绑定失败:" + e.Message);
         isSucess = false;
     } catch (Exception e) {
         isSucess = false;
         Console.WriteLine(e);
     }
 }
Exemple #6
0
        public static void Warn(object message)
        {
            switch (LogEngineType)
            {
            case LogEngineTypeEnum.DefaultLogger:
                DefaultLogger.Warn(message);
                break;

            case LogEngineTypeEnum.FlashLogger:
                FlashLogger.Warn(message);
                break;
            }
        }
Exemple #7
0
 /**
  *
  * @param port 端口
  */
 public judpServer(int port)
 {
     try {
         server = new UDTServerSocket(port);
     } catch (SocketException e) {
         // logger.log(Level.WARNING, "绑定失败:" + e.getMessage());
         FlashLogger.Warn("绑定失败:" + e.Message);
         isSucess = false;
     } catch (Exception e) {
         isSucess = false;
         Console.WriteLine(e);
     }
 }
        public void Submit()
        {
            if (ThreadLocked)
            {
                return;
            }
            FlashLogger.Info(string.Format("MaxId:{0}", MaxId));
            List <SaleBill> saleBills = dalMySql.GetTopFive(MaxId);

            if (saleBills.Count > 0)
            {
                ThreadLocked = true;
                FlashLogger.Warn("$$$ [ ThreadLocked ] $$$");
                MaxId = saleBills[saleBills.Count - 1].SaleBillID;
                saleBills.ForEach(s => {
                    var insMsg = dalSqlServer.InsertBill(s);
                    if (insMsg.IndexOf("单据写入失败") > -1)
                    {
                        FlashLogger.Error(insMsg);
                        MaxId        = 0;
                        ThreadLocked = false;
                        FlashLogger.Warn("$$$ [ ThreadUnLocked ] $$$");
                        return;
                    }
                    else
                    {
                        FlashLogger.Info(insMsg);
                        if (dalMySql.SetInvalid(s.SaleBillID) > 0)
                        {
                            FlashLogger.Info("CacheID:" + s.SaleBillID);
                        }
                        else
                        {
                            FlashLogger.Error("ErrorCacheID:" + s.SaleBillID);
                        }
                    }
                });
                ThreadLocked = false;
                FlashLogger.Warn("$$$ [ ThreadUnLocked ] $$$");
            }
            else
            {
                FlashLogger.Warn("$$$ [ Heartbeat - ThreadUnLocked ] $$$");
            }
        }
Exemple #9
0
        public void Execute(IJobExecutionContext context)
        {
            IHospitalBLL    hospitalBll  = new HospitalBLL();
            List <Hospital> hospitalList = null;
            DateTime        dateTimeM    = DateTime.Now;

            FlashLogger.Error(string.Format("下载医疗机构信息【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = hospitalBll.GetHospitals("", dateTimeM.ToString("yyyy-MM"), "1");
                if (listEntity == null)
                {
                    break;
                }
                hospitalList = listEntity.DataList;
                if (hospitalList != null && hospitalList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        hospitalBll.AddHospitals(hospitalList);
                        var log = string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条医疗机构信息.【{4}】", dateTimeM.ToString("yyyy-MM"),
                                                i, listEntity.TotalPageCount, hospitalList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId);
                        FlashLogger.Warn(log);
                        hospitalList = hospitalBll.GetHospitals("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                    }
                }
                dateTimeM = dateTimeM.AddMonths(-1);
            }
            FlashLogger.Error(string.Format("下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            //测试
            var hospitalIdList = new List <object>
            {
                new { hospitalId = "12319" },
                new { hospitalId = "2" },
                new { hospitalId = "10679" }
            };
            var hospitalIds = JsonConvert.SerializeObject(new { list = hospitalIdList });
            var checkList   = hospitalBll.CheckExist(hospitalIds);
        }
Exemple #10
0
        public void Execute(IJobExecutionContext context)
        {
            IProcurecatalogBLL    procurecatalogBll  = new ProcurecatalogBLL();
            List <Procurecatalog> procurecatalogList = null;
            DateTime dateTimeM = DateTime.Now;

            FlashLogger.Error(string.Format("下载商品信息【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = procurecatalogBll.GetProcurecatalogs("", dateTimeM.ToString("yyyy-MM"), "1");
                if (listEntity == null)
                {
                    break;
                }
                procurecatalogList = listEntity.DataList;
                if (procurecatalogList != null && procurecatalogList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        procurecatalogBll.AddProcurecatalogs(procurecatalogList);
                        FlashLogger.Warn(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条商品信息.【{4}】", dateTimeM.ToString("yyyy-MM"),
                                                       i, listEntity.TotalPageCount, procurecatalogList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId));
                        procurecatalogList = procurecatalogBll.GetProcurecatalogs("", dateTimeM.ToString("yyyy-MM"), (i + 1).ToString()).DataList;
                    }
                }
                dateTimeM = dateTimeM.AddMonths(-1);
            }
            FlashLogger.Error(string.Format("下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            //测试
            var procurecatalogIdList = new List <object>
            {
                new { procurecatalogId = 12319 },
                new { procurecatalogId = 2 },
                new { procurecatalogId = 10679 }
            };
            var procurecatalogIds = JsonConvert.SerializeObject(new { list = procurecatalogIdList });
            var checkList         = procurecatalogBll.CheckExist(procurecatalogIds);
        }
Exemple #11
0
        public void Execute(IJobExecutionContext context)
        {
            IPurchaseOrderBLL orderBll  = new PurchaseOrderBLL();
            List <Order>      orderList = null;
            DateTime          dateTimeM = DateTime.Now;

            FlashLogger.Error(string.Format("下载采购订单【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            while (dateTimeM > Convert.ToDateTime("2016-03-01"))
            {
                var listEntity = orderBll.GetOrders(TimeHelper.GetStartDateTime(dateTimeM),
                                                    TimeHelper.GetEndDateTime(dateTimeM), "1");
                if (listEntity == null)
                {
                    break;
                }
                orderList = listEntity.DataList;
                if (orderList != null && orderList.Count > 0)
                {
                    for (int i = 1; i <= listEntity.TotalPageCount; i++)
                    {
                        orderBll.AddOrders(orderList);
                        FlashLogger.Warn(string.Format("{0} : 第{1}页/共{2}页 成功下载 {3} 条采购订单信息.【{4}】", dateTimeM.ToString("yyyy-MM-dd"),
                                                       i, listEntity.TotalPageCount, orderList.Count, System.Threading.Thread.CurrentThread.ManagedThreadId));
                        orderList = orderBll.GetOrders(TimeHelper.GetStartDateTime(dateTimeM),
                                                       TimeHelper.GetEndDateTime(dateTimeM), (i + 1).ToString()).DataList;
                    }
                }
                //else
                //{
                //    FlashLogger.Warn(string.Format("{0} : 无采购订单信息.【{1}】", dateTimeM.ToString("yyyy-MM-dd"),
                //            System.Threading.Thread.CurrentThread.ManagedThreadId));
                //}
                dateTimeM = dateTimeM.AddDays(-1);
                //System.Threading.Thread.Sleep(3000);
            }
            FlashLogger.Error(string.Format("采购订单下载完毕【{0}】", System.Threading.Thread.CurrentThread.ManagedThreadId));
            //测试
        }
Exemple #12
0
        /**
         * 启动接收
         */
        public bool Start()
        {
            if (!isStart || !isSucess)
            {
                FlashLogger.Warn("已经关闭的监听或监听端口不能使用");
                return(false);
            }
            Thread serverThread = new Thread(() =>
            {
                while (isStart)
                {
                    try
                    {
                        UDTSocket csocket = server.Accept();
                        try
                        {
                            csocket.GetInputStream().SetLargeRead(islagerRead);
                            csocket.GetInputStream().ResetBufMaster(isRWMaster);
                        }
                        catch (IOException e)
                        {
                            Console.WriteLine(e);
                        }

                        SocketControls.GetInstance().AddSocket(csocket);
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }
            });

            serverThread.IsBackground = true;
            serverThread.Name         = ("judpServer_" + DateTime.Now.Ticks / 10000);
            serverThread.Start();
            return(true);
        }
Exemple #13
0
        public override void Received(IUDTPacket packet, Destination peer)
        {
            lastPacket = packet;

            if (packet is ConnectionHandshake)
            {
                ConnectionHandshake hs = (ConnectionHandshake)packet;
                FlashLogger.Info("Received connection handshake from " + peer + "\n" + hs);
                if (State != ready)
                {
                    if (hs.ConnectionType == 1)
                    {
                        try {
                            //TODO validate parameters sent by peer
                            // long peerSocketID = hs.SocketID;
                            // DestinationID = peerSocketID;
                            // destination(peerSocketID);
                            destination.SocketID = hs.SocketID;
                            SendConfirmation(hs);
                        } catch (Exception ex) {
                            FlashLogger.Warn("Error creating socket", ex);

                            State = invalid;
                        }
                        return;
                    }
                    else
                    {
                        try {
                            //TODO validate parameters sent by peer
                            //理论上这里是getConnectionType==-1
                            // long peerSocketID = hs.getSocketID();
                            // destination.SetSocketID(peerSocketID);
                            // setState(ready);
                            destination.SocketID = hs.SocketID;
                            State = ready;
                            Thread.Sleep(50);
                            //多个握手序列,使用接收的第一个
                            this.initialSequenceNumber = hs.InitialSeqNo;//cd 必须重置
                            socket = new UDTSocket(endPoint, this);
                        } catch (Exception ex) {
                            FlashLogger.Warn("Error creating socket", ex);

                            State = invalid;
                        }
                        return;
                    }
                }
            }

            if (State == ready)
            {
                if (packet is Shutdown)
                {
                    State  = shutdown;
                    active = false;
                    FlashLogger.Info("Connection shutdown initiated by the other side.");
                    return;
                }
                active = true;
                try {
                    if (packet.ForSender())
                    {
                        socket.GetSender().Receive(lastPacket);
                    }
                    else
                    {
                        socket.GetReceiver().Receive(lastPacket);
                    }
                } catch (Exception ex) {
                    //session is invalid
                    FlashLogger.Error("Error in " + toString(), ex);
                    //setState(invalid);
                    State = invalid;
                }
                return;
            }
        }
Exemple #14
0
        /**
         * single receive, run in the receiverThread, see {@link #start()}
         * <ul>
         * <li>Receives UDP packets from the network</li>
         * <li>Converts them to UDT packets</li>
         * <li>dispatches the UDT packets according to their destination ID.</li>
         * </ul>
         * @throws IOException
         */


        protected void DoReceive()
        {
            EndPoint remotePoint = new IPEndPoint(IPAddress.Any, 0);

            while (!stopped)
            {
                try
                {
                    try
                    {
                        //v.end();

                        //will block until a packet is received or timeout has expired

                        int len = dgSocket.ReceiveFrom(dp, ref remotePoint);

                        //v.begin();

                        Destination peer   = new Destination(remotePoint);
                        IUDTPacket  packet = PacketFactory.CreatePacket(dp, len);
                        lastPacket = packet;

                        //handle connection handshake
                        if (packet.IsConnectionHandshake())
                        {
                            lock (lock_obj)
                            {
                                long       id      = packet.DestinationID;
                                UDTSession session = null;
                                sessions.TryGetValue(id, out session);
                                if (session == null)
                                {
                                    session = new ServerSession((IPEndPoint)remotePoint, this);
                                    AddSession(session.SocketID, session);
                                    //TODO need to check peer to avoid duplicate server session
                                    if (serverSocketMode)
                                    {
                                        FlashLogger.Info("Pooling new request.");
                                        sessionHandoff.Add(session);
                                        FlashLogger.Info("Request taken for processing.");
                                    }
                                }
                                peer.SocketID = ((ConnectionHandshake)packet).SocketID;
                                session.Received(packet, peer);
                            }
                        }
                        else
                        {
                            //dispatch to existing session
                            long       dest = packet.DestinationID;
                            UDTSession session;
                            if (dest == lastDestID)
                            {
                                session = lastSession;
                            }
                            else
                            {
                                // session =
                                sessions.TryGetValue(dest, out session);//cd 获取session
                                lastSession = session;
                                lastDestID  = dest;
                            }
                            if (session == null)
                            {
                                n++;
                                if (n % 100 == 1)
                                {
                                    FlashLogger.Warn("Unknown session <" + dest + "> requested from <" + peer + "> packet type " + packet);
                                }
                            }
                            else
                            {
                                Console.WriteLine("收到包");
                                session.Received(packet, peer);
                            }
                        }
                    }
                    catch (SocketException ex)
                    {
                        if (ex.Message.Equals("socket closed") && stopped)
                        {
                            //cd
                            //已经正常关闭
                        }
                        else
                        {
                            FlashLogger.Info("SocketException: " + ex.Message);
                        }
                    }
                    catch (Exception ste)
                    {
                        //can safely ignore... we will retry until the endpoint is stopped
                    }
                }
                catch (Exception ex)
                {
                    FlashLogger.Warn("Got: " + ex.Message, ex);
                }
            }
        }
Exemple #15
0
        public override void Received(IUDTPacket packet, Destination peer)
        {
            lastPacket = packet;
            if (packet is ConnectionHandshake)
            {
                ConnectionHandshake connectionHandshake = (ConnectionHandshake)packet;
                FlashLogger.Info("Received " + connectionHandshake);


                if (State <= ready)
                {
                    destination.SocketID = connectionHandshake.SocketID;
                    if (State <= handshaking)
                    {
                        State = handshaking;
                    }
                    try {
                        HandleHandShake(connectionHandshake);
                        n_handshake++;
                        try {
                            //理论上应该先检验cookie

                            State  = ready;
                            socket = new UDTSocket(endPoint, this);
                            cc.Init();
                        } catch (Exception uhe) {
                            //session is invalid

                            FlashLogger.Error("", uhe);

                            State = invalid;
                        }
                    } catch (IOException ex) {
                        //session invalid

                        FlashLogger.Warn("Error processing ConnectionHandshake", ex);

                        State = invalid;
                    }
                    return;
                }
                else
                {
                    //cd  回复
                    try {
                        HandleHandShake(connectionHandshake);
                    } catch (IOException e) {
                    }
                }
            }
            else if (packet is KeepAlive)
            {
                socket.GetReceiver().ResetEXPTimer();
                active = true;
                return;
            }

            if (State == ready)
            {
                active = true;

                if (packet is KeepAlive)
                {
                    //nothing to do here
                    return;
                }
                else if (packet is Shutdown)
                {
                    try {
                        socket.GetReceiver().Stop();
                    } catch (IOException ex) {
                        FlashLogger.Warn("", ex);
                    }
                    State = shutdown;
                    Console.WriteLine("SHUTDOWN ***");
                    active = false;
                    FlashLogger.Info("Connection shutdown initiated by the other side.");
                    return;
                }

                else
                {
                    try {
                        Console.WriteLine("收到数据包");
                        if (packet.ForSender())
                        {
                            socket.GetSender().Receive(packet);
                        }
                        else
                        {
                            socket.GetReceiver().Receive(packet);
                        }
                    } catch (Exception ex) {
                        //session invalid
                        FlashLogger.Error("", ex);
                        State = invalid;
                        // setState(invalid);
                    }
                }
                return;
            }
        }