Search in sources :

Example 1 with DefaultSplitBlobStore

use of org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore in project jackrabbit-oak by apache.

the class SplitBlobStoreService method registerSplitBlobStore.

private void registerSplitBlobStore() {
    if (oldBlobStore == null && oldBlobStoreType == BlobStoreType.EXTERNAL) {
        log.info("No BlobStore with ({}=old)", PROP_SPLIT_BLOBSTORE);
        return;
    }
    if (newBlobStore == null) {
        log.info("No BlobStore with ({}=new)", PROP_SPLIT_BLOBSTORE);
        return;
    }
    if (reg != null) {
        log.info("SplitBlobStore already registered");
        return;
    }
    if (ctx == null) {
        log.info("Component not activated yet");
        return;
    }
    log.info("Registering SplitBlobStore with old={} ({}) and new={}", oldBlobStore, oldBlobStoreType, newBlobStore);
    BlobStore blobStore;
    if (oldBlobStoreType == EXTERNAL || oldBlobStoreType == SEGMENT) {
        blobStore = new DefaultSplitBlobStore(homeDir, oldBlobStore, newBlobStore);
    } else if (oldBlobStoreType == DOCUMENT) {
        blobStore = new WrappingSplitBlobStore(homeDir, newBlobStore);
    } else {
        throw new IllegalStateException("Illegal blob store type value: " + oldBlobStoreType);
    }
    Dictionary<String, Object> props = new Hashtable<String, Object>();
    props.put("service.pid", "org.apache.jackrabbit.oak.spi.blob.split.SplitBlobStore");
    reg = ctx.registerService(new String[] { BlobStore.class.getName() }, blobStore, props);
}
Also used : DefaultSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore) Hashtable(java.util.Hashtable) WrappingSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.WrappingSplitBlobStore) DefaultSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore) BlobStore(org.apache.jackrabbit.oak.spi.blob.BlobStore) WrappingSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.WrappingSplitBlobStore)

Example 2 with DefaultSplitBlobStore

use of org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore in project jackrabbit-oak by apache.

the class AbstractMigratorTest method setup.

@Before
public void setup() throws CommitFailedException, IllegalArgumentException, IOException {
    Path target = FileSystems.getDefault().getPath("target");
    repository = java.nio.file.Files.createTempDirectory(target, "migrate-").toFile();
    BlobStore oldBlobStore = createOldBlobStore(repository);
    NodeStore originalNodeStore = createNodeStore(oldBlobStore, repository);
    createContent(originalNodeStore);
    closeNodeStore();
    newBlobStore = createNewBlobStore(repository);
    DefaultSplitBlobStore splitBlobStore = new DefaultSplitBlobStore(repository.getPath(), oldBlobStore, newBlobStore);
    nodeStore = createNodeStore(splitBlobStore, repository);
    migrator = new BlobMigrator(splitBlobStore, nodeStore);
}
Also used : Path(java.nio.file.Path) NodeStore(org.apache.jackrabbit.oak.spi.state.NodeStore) DefaultSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore) DefaultSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore) BlobStore(org.apache.jackrabbit.oak.spi.blob.BlobStore) Before(org.junit.Before)

Example 3 with DefaultSplitBlobStore

use of org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore in project jackrabbit-oak by apache.

the class SplitBlobStoreTest method setup.

@Before
public void setup() throws IOException {
    repository = Files.createTempDir();
    oldBlobStore = new FileBlobStore(repository.getPath() + "/old");
    newBlobStore = new FileBlobStore(repository.getPath() + "/new");
    splitBlobStore = new DefaultSplitBlobStore(repository.getPath(), oldBlobStore, newBlobStore);
    oldBlobIds = addBlobs(oldBlobStore);
    newBlobIds = addBlobs(splitBlobStore);
}
Also used : DefaultSplitBlobStore(org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore) FileBlobStore(org.apache.jackrabbit.oak.spi.blob.FileBlobStore) Before(org.junit.Before)

Aggregations

DefaultSplitBlobStore (org.apache.jackrabbit.oak.spi.blob.split.DefaultSplitBlobStore)3 BlobStore (org.apache.jackrabbit.oak.spi.blob.BlobStore)2 Before (org.junit.Before)2 Path (java.nio.file.Path)1 Hashtable (java.util.Hashtable)1 FileBlobStore (org.apache.jackrabbit.oak.spi.blob.FileBlobStore)1 WrappingSplitBlobStore (org.apache.jackrabbit.oak.spi.blob.split.WrappingSplitBlobStore)1 NodeStore (org.apache.jackrabbit.oak.spi.state.NodeStore)1