Example #1
0
        private async void ieee_Load(object sender, EventArgs e)
        {
            ToolTip ToolTip1 = new ToolTip();
            ToolTip1.SetToolTip(this.searchBox, "Enter search term, then press ENTER to search\nTo see the whole database just press ENTER without entering anything.");
            configurationData = await Configuration.Manager.loadConfigurationAsync();

            this.recordsData = await Records.Loader.loadAsync(configurationData, false, recordLoaderCallback);
        }
Example #2
0
 private async Task loadRecordsDataAsync(Boolean Refresh)
 {
     try
     {
         recordsData = await Records.Loader.loadAsync(configurationData, Refresh, recordLoaderCallback);
     }
     catch
     {
         IUICommand Result = await messageBox(getResourceString("MainPage_ErrorHeader"), getResourceString("MainPage_ErrorDownload"));
         statusFooter.Text = getResourceString("MainPage_RecordLoaderError");
     }
 }
Example #3
0
        private async void ConfigurationDialogCallback()
        {
            if (this.InvokeRequired)
            {
                ConfigurationDialog.Callback d = new ConfigurationDialog.Callback(ConfigurationDialogCallback);
                this.Invoke(d, new object[] { });
            }
            else {
                recordsData = null;

                this.recordsData = await Records.Loader.loadAsync(configurationData, true, recordLoaderCallback);
            }
        }
Example #4
0
        public static async Task<Data> loadAsync(Configuration.Data configuration, Boolean doReset, Callback callback)
        {
            Int32 Count = 0;
            List<Configuration.Manager.DatabaseInfo> databasesInfo = new List<Configuration.Manager.DatabaseInfo>();
            Data ieeeRecordData = new Data();

            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_MAL));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_MAM));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_MAS));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_IAB));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_CID));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_Ethertype));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_Manufacturer));
            databasesInfo.Add(Configuration.Manager.getDatabaseInfo(ref configuration, Configuration.Manager.ConfigurationElements.IEEE_Operator));

            if (callback != null)
                callback(States.start, Count, databasesInfo.Count, ieeeRecordData.Count());

            foreach (Configuration.Manager.DatabaseInfo databaseInfo in databasesInfo)
            {
                if (callback != null)
                    callback(States.update, Count++ +1, databasesInfo.Count, ieeeRecordData.Count());
                PCLStorage.IFile file = null;
                try
                {
                    if (doReset)
                        throw new PCLStorage.Exceptions.FileNotFoundException("Resetting database");

                    file = await PCLStorage.FileSystem.Current.RoamingStorage.GetFileAsync(databaseInfo.fileName);

                    using (Stream stream = await file.OpenAsync(PCLStorage.FileAccess.Read))
                    {
                        Byte[] b = new Byte[stream.Length];

                        if (stream.Read(b, 0, b.Length) > 0)
                            ieeeRecordData.Add(b.GetString());
                    }
                }
                catch
                {

                    using (HttpClient client = new HttpClient())
                    {
                        String payLoad = await client.GetStringAsync(databaseInfo.Uri);
                        ieeeRecordData.Add(payLoad);

                        file = await PCLStorage.FileSystem.Current.RoamingStorage.CreateFileAsync(databaseInfo.fileName, PCLStorage.CreationCollisionOption.ReplaceExisting);
                        using (Stream stream = await file.OpenAsync(PCLStorage.FileAccess.ReadAndWrite))
                        {
                            Byte[] b = payLoad.GetBytes();
                            stream.Write(b, 0, b.Length);
                        }
                        Configuration.Manager.setTimeStamp(ref configuration);
                    }
                }
            }

            if (callback != null)
                callback(States.done, Count, databasesInfo.Count, ieeeRecordData.Count());

            return (ieeeRecordData);
        }
Example #5
0
        private async void resetButtonClick(object sender, EventArgs e)
        {
            recordsData = null;

            this.recordsData = await Records.Loader.loadAsync(configurationData, true, recordLoaderCallback);
        }