@Nullable @Override public ContextualStoreImpl openStore(@NotNull String name, @NotNull StoreConfig config, @NotNull Transaction transaction, boolean creationRequired) { return (ContextualStoreImpl) super.openStore(name, config, transaction, creationRequired); }
@NotNull @Override public ContextualStoreImpl openStore(@NotNull String name, @NotNull StoreConfig config, @NotNull Transaction transaction) { return (ContextualStoreImpl) super.openStore(name, config, transaction); }
@Override public void removeStore(@NotNull final String storeName, @NotNull final Transaction txn) { final ReadWriteTransaction t = throwIfReadonly(txn, "Can't remove a store in read-only transaction"); final StoreImpl store = openStore(storeName, StoreConfig.USE_EXISTING, t, false); if (store == null) { throw new ExodusException("Attempt to remove unknown store '" + storeName + '\''); } t.storeRemoved(store); }
@Override public void truncateStore(@NotNull final String storeName, @NotNull final Transaction txn) { final ReadWriteTransaction t = throwIfReadonly(txn, "Can't truncate a store in read-only transaction"); StoreImpl store = openStore(storeName, StoreConfig.USE_EXISTING, t, false); if (store == null) { throw new ExodusException("Attempt to truncate unknown store '" + storeName + '\''); } t.storeRemoved(store); final TreeMetaInfo metaInfoCloned = store.getMetaInfo().clone(allocateStructureId()); store = new StoreImpl(this, storeName, metaInfoCloned); t.storeCreated(store); }