- final CountDownLatch recoveryComplete = new CountDownLatch(1);
- class TestShard extends Shard {
- TestShard() {
- super(Shard.builder().id(shardID).datastoreContext(newDatastoreContext()).
- peerAddresses(Collections.<String, String>singletonMap(shardID.toString(), null)).
- schemaContext(SCHEMA_CONTEXT));
- }
-
- String getPeerAddress(String id) {
- return getRaftActorContext().getPeerAddress(id);
- }
-
- @Override
- protected void onRecoveryComplete() {
- try {
- super.onRecoveryComplete();
- } finally {
- recoveryComplete.countDown();
- }
- }
- }
-
- final TestActorRef<Shard> shard = actorFactory.createTestActor(
- Props.create(new DelegatingShardCreator(new Creator<Shard>() {
- @Override
- public TestShard create() throws Exception {
- return new TestShard();
- }
- })), "testPeerAddressResolved");
-
- assertEquals("Recovery complete", true,
- Uninterruptibles.awaitUninterruptibly(recoveryComplete, 5, TimeUnit.SECONDS));
+ ShardIdentifier peerID = ShardIdentifier.builder().memberName("member-2")
+ .shardName("inventory").type("config").build();
+ final TestActorRef<Shard> shard = actorFactory.createTestActor(newShardBuilder().
+ peerAddresses(Collections.<String, String>singletonMap(peerID.toString(), null)).props().
+ withDispatcher(Dispatchers.DefaultDispatcherId()), "testPeerAddressResolved");