Beispiel #1
0
        public void Save()
        {
            if (uid == -1)
            {
                savePC();
                return;
            }
            else if (uid == -2)
            {
                return;
            }

            lock (DB.Instance.SyncRoot)
            {
                if (Exists())
                {
                    DB.Instance.Execute(GetDBUpdateString());
                }
                else
                {
                    SQLite.NET.SQLiteResultSet result = DB.Instance.ExecuteWithoutLock("SELECT MAX(uid)+1 FROM {0}", TABLE_NAME);
                    if (result.Rows.Count > 0)
                    {
                        uid = MediaPortal.Database.DatabaseUtility.GetAsInt(result, 0, 0);
                    }
                    else
                    {
                        uid = 0;
                    }

                    DB.Instance.ExecuteWithoutLock(GetDBInsertString());
                    DefaultProfile.EmulatorID = uid;
                    DefaultProfile.Save();
                }
            }
        }