AnnotationProcessor { public static <T> String getPluginName(T plugin) { return getPluginName(plugin.getClass()); }  static String getPluginName(T plugin); static String getPluginName(Class<T> plugin); boolean hasDependencies(Class<?> pluginClass); Collection<Node<?>> getDependencies(Class<?> pluginClass);  }
@Test public void shouldGetPluginName() { final String name = sut.getPluginName(new TestPlugin()); assertEquals("test", name); }
@Test public void shouldReturnNullIfNoNameIsProvided() { final String name = sut.getPluginName(new EmptyPlugin()); assertNull(name); }