private void initialisePlugin(Class<?> clazz) {
    pluginGrailsClass = new GrailsPluginClass(clazz);
    plugin = (GroovyObject) pluginGrailsClass.newInstance();
    pluginBean = new BeanWrapperImpl(plugin);

    // configure plugin
    evaluatePluginVersion();
    evaluatePluginDependencies();
    evaluatePluginLoadAfters();
    evaluateProvidedArtefacts();
    evaluatePluginEvictionPolicy();
    evaluatePluginInfluencePolicy();
    evaluateOnChangeListener();
    evaluateObservedPlugins();
    evaluatePluginStatus();
    evaluatePluginScopes();
    evaluatePluginExcludes();
    evaluateTypeFilters();
  }
 @Override
 public String getName() {
   return pluginGrailsClass.getLogicalPropertyName();
 }