Ejemplo n.º 1
0
        public static SQLiteTableMeta GetMeta <T>(SQLiteConnection connection)
        {
            string metaString = connection.prefix + typeof(T).Name + TableMetaExtension;

            var item = SQLiteStorageModes.GetItem(metaString, connection.StorageMode);

            if (item == null)
            {
                var newMeta = createMeta <T>(metaString, connection);

                memoryTableMeta.Add(metaString, newMeta);

                return(newMeta);
            }
            else
            {
                SQLiteTableMeta oldMeta = null;
                // if there is an exception...
                if (memoryTableMeta.ContainsKey(metaString))
                {
                    oldMeta = memoryTableMeta[metaString];
                }
                else
                {
                    oldMeta = JsonConvert.DeserializeObject <SQLiteTableMeta>(item);

                    memoryTableMeta.Add(metaString, oldMeta);
                }

                oldMeta._innerConnection = connection;
                oldMeta._metaString      = metaString;
                return(oldMeta);
            }
        }
Ejemplo n.º 2
0
 public void Save()
 {
     SQLiteStorageModes.SetItem(_metaString, JsonConvert.SerializeObject(this), this._innerConnection.StorageMode);
 }
Ejemplo n.º 3
0
 private void setTable <T>(List <T> rows)
 {
     SQLiteStorageModes.SetItem(prefix + typeof(T).Name, JsonConvert.SerializeObject(rows), StorageMode);
 }
Ejemplo n.º 4
0
 private string getTable <T>()
 {
     return(SQLiteStorageModes.GetItem(prefix + typeof(T).Name, StorageMode));
 }