public Task <bool> SignInAsync() { var task = System.Threading.Tasks.Task.Factory.StartNew(() => { var signedIn = false; var hasError = false; FMWW.Component.SignedInEventHandler onSignedIn = null; onSignedIn = (a, b) => { Auth.SignedIn -= onSignedIn; if (b.Error is Exception) { hasError = true; } signedIn = true; }; Auth.SignedIn += onSignedIn; base.SignInAsync(); while (!signedIn) { System.Threading.Thread.Sleep(100); } return(hasError); }); return(task); }
public override void CsvAsync() { Action <string> onDownloadDistributeExportWithCsv = (csv) => { OnCsvDownloadCompleted(csv); }; Action <object> onAjax = (userState) => { DownloadDistributeExportWithCsvAsync(PageContext, onDownloadDistributeExportWithCsv); }; Action <string> onFilterDistributeExport = (html) => { AjaxAsync( FMWW.Core.Helpers.UrlBuilder.Build("/JMODE_ASP/facesAjax/contents/X024_160_DISTRIBUTE_EXPORT/X024_SELECT.jsp"), onAjax); }; Action <string> onReachWebPageDistributeExport = (html) => { FilterDistributeExportAsync(PageContext, onFilterDistributeExport); }; FMWW.Component.SignedInEventHandler onSignedIn = null; onSignedIn = (a, b) => { Auth.SignedIn -= onSignedIn; ReachWebPageDistributeExportAsync(onReachWebPageDistributeExport); }; Auth.SignedIn += onSignedIn; SignInAsync(); }
public override void ExcelAsync() { var address = FMWW.Core.Helpers.UrlBuilder.BuildContentsUrl("S086_SHOP_SALES_REPORT/S086_SELECT.jsp"); #region OnAjax Action <object> OnAjax = null; OnAjax = (userState) => { #region onExcelDownloaded UploadValuesCompletedEventHandler onExcelDownloaded = null; onExcelDownloaded = (object o, UploadValuesCompletedEventArgs arg) => { _Client.UploadValuesCompleted -= onExcelDownloaded; OnExcelDownloadCompleted(arg.Result); }; #endregion _Client.UploadValuesCompleted += onExcelDownloaded; _Client.UploadValuesAsync(address, PageContext.Translate()); }; #endregion #region onUploadValuesCompleted UploadValuesCompletedEventHandler onUploadValuesCompleted = null; onUploadValuesCompleted = (object o, UploadValuesCompletedEventArgs arg) => { _Client.UploadValuesCompleted -= onUploadValuesCompleted; AjaxAsync( FMWW.Core.Helpers.UrlBuilder.Build(address.AbsolutePath.Replace("faces", "facesAjax")), OnAjax); }; #endregion Action <string> OnReached = null; OnReached = (string html) => { Reached -= OnReached; _Client.UploadValuesCompleted += onUploadValuesCompleted; _Client.UploadValuesAsync(address, PageContext.Translate(true)); }; #region onSignedIn FMWW.Component.SignedInEventHandler onSignedIn = null; onSignedIn = (o, arg) => { Auth.SignedIn -= onSignedIn; Reached += OnReached; ReachAsync(); }; #endregion Auth.SignedIn += onSignedIn; SignInAsync(); }
private void Csv(Ref.Context context) { { var client = new FMWW.Http.Client() { CookieContainer = new System.Net.CookieContainer() }; var auth = new FMWW.Core.PC.Authentication(); FMWW.Component.SignedInEventHandler onSignedIn = null; onSignedIn = new FMWW.Component.SignedInEventHandler( (o, arg) => { auth.SignedIn -= onSignedIn; var page = new Ref.Page(client) { PageContext = context }; Action onReached = null; onReached = () => { page.Reached -= onReached; page.CsvAsync(); }; page.Reached += onReached; page.ReachAsync(); Action <string> onCsvDownloadCompleted = null; onCsvDownloadCompleted = (csv) => { page.CsvDownloadCompleted -= onCsvDownloadCompleted; Debug.WriteLine(csv); }; page.CsvDownloadCompleted += onCsvDownloadCompleted; }); auth.SignedIn += onSignedIn; //client.SignInAsync(); } }
private void Excel(Ref.Context context) { // private static void DownloadProductsAsFile(string filename, Core.FMWW.ExternalInterface.Products.Ref.Context context) { var client = new FMWW.Http.Client() { CookieContainer = new System.Net.CookieContainer() }; var auth = new FMWW.Core.PC.Authentication(); FMWW.Component.SignedInEventHandler onSignedIn = null; onSignedIn = new FMWW.Component.SignedInEventHandler( (o, arg) => { auth.SignedIn -= onSignedIn; var page = new Ref.Page(client) { PageContext = context }; Action onReached = null; onReached = () => { page.Reached -= onReached; page.Search(); }; page.Reached += onReached; page.ReachAsync(); Action <FMWW.Http.IPage> onGoneAway = null; onGoneAway = (p) => { // 検索結果一覧画面 page.GoneAway -= onGoneAway; p.ExcelAsync(); Action <byte[]> onExcelDownloadCompleted = null; onExcelDownloadCompleted = (b) => { p.ExcelDownloadCompleted -= onExcelDownloadCompleted; // if ("gzip" == this.ResponseHeaders["Content-Encoding"]) }; p.ExcelDownloadCompleted += onExcelDownloadCompleted; }; page.GoneAway += onGoneAway; // System.Net.UploadValuesCompletedEventHandler onUploadValuesCompleted = null; // onUploadValuesCompleted = (o, args) => // { // client.UploadValuesCompleted -= onUploadValuesCompleted; // var html = Encoding.UTF8.GetString(args.Result); //// completed(html); // }; // client.UploadValuesCompleted += onUploadValuesCompleted; // client.UploadValuesAsync(UrlMainMenu, HttpMethod.Post, MainMenu.CreateDistributeExport().Translate()); // client.ExportDistributesAsync(context, // (csv) => // { // byte[] binary = client.DownloadProductMaster(context); // using (var w = new BinaryWriter(File.OpenWrite(filename))) // { // w.Write(binary); // } // Debug.WriteLine(csv); // onCompleted(csv, userToken); // }); }); auth.SignedIn += onSignedIn; //client.SignInAsync(); } }