Class RhinoJavaScriptTypesFactory


  • public class RhinoJavaScriptTypesFactory
    extends JSR223JavaScriptTypesFactory
    Rhino Specific JavaScriptTypesFactory. Supports importPackage and importClass. importPackage(java.util) importClass(java.util.HashSet) Clears the cache every time document is parsed for importPackage and importClass to work properly.
    • Field Detail

      • importClasses

        private java.util.LinkedHashSet<java.lang.String> importClasses
      • importPackages

        private java.util.LinkedHashSet<java.lang.String> importPackages
    • Constructor Detail

    • Method Detail

      • addImportClass

        public void addImportClass​(java.lang.String qualifiedClass)
      • addImportPackage

        public void addImportPackage​(java.lang.String packageName)
      • mergeImports

        public void mergeImports​(java.util.HashSet<java.lang.String> packages,
                                 java.util.HashSet<java.lang.String> classes)
      • mergeImports

        private void mergeImports​(java.util.HashSet<java.lang.String> newImports,
                                  java.util.LinkedHashSet<java.lang.String> oldImports,
                                  boolean packages)
      • canClearCache

        private boolean canClearCache​(java.util.HashSet<java.lang.String> newImports,
                                      java.util.LinkedHashSet<java.lang.String> oldImports)
        Validate whether the newImports and old imports contain the same values
        Parameters:
        newImports -
        oldImports -
        Returns:
      • clearImportCache

        public void clearImportCache()
      • clearAllImportTypes

        private void clearAllImportTypes()
      • removeAllTypes

        private void removeAllTypes​(JavaScriptType type)
        Remove all TypeDeclarations from the TypeDeclarationFactory from the JavaScriptType and all it's extended classes
        Parameters:
        type -
      • removePackagesFromType

        private java.lang.String removePackagesFromType​(java.lang.String type)
      • findFromClasses

        private ClassFile findFromClasses​(JarManager manager,
                                          java.lang.String name)
        Look for class file using imported classes
        Parameters:
        manager -
        name -
        Returns:
      • findFromImport

        private ClassFile findFromImport​(JarManager manager,
                                         java.lang.String name)
        Look for class file using imported packages
        Parameters:
        manager -
        name -
        Returns: