internal async Task EnsureStores(IObjectStore parentStore, LocalRecordStoreTable recordStoreTable)
        {
            m_root = await parentStore.CreateChildStoreAsync(m_record.ID);

            IObjectStore child;

            child = await m_root.CreateChildStoreAsync("Data");

            LocalItemStore itemStore = new LocalItemStore(child, (recordStoreTable != null) ? recordStoreTable.ItemCache : null);

            child = await m_root.CreateChildStoreAsync("Changes");

            RecordItemChangeTable changeTable = new RecordItemChangeTable(child, null);

            m_dataStore = new SynchronizedStore(m_record, itemStore, changeTable);

            child = await m_root.CreateChildStoreAsync("Metadata");

            m_metadataStore = new LocalStore(child);

            child = await m_root.CreateChildStoreAsync("Blobs");

            m_blobs = new LocalStore(child);

            m_synchronizedTypes = new SynchronizedTypeManager(this);
        }
 internal SynchronizedType(SynchronizedTypeManager typeManager, string typeID)
 {
     m_typeID = typeID;
     m_typeManager = typeManager;
     m_lock = new CrossThreadLock(false);
 }
示例#3
0
 internal SynchronizedType(SynchronizedTypeManager typeManager, string typeID)
 {
     m_typeID      = typeID;
     m_typeManager = typeManager;
     m_lock        = new CrossThreadLock(false);
 }