Search in sources :

Example 1 with NoteProcessorPlugin

use of blue.plugin.NoteProcessorPlugin in project blue by kunstmusik.

the class NoteProcessorPluginProcessor method handleProcess.

@Override
protected boolean handleProcess(Set<? extends TypeElement> set, RoundEnvironment env) throws LayerGenerationException {
    Elements elements = processingEnv.getElementUtils();
    for (Element e : env.getElementsAnnotatedWith(NoteProcessorPlugin.class)) {
        TypeElement clazz = (TypeElement) e;
        NoteProcessorPlugin noteProcessorPlugin = clazz.getAnnotation(NoteProcessorPlugin.class);
        String teName = elements.getBinaryName(clazz).toString();
        File f = layer(e).file("blue/noteProcessors/" + teName.replace('.', '-') + ".instance").intvalue("position", noteProcessorPlugin.position()).bundlevalue("displayName", noteProcessorPlugin.displayName());
        f.write();
    }
    return true;
}
Also used : NoteProcessorPlugin(blue.plugin.NoteProcessorPlugin) TypeElement(javax.lang.model.element.TypeElement) Element(javax.lang.model.element.Element) TypeElement(javax.lang.model.element.TypeElement) Elements(javax.lang.model.util.Elements) File(org.openide.filesystems.annotations.LayerBuilder.File)

Aggregations

NoteProcessorPlugin (blue.plugin.NoteProcessorPlugin)1 Element (javax.lang.model.element.Element)1 TypeElement (javax.lang.model.element.TypeElement)1 Elements (javax.lang.model.util.Elements)1 File (org.openide.filesystems.annotations.LayerBuilder.File)1