Class JvmLanguagePropertyBundle

All Implemented Interfaces:
PropertySource

public class JvmLanguagePropertyBundle extends LanguagePropertyBundle
Base properties class for JVM languages that use a classpath to resolve references. This contributes the "auxClasspath" property.
Author:
Clément Fournier
  • Field Details

  • Constructor Details

    • JvmLanguagePropertyBundle

      public JvmLanguagePropertyBundle(Language language)
  • Method Details

    • setProperty

      public <T> void setProperty(PropertyDescriptor<T> propertyDescriptor, T value)
      Description copied from interface: PropertySource
      Set the property value specified. This is also referred to as "overriding" the (default) value of a property.
      Specified by:
      setProperty in interface PropertySource
      Overrides:
      setProperty in class AbstractPropertySource
      Type Parameters:
      T - The underlying type of the property descriptor.
      Parameters:
      propertyDescriptor - The property descriptor.
      value - The value to set.
    • setClassLoader

      @Deprecated public void setClassLoader(ClassLoader classLoader)
      Deprecated.
      Since 7.27.0. Use setProperty(JvmLanguagePropertyBundle.AUX_CLASSPATH, "file.jar") instead.
      Set the classloader to use for analysis. This overrides the setting of a classpath as a string via setProperty(PropertyDescriptor, Object). If the parameter is null, the classloader returned by getAnalysisClassLoader() is constructed from the value of the auxClasspath property.
    • getClassLoader

      @Deprecated protected ClassLoader getClassLoader()
      Deprecated.
      Since 7.27.0. Only used to support backwards compatible configuration of classloaders.
      Returns exactly the same classloader set via setClassLoader(ClassLoader). Unlike getAnalysisClassLoader(), no modification is performed.
      Since:
      7.27.0
      See Also:
    • getAnalysisClassLoader

      @Deprecated public @NonNull ClassLoader getAnalysisClassLoader()
      Deprecated.
      Since 7.27.0. This is language specific and will be moved to the corresponding language. Future versions might not even use a real classloader to resolve class files. Use getProperty(JvmLanguagePropertyBundle.AUX_CLASSPATH) instead.
      Returns the classloader to use to resolve classes for this language.