registry.register(AfterD.class);
registry.register(BeforeA.class);
registry.register(BeforeB.class);
registry.register(AfterC.class);
Object[] array = registry.bind(null, null);
for (Object obj : array) System.out.println(obj.getClass().getName());
Assert.assertEquals(array[0].getClass(), BeforeA.class);
Assert.assertEquals(array[1].getClass(), A.class);