Skip to content

Commit 947f161

Browse files
committed
feat: support for global namespace
Signed-off-by: azerr <[email protected]>
1 parent b4ad7df commit 947f161

File tree

3 files changed

+11
-6
lines changed

3 files changed

+11
-6
lines changed

src/main/java/com/redhat/devtools/intellij/qute/psi/internal/template/datamodel/TemplateGlobalAnnotationSupport.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ public class TemplateGlobalAnnotationSupport extends AbstractAnnotationTypeRefer
7070
TEMPLATE_GLOBAL_ANNOTATION
7171
};
7272

73+
private static final String GLOBAL_NAMESPACE = "global";
74+
7375
@Override
7476
protected String[] getAnnotationNames() {
7577
return ANNOTATION_NAMES;
@@ -133,6 +135,7 @@ private void collectResolversForTemplateGlobal(PsiMember member, PsiAnnotation t
133135
ValueResolverInfo resolver = new ValueResolverInfo();
134136
resolver.setSourceType(sourceType);
135137
resolver.setSignature(typeResolver.resolveSignature(member));
138+
resolver.setNamespace(GLOBAL_NAMESPACE);
136139
resolver.setKind(ValueResolverKind.TemplateGlobal);
137140
// Constant value for {@link #name()} indicating that the field/method name
138141
// should be used

src/main/resources/META-INF/plugin.xml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -683,8 +683,10 @@
683683
implementationClass="com.redhat.devtools.intellij.qute.psi.internal.template.datamodel.TemplateDataAnnotationSupport"/>
684684
<qute.dataModelProvider
685685
implementationClass="com.redhat.devtools.intellij.qute.psi.internal.template.datamodel.TemplateEnumAnnotationSupport"/>
686-
<qute.dataModelProvider
687-
implementationClass="com.redhat.devtools.intellij.qute.psi.internal.template.datamodel.TemplateGlobalAnnotationSupport"/>
686+
<qute.dataModelProvider namespaces="global,"
687+
description="Global Variables."
688+
url="https://quarkus.io/guides/qute-reference#global_variables"
689+
implementationClass="com.redhat.devtools.intellij.qute.psi.internal.template.datamodel.TemplateGlobalAnnotationSupport"/>
688690
<qute.dataModelProvider
689691
implementationClass="com.redhat.devtools.intellij.qute.psi.internal.template.datamodel.TypeSafeMessageBundlesSupport"/>
690692

src/test/java/com/redhat/devtools/intellij/qute/psi/template/TemplateGetDataModelProjectTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -345,21 +345,21 @@ private static void testValueResolversFromTemplateGlobal(List<ValueResolverInfo>
345345
// public class Globals {
346346

347347
// static int age = 40;
348-
assertValueResolver(null, "age : int", "org.acme.qute.Globals", null, true, resolvers);
348+
assertValueResolver("global", "age : int", "org.acme.qute.Globals", null, true, resolvers);
349349

350350
// static String name;
351-
assertValueResolver(null, "name : java.lang.String", "org.acme.qute.Globals", null, true, resolvers);
351+
assertValueResolver("global", "name : java.lang.String", "org.acme.qute.Globals", null, true, resolvers);
352352

353353
// static Color[] myColors() {
354354
// return new Color[] { Color.RED, Color.BLUE };
355355
// }
356-
assertValueResolver(null, "myColors() : org.acme.qute.Color[]", "org.acme.qute.Globals", null, true, resolvers);
356+
assertValueResolver("global", "myColors() : org.acme.qute.Color[]", "org.acme.qute.Globals", null, true, resolvers);
357357

358358
// @TemplateGlobal(name = "currentUser")
359359
// static String user() {
360360
// return "Mia";
361361
// }
362-
assertValueResolver(null, "user() : java.lang.String", "org.acme.qute.Globals", "currentUser", true, resolvers);
362+
assertValueResolver("global", "user() : java.lang.String", "org.acme.qute.Globals", "currentUser", true, resolvers);
363363
// }
364364
}
365365

0 commit comments

Comments
 (0)