use of com.enonic.xp.blob.Segment in project xp by enonic.
the class ReadThroughBlobStoreTest method removeRecord.
@Test
public void removeRecord() throws Exception {
final ByteSource binary = ByteSource.wrap("this is a record".getBytes());
final Segment segment = Segment.from("test", "blob");
final BlobRecord record = this.finalStore.addRecord(segment, binary);
final ReadThroughBlobStore actualBlobStore = ReadThroughBlobStore.create().readThroughStore(this.readThroughStore).store(this.finalStore).build();
assertNull(this.readThroughStore.getRecord(segment, record.getKey()));
actualBlobStore.getRecord(segment, record.getKey());
assertNotNull(this.readThroughStore.getRecord(segment, record.getKey()));
actualBlobStore.removeRecord(segment, record.getKey());
assertNull(this.readThroughStore.getRecord(segment, record.getKey()));
assertNull(this.finalStore.getRecord(segment, record.getKey()));
}
use of com.enonic.xp.blob.Segment in project xp by enonic.
the class ReadThroughBlobStoreTest method last_modified.
@Test
public void last_modified() throws Exception {
final ReadThroughBlobStore actualBlobStore = ReadThroughBlobStore.create().readThroughStore(this.readThroughStore).store(this.finalStore).sizeThreshold(ByteSizeParser.parse("80kb")).build();
final ByteSource binary = ByteSource.wrap("this is a record".getBytes());
final Segment segment = Segment.from("test", "blob");
final BlobRecord record = actualBlobStore.addRecord(segment, binary);
final BlobRecord readThroughRecord = this.readThroughStore.getRecord(segment, record.getKey());
assertNotNull(readThroughRecord);
final BlobRecord fileRecord = this.finalStore.getRecord(segment, record.getKey());
assertNotNull(fileRecord);
assertEquals(readThroughRecord.lastModified(), fileRecord.lastModified());
}
use of com.enonic.xp.blob.Segment in project xp by enonic.
the class ReadThroughBlobStoreTest method last_modified_updated.
@Test
public void last_modified_updated() throws Exception {
final ReadThroughBlobStore actualBlobStore = ReadThroughBlobStore.create().readThroughStore(this.readThroughStore).store(this.finalStore).sizeThreshold(ByteSizeParser.parse("80kb")).build();
final ByteSource binary = ByteSource.wrap("this is a record".getBytes());
final Segment segment = Segment.from("test", "blob");
final BlobRecord record = actualBlobStore.addRecord(segment, binary);
final BlobRecord readThroughRecord = this.readThroughStore.getRecord(segment, record.getKey());
final BlobRecord fileRecord = this.finalStore.getRecord(segment, record.getKey());
assertEquals(readThroughRecord.lastModified(), fileRecord.lastModified());
// ensure a second difference since
Thread.sleep(1000);
actualBlobStore.addRecord(segment, binary);
final BlobRecord readThroughUpdated = this.readThroughStore.getRecord(segment, record.getKey());
final BlobRecord finalUpdated = this.finalStore.getRecord(segment, record.getKey());
assertEquals(readThroughUpdated.lastModified(), finalUpdated.lastModified());
assertTrue(readThroughUpdated.lastModified() > readThroughRecord.lastModified());
}
Aggregations