Creating ExtensionId, AbstractExtensionId, ExtensionIdProvider and Extension
This commit is contained in:
parent
bf20f3fa44
commit
603a8ed034
13 changed files with 85 additions and 60 deletions
|
|
@ -13,18 +13,25 @@ import static org.junit.Assert.*;
|
|||
|
||||
public class JavaExtension {
|
||||
|
||||
static class Provider implements ExtensionProvider {
|
||||
public Extension lookup() { return defaultInstance; }
|
||||
static class Provider implements ExtensionIdProvider {
|
||||
public ExtensionId lookup() { return defaultInstance; }
|
||||
}
|
||||
|
||||
public final static TestExtension defaultInstance = new TestExtension();
|
||||
public final static TestExtensionId defaultInstance = new TestExtensionId();
|
||||
|
||||
static class TestExtension extends AbstractExtension<ActorSystemImpl> {
|
||||
public ActorSystemImpl createExtension(ActorSystemImpl i) {
|
||||
return i;
|
||||
static class TestExtensionId extends AbstractExtensionId<TestExtension> {
|
||||
public TestExtension createExtension(ActorSystemImpl i) {
|
||||
return new TestExtension(i);
|
||||
}
|
||||
}
|
||||
|
||||
static class TestExtension implements Extension {
|
||||
public final ActorSystemImpl system;
|
||||
public TestExtension(ActorSystemImpl i) {
|
||||
system = i;
|
||||
}
|
||||
}
|
||||
|
||||
private Config c = ConfigFactory.parseString("akka.extensions = [ \"akka.actor.JavaExtension$Provider\" ]",
|
||||
ConfigParseOptions.defaults());
|
||||
|
||||
|
|
@ -32,8 +39,8 @@ public class JavaExtension {
|
|||
|
||||
@Test
|
||||
public void mustBeAccessible() {
|
||||
assertSame(system.extension(defaultInstance), system);
|
||||
assertSame(defaultInstance.apply(system), system);
|
||||
assertSame(system.extension(defaultInstance).system, system);
|
||||
assertSame(defaultInstance.apply(system).system, system);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue