What is the concern or issue with the comma-separated property in the 
org.codehaus.groovy.runtime.ExtensionModule file?


If annotations were used, Groovy would need to scan the entire classpath 
looking for tagged classes.  The property file allows only looking for a 
specific resource in each library on the classpath.


________________________________
From: adithyank <adi.k....@gmail.com>
Sent: Tuesday, June 18, 2019 4:21 PM
To: d...@groovy.incubator.apache.org
Subject: Configuring Extension Module using Custom Annotation

Hi Groovy Team,

We have a DSL plug-in platform in our company. I advice people to write 
Extension module classes for existing Java classes for better readable code in 
groovy environment. In that perspective, I want to avoid every one having comma 
separated class name entries in 
`META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule`.... With that 
idea, I am just thinking of alternative ways to declare the ExtensionModule 
classes.

-------
Is it a decent idea to have annotations like @ExtensionClass and 
@StaticExtensionClass for Class types instead of manually declaring the class 
names in `META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule`??

May be using apt (I am not sure), we can create the 
org.codehaus.groovy.runtime.ExtensionModule for each compilation unit and let 
it go the classpath.... Let Groovy runtime work as usual...!

I am just throwing my thoughts

NOTE-1:

Currently, the `META-INF/groovy/org.codehaus.groovy.runtime.ExtensionModule` 
has the extension module classes. The IDE (Intellij Idea) is showing the 
extension methods with ctrl+space.... That is excellent and required. The same 
tooling support is required also with the idea mentioned above...

NOTE-2:

It the idea is considered for implementation, I am more than happy to work on 
this feature and submit PR...

Regards, K Adithyan
Thanks,

Adithyan K
India

________________________________
Sent from the Groovy Dev mailing list 
archive<https://urldefense.proofpoint.com/v2/url?u=http-3A__groovy.329449.n5.nabble.com_Groovy-2DDev-2Df372993.html&d=DwMCAg&c=4ZIZThykDLcoWk-GVjSLmy8-1Cr1I4FWIvbLFebwKgY&r=tPJuIuL_GkTEazjQW7vvl7mNWVGXn3yJD5LGBHYYHww&m=i7mGht4VOPlgEOiFFj3NqiX1oqeyh-ZdaIdpB0g-Sak&s=9HeaBoxbeYADd53quXCltCR0JT_YBGMSe63tPOA8-DI&e=>
 at Nabble.com.

Reply via email to