public Task <IStorageDictionary <string, object> > SaveAsync(IDictionary <string, object> contents)
        {
            return(taskQueue.Enqueue(toAwait =>
            {
                return toAwait.ContinueWith(_ =>
                {
                    if (storageDictionary == null)
                    {
                        storageDictionary = new StorageDictionary(fileTask.Result);
                    }

                    storageDictionary.Update(contents);
                    return storageDictionary.SaveAsync().OnSuccess(__ => storageDictionary as IStorageDictionary <string, object>);
                }, Parse.ParseClient.DefaultTaskContinuationOptions).Unwrap();
            }, CancellationToken.None));
        }
        public Task <IStorageDictionary <string, object> > LoadAsync()
        {
            return(taskQueue.Enqueue(toAwait =>
            {
                return toAwait.ContinueWith(_ =>
                {
                    if (storageDictionary != null)
                    {
                        return Task.FromResult <IStorageDictionary <string, object> >(storageDictionary);
                    }

                    storageDictionary = new StorageDictionary(fileTask.Result);
                    return storageDictionary.LoadAsync().OnSuccess(__ => storageDictionary as IStorageDictionary <string, object>);
                }, Parse.ParseClient.DefaultTaskContinuationOptions).Unwrap();
            }, CancellationToken.None));
        }
        public Task <IStorageDictionary <string, object> > SaveAsync(IDictionary <string, object> contents)
        {
            return(_taskQueue.Enqueue(toAwait =>
            {
                return toAwait.ContinueWith(_ =>
                {
                    if (_storageDictionary == null)
                    {
                        _storageDictionary = new StorageDictionary(_fileTask.Result);
                    }

                    _storageDictionary.Update(contents);
                    return _storageDictionary.SaveAsync()
                    .OnSuccess(__ => _storageDictionary as IStorageDictionary <string, object>);
                }).Unwrap();
            }, CancellationToken.None));
        }
        public Task <IStorageDictionary <string, object> > LoadAsync()
        {
            return(_taskQueue.Enqueue(toAwait =>
            {
                return toAwait.ContinueWith(_ =>
                {
                    if (_storageDictionary != null)
                    {
                        return Task.FromResult <IStorageDictionary <string, object> >(_storageDictionary);
                    }

                    _storageDictionary = new StorageDictionary(_fileTask.Result);
                    return _storageDictionary.LoadAsync()
                    .OnSuccess(__ => _storageDictionary as IStorageDictionary <string, object>);
                }).Unwrap();
            }, CancellationToken.None));
        }
Exemple #5
0
        static void Main(string[] args)
        {
            if (args.Contains("--preJT"))
            {
                PrepareLibrary();
            }

            var idxCount       = Array.IndexOf(args, "--count");
            var iterationCount = 1;

            if (idxCount != -1 && args.Length >= idxCount + 1)
            {
                int.TryParse(args[idxCount + 1], out iterationCount);
            }

            using (var fs =
                       File.OpenRead(
                           @"C:\Users\Vincent Piquet\source\repos\DBClientFiles.NET\DBClientFiles.NET.Benchmark\Files\WDC2\Achievement.db2")
                   )
            {
                var store = new StorageDictionary <int, Data.WDC2.AchievementEntry>(fs);
                StructureTester.InspectInstance(store.First().Value);
                return;
            }


            //using (var fs = File.OpenRead(@"C:\Users\Vincent Piquet\source\repos\DBClientFiles.NET\DBClientFiles.NET.Benchmark\bin\Release\net472\Data\WDC1\ItemSearchName.db2"))
            //{
            //    // var sl = new StorageList<Data.WDC1.SpellEffectEntry>(fs);
            //    var d = new StorageDictionary<int, Data.WDC1.ItemSearchNameEntry>(fs);
            //}

            TestStructuresInNamespace("DBClientFiles.NET.Data.WDBC", iterationCount);
            TestStructuresInNamespace("DBClientFiles.NET.Data.WDB2", iterationCount);
            TestStructuresInNamespace("DBClientFiles.NET.Data.WDC1", iterationCount);
            TestStructuresInNamespace("DBClientFiles.NET.Data.WDC2", iterationCount);

            Console.WriteLine("Press a key to exit");
            Console.ReadKey();
        }