Exemplo n.º 1
0
 public ViewWorker(int workerId, string workerName, WorkerProcess workerProcess)
 {
     InitializeComponent();
     lblTitle.Text = WorkerName = workerName;
     WorkerId = workerId;
     this.workerProcess = workerProcess;
 }
Exemplo n.º 2
0
        public static string DownloadAsString(WorkerProcess wp, string url, ref Encoding resolvedEncoding)
        {
            using (MyWebClient wc = new MyWebClient())
            {
                if (wp != null)
                {
                    wc.DownloadProgressChanged += (s, e) =>
                    {
                        wp.ReportProgress((int)((100 * e.BytesReceived) / e.TotalBytesToReceive));
                    };
                }

                wc.Encoding = Encoding.ASCII;

                //wc.Headers["Connection"] = "keep-alive";
                wc.Headers["Cache-Control"] = "max-age=0";
                wc.Headers["Accept"] = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
                wc.Headers["User-Agent"] = "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)";
                //wc.Headers["Accept-Encoding"] = "gzip,deflate,sdch";
                wc.Headers["Accept-Language"] = "tr,en;q=0.8,en-US;q=0.6";

                byte[] bytes = wc.DownloadData(url);

                string pageEncoding = "";
                resolvedEncoding = Encoding.UTF8;
                if (!string.IsNullOrWhiteSpace(wc.ResponseHeaders[HttpResponseHeader.ContentEncoding]))
                    pageEncoding = wc.ResponseHeaders[HttpResponseHeader.ContentEncoding];
                else if (!string.IsNullOrWhiteSpace(wc.ResponseHeaders[HttpResponseHeader.ContentType]))
                    pageEncoding = getCharacterSet(wc.ResponseHeaders[HttpResponseHeader.ContentType]);

                if (pageEncoding == "")
                    pageEncoding = getCharacterSet(bytes);

                if (pageEncoding != "")
                {
                    try
                    {
                        resolvedEncoding = Encoding.GetEncoding(pageEncoding);
                    }
                    catch
                    {
                        //throw new Exception("Invalid encoding: " + pageEncoding);
                    }
                }

                return resolvedEncoding.GetString(bytes);

                //return Encoding.UTF8.GetString(Encoding.Convert(wc.Encoding, Encoding.UTF8, bytes));
            }
        }
Exemplo n.º 3
0
 public InternalWorkerProcess(BackgroundWorker backgroundWorker, WorkerProcess workerProcess)
 {
     this.backgroundWorker = backgroundWorker;
     this.db = workerProcess.GetNewDatabaseInstance();
     this.workerProcess = workerProcess;
     workerProcess.ReportProgress = this.ReportProgress;
     workerProcess.Log = this.Log;
 }
Exemplo n.º 4
0
        public void Start()
        {
            if (WorkerProcessType == null)
            {
                MessageBox.Show("ViewWorkersFarm.WorkerProcess property cannot be NULL!");
                return;
            }

            WorkerProcess = (WorkerProcess)Activator.CreateInstance(WorkerProcessType);

            db = WorkerProcess.GetNewDatabaseInstance();

            // ensure tables existance
            db.Read(WorkerProcess.GetQueueDataType(), 1);
            db.Read(WorkerProcess.GetQueueType(), 1);
            db.Read(WorkerProcess.GetWorkerType(), 1);

            db.ExecuteNonQuery("update Job set Status='New' where Status='Processing';");

            refreshWorkers(true);

            running = true;
        }