Isolate customizable code in activity reporting

Modularize the code for DNS count reporting to allow it to be customized for
more flexible systems.
Tested:
  Uploaded to alpha with hacks to allow admin initiating and logging from the
  DnsCountQueryCoordinatorModule, verified that the provider function is invoked and
  that the action runs successfully.

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=225225587
This commit is contained in:
mmuller 2018-12-12 11:48:08 -08:00 committed by Michael Muller
parent 6966151bed
commit c396957d15
13 changed files with 208 additions and 12 deletions

View file

@ -52,4 +52,22 @@ public class TypeUtilsTest {
.hasMessageThat()
.contains("Failed to load class com.fake.company.nonexistent.Class");
}
public static class ExampleClass {
String val;
public ExampleClass(String val) {
this.val = val;
}
}
@Test
public void test_instantiateWithArg() {
Class<ExampleClass> clazz =
TypeUtils.getClassFromString(
"google.registry.util.TypeUtilsTest$ExampleClass", ExampleClass.class);
ExampleClass result = TypeUtils.instantiate(clazz, "test");
assertThat(result.val).isEqualTo("test");
}
}