Example #1
0
        /// <summary>
        /// Validate the XmlNode with WFnode schema
        /// </summary>
        /// <param name="handler">The handler that XmlDocument.Validate() call if the xml is not valid</param>
        public bool Validate(ValidationEventHandler handler)
        {
            if (nodeIstance == null)
            {
                throw new InvalidOperationException("This is not a node instance");
            }

            errorHandler eh = new errorHandler(handler);

            XmlSchemaSet allSchemas = new XmlSchemaSet();

            allSchemas.Add(nodeSchemas);
            allSchemas.Add(myBaseTypes);

            XmlSchema elementSchema = new XmlSchema();

            XmlSchemaElement elm = new XmlSchemaElement();

            elm.Name           = nodeTypeName;
            elm.SchemaTypeName = new XmlQualifiedName(nodeTypeName);
            elementSchema.Items.Add(elm);

            allSchemas.Add(elementSchema);

            nodeIstance.Schemas = allSchemas;

            nodeIstance.Validate(eh.handlerError);

            return(eh.valid);
        }
Example #2
0
 public Form1()
 {
     InitializeComponent();
     msgHandler   = this.dataRefresh;
     errorHandler = this.errorRefresh;
     //全螢幕
     //this.FormBorderStyle = FormBorderStyle.None;
     //this.WindowState = FormWindowState.Maximized;
     //this.TopMost = true;
 }
Example #3
0
        public Shutdown(TCPWrapper MyTCPWrapper, MessageParser MyMessageParser, MySqlManager MyMySqlManager, errorHandler MyErrorHandler)
        {
            TheTCPWrapper         = MyTCPWrapper;
            this.TheMessageParser = MyMessageParser;
            this.TheMySqlManager  = MyMySqlManager;
            this.TheErrorHandler  = MyErrorHandler;

            ShutdownTimer.Interval = MainClass.ONE_MINUTE;
            ShutdownTimer.Elapsed += new ElapsedEventHandler(ShutdownTimer_Tick);

            TheTCPWrapper.GotConnected    += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #4
0
        public Shutdown(TCPWrapper MyTCPWrapper, MessageParser MyMessageParser, MySqlManager MyMySqlManager, errorHandler MyErrorHandler)
        {
            TheTCPWrapper = MyTCPWrapper;
            this.TheMessageParser = MyMessageParser;
            this.TheMySqlManager = MyMySqlManager;
            this.TheErrorHandler = MyErrorHandler;

            ShutdownTimer.Interval=MainClass.ONE_MINUTE;
            ShutdownTimer.Elapsed += new ElapsedEventHandler(ShutdownTimer_Tick);

            TheTCPWrapper.GotConnected += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #5
0
 public void connect(StrHandler pHandler, errorHandler eHandler)
 {
     try
     {
         inHandler    = pHandler;
         errorHandler = eHandler;
         myTcpClient.Connect(myIpEndPoint);
         myTcpClient.ReceiveTimeout = 1000;
         myTcpClient.SendTimeout    = 1000;
         workState = true;
     }
     catch (Exception ex)
     { MessageBox.Show(ex.ToString()); }
 }
Example #6
0
        public HouseKeepingHandler(TCPWrapper MyTCPWrapper, MySqlManager MyMySqlManager, Logger MyLogger, errorHandler MyErrorHandler)
        {
            this.TheLogger       = MyLogger;
            this.TheMySqlManager = MyMySqlManager;
            this.TheTCPWrapper   = MyTCPWrapper;
            this.TheErrorHandler = MyErrorHandler;

            TheTCPWrapper   = MyTCPWrapper;
            TheMySqlManager = MyMySqlManager;
            TheLogger.Debug("New HouseKeepingTimer.Interval: " + this.HouseKeepingTimer.Interval + "\n");

            HouseKeepingTimer.Elapsed     += new ElapsedEventHandler(HouseKeepingTimer_Tick);
            TheTCPWrapper.GotConnected    += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #7
0
        public HouseKeepingHandler(TCPWrapper MyTCPWrapper, MySqlManager MyMySqlManager, Logger MyLogger, errorHandler MyErrorHandler)
        {
            this.TheLogger = MyLogger;
            this.TheMySqlManager = MyMySqlManager;
            this.TheTCPWrapper = MyTCPWrapper;
            this.TheErrorHandler = MyErrorHandler;

            TheTCPWrapper = MyTCPWrapper;
            TheMySqlManager = MyMySqlManager;
            TheLogger.Debug("New HouseKeepingTimer.Interval: " + this.HouseKeepingTimer.Interval + "\n");

            HouseKeepingTimer.Elapsed += new ElapsedEventHandler(HouseKeepingTimer_Tick);
            TheTCPWrapper.GotConnected += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #8
0
        public AltAdvertHandler(TCPWrapper MyTCPWrapper, MySqlManager MyMySqlManager, Logger MyLogger, TradeHandler MyTradeHandler, Inventory MyInventory, errorHandler MyErrorHandler)
        {
            Random RandomClass = new Random();
            int    i;

            this.TheLogger       = MyLogger;
            this.TheMySqlManager = MyMySqlManager;
            this.TheTCPWrapper   = MyTCPWrapper;
            this.TheTradeHandler = MyTradeHandler;
            this.TheInventory    = MyInventory;
            this.TheErrorHandler = MyErrorHandler;

            TheTCPWrapper   = MyTCPWrapper;
            TheMySqlManager = MyMySqlManager;
            uint altadvertchannel = TheMySqlManager.altadvertchannel(Settings.botid);

            this.AltAdvertTimer.Interval = 900000;
            if (TheMySqlManager.altadvertise())
            {
                this.AltAdvertTimer.Interval = 1000;
                if (altadvertchannel != 99999999)
                {
                    if (TheMySqlManager.lastaltadverttime(Settings.botid) <= TheMySqlManager.minaltadverttime())
                    {
                        i  = TheMySqlManager.minaltadverttime() * 1000;
                        i += (RandomClass.Next(0, TheMySqlManager.randomaltadvertdelay()) * 1000);
                        if (i < 900000)
                        {
                            i = 900000;//minimum 15 minute delay
                        }
                        this.AltAdvertTimer.Interval = i;
                    }
                }
            }

            TheLogger.Debug("New AltAdvertTimer.Interval: " + this.AltAdvertTimer.Interval + "\n");

            if (altadvertchannel != 99999999 && TheMySqlManager.lastaltadverttime(Settings.botid) < TheMySqlManager.minaltadverttime() && MainClass.serverName != "test")
            {
                return;
            }

            AltAdvertTimer.Elapsed        += new ElapsedEventHandler(AltAdvertTimer_Tick);
            TheTCPWrapper.GotConnected    += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #9
0
        public AdvertHandler(TCPWrapper MyTCPWrapper, MySqlManager MyMySqlManager, Logger MyLogger, TradeHandler MyTradeHandler, Inventory MyInventory, errorHandler MyErrorHandler)
        {
            Random RandomClass = new Random();
            int    i;

            this.TheLogger       = MyLogger;
            this.TheMySqlManager = MyMySqlManager;
            this.TheTCPWrapper   = MyTCPWrapper;
            this.TheTradeHandler = MyTradeHandler;
            this.TheInventory    = MyInventory;
            this.TheErrorHandler = MyErrorHandler;

            TheTCPWrapper             = MyTCPWrapper;
            TheMySqlManager           = MyMySqlManager;
            TheTCPWrapper.GotCommand += new TCPWrapper.GotCommandEventHandler(OnGotCommand);
            if (TheMySqlManager.advertise())
            {
                this.AdvertTimer.Interval = 1000;
                if (TheMySqlManager.advertchannel(Settings.botid) != 99999999)
                {
                    //if (TheMySqlManager.lastadverttime(Settings.botid) + TheMySqlManager.minadverttime() <= DateTime.Now )
                    if (TheMySqlManager.lastadverttime(Settings.botid) <= TheMySqlManager.minadverttime())
                    {
                        i  = TheMySqlManager.minadverttime() * 1000;
                        i += (RandomClass.Next(0, TheMySqlManager.randomadvertdelay()) * 1000);
                        if (i < 900000)
                        {
                            i = 900000;//minimum 15 minute delay
                        }
                        this.AdvertTimer.Interval = i;
                    }
                }
            }
            else
            {
                this.AdvertTimer.Interval = 900000;
            }

            TheLogger.Debug("New AdvertTimer.Interval: " + this.AdvertTimer.Interval + "\n");

            AdvertTimer.Elapsed           += new ElapsedEventHandler(AdvertTimer_Tick);
            TheTCPWrapper.GotConnected    += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #10
0
        public AdvertHandler(TCPWrapper MyTCPWrapper, MySqlManager MyMySqlManager, Logger MyLogger, TradeHandler MyTradeHandler, Inventory MyInventory, errorHandler MyErrorHandler)
        {
            Random RandomClass = new Random();
            int i;
            this.TheLogger = MyLogger;
            this.TheMySqlManager = MyMySqlManager;
            this.TheTCPWrapper = MyTCPWrapper;
            this.TheTradeHandler = MyTradeHandler;
            this.TheInventory = MyInventory;
            this.TheErrorHandler = MyErrorHandler;

            TheTCPWrapper = MyTCPWrapper;
            TheMySqlManager = MyMySqlManager;
            TheTCPWrapper.GotCommand += new TCPWrapper.GotCommandEventHandler(OnGotCommand);
            if (TheMySqlManager.advertise())
            {
                this.AdvertTimer.Interval = 1000;
                if (TheMySqlManager.advertchannel(Settings.botid) != 99999999)
                {
                    //if (TheMySqlManager.lastadverttime(Settings.botid) + TheMySqlManager.minadverttime() <= DateTime.Now )
                    if (TheMySqlManager.lastadverttime(Settings.botid) <= TheMySqlManager.minadverttime())
                    {
                        i = TheMySqlManager.minadverttime() * 1000;
                        i += (RandomClass.Next(0, TheMySqlManager.randomadvertdelay()) * 1000);
                        if (i < 900000)
                            i = 900000;//minimum 15 minute delay
                        this.AdvertTimer.Interval = i;
                    }
                }
            }
            else
            {
                this.AdvertTimer.Interval = 900000;
            }

            TheLogger.Debug("New AdvertTimer.Interval: " + this.AdvertTimer.Interval + "\n");

            AdvertTimer.Elapsed += new ElapsedEventHandler(AdvertTimer_Tick);
            TheTCPWrapper.GotConnected += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }
Example #11
0
        public AltAdvertHandler(TCPWrapper MyTCPWrapper, MySqlManager MyMySqlManager, Logger MyLogger, TradeHandler MyTradeHandler, Inventory MyInventory, errorHandler MyErrorHandler)
        {
            Random RandomClass = new Random();
            int i;
            this.TheLogger = MyLogger;
            this.TheMySqlManager = MyMySqlManager;
            this.TheTCPWrapper = MyTCPWrapper;
            this.TheTradeHandler = MyTradeHandler;
            this.TheInventory = MyInventory;
            this.TheErrorHandler = MyErrorHandler;

            TheTCPWrapper = MyTCPWrapper;
            TheMySqlManager = MyMySqlManager;
            uint altadvertchannel = TheMySqlManager.altadvertchannel(Settings.botid);
            this.AltAdvertTimer.Interval = 900000;
            if (TheMySqlManager.altadvertise())
            {
                this.AltAdvertTimer.Interval = 1000;
                if (altadvertchannel != 99999999)
                {
                    if (TheMySqlManager.lastaltadverttime(Settings.botid) <= TheMySqlManager.minaltadverttime())
                    {
                        i = TheMySqlManager.minaltadverttime() * 1000;
                        i += (RandomClass.Next(0, TheMySqlManager.randomaltadvertdelay()) * 1000);
                        if (i < 900000)
                            i = 900000;//minimum 15 minute delay
                        this.AltAdvertTimer.Interval = i;
                    }
                }
            }

            TheLogger.Debug("New AltAdvertTimer.Interval: " + this.AltAdvertTimer.Interval + "\n");

            if (altadvertchannel != 99999999 && TheMySqlManager.lastaltadverttime(Settings.botid) < TheMySqlManager.minaltadverttime() && MainClass.serverName != "test")
                return;

            AltAdvertTimer.Elapsed += new ElapsedEventHandler(AltAdvertTimer_Tick);
            TheTCPWrapper.GotConnected += new TCPWrapper.GotConnectedEventHandler(OnGotConnected);
            TheTCPWrapper.GotDisconnected += new TCPWrapper.GotDisconnectedEventHandler(OnGotDisconnected);
        }