Ejemplo n.º 1
0
        public static void OpenDatastore()
        {
            if (Datastore == null && DBAccountManager.SharedManager.LinkedAccount != null) {
                DBError err;

                Datastore = DBDatastore.OpenDefaultStoreForAccount (DBAccountManager.SharedManager.LinkedAccount, out err);
                Datastore.Sync (out err);
                ContactTable = Datastore.GetTable("Contact");
            }
        }
		public void Init ()
		{
			Console.Write("Init");
			if (store != null)
				return;
			DBError error;
			store = DBDatastore.OpenDefaultStore (DBAccountManager.SharedManager.LinkedAccount, out error);
			DBError error1;
			var sync = store.Sync (out error1);

			store.AddObserver (store, () => {
				Console.Write("AddObserver");

				DBError error2;
				store.Sync(out error2); // needed?

				var table = store.GetTable (tableName);
				var results = table.Query (null, out error);

				Console.WriteLine(results.Length);

				ProccessResults (results);
			});


			// TIMER TO AUTOUPDATE
			AutoUpdating = true;

			store.BeginInvokeOnMainThread(()=>{
				timer = NSTimer.CreateRepeatingScheduledTimer(2,()=>{
					if(!AutoUpdating)
						return;
					//Console.WriteLine("AutoUpdating"); // SPAM
					DBError error3;
					store.Sync(out error3);
				});
			});

		}