Package gw.internal.gosu.parser
Class ClassPath
- java.lang.Object
-
- gw.internal.gosu.parser.ClassPath
-
- All Implemented Interfaces:
IClassPath
public class ClassPath extends java.lang.Object implements IClassPath
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface gw.lang.reflect.module.IClassPath
IClassPath.ClassPathFilter
-
-
Field Summary
Fields Modifier and Type Field Description private boolean_bStableFilesprivate FqnCache<java.lang.Object>_cacheprivate IClassPath.ClassPathFilter_filterprivate IFileSystem_fsprivate IModule_moduleprivate static LocklessLazyVar<java.lang.Class<?>>BUILTIN_CLASSLOADERprivate static java.lang.StringCLASS_FILE_EXT-
Fields inherited from interface gw.lang.reflect.module.IClassPath
ALLOW_ALL_FILTER, ALLOW_ALL_WITH_SUN_FILTER, COM_SUN_CLASS_PREFIX, GW_API_PREFIX, GW_INTERNAL_PREFIX, ONLY_API_CLASSES, PLACEHOLDER_FOR_PACKAGE, SUN_CLASS_PREFIX
-
-
Constructor Summary
Constructors Constructor Description ClassPath(IModule module, IClassPath.ClassPathFilter filter)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddClassNames(IDirectory root, IDirectory dir, IClassPath.ClassPathFilter filter)private voidaddJreJars(java.util.List<IDirectory> javaClassPath)booleancontains(java.lang.String fqn)IFileget(java.lang.String fqn)private java.lang.StringgetClassNameFromFile(IDirectory root, IFile file)java.util.Set<java.lang.String>getFilteredClassNames()private static java.util.List<java.lang.String>getJreJars()java.util.ArrayList<IDirectory>getPaths()private static java.lang.StringgetPlaceholderClassNameForFilteredPackage(java.lang.String strClassName)java.util.Set<TypeName>getTypeNames(java.lang.String namespace)booleanhasNamespace(java.lang.String namespace)private booleanisClassFileName(java.lang.String strFileName)booleanisEmpty()private booleanisValidClassName(java.lang.String strClassName)private voidloadClasspathInfo()private voidloadClasspathInfo_Java8()private voidloadClasspathInfo_Java9()private voidputClassName(IFile file, java.lang.String strClassName, IClassPath.ClassPathFilter filter)java.lang.StringtoString()
-
-
-
Field Detail
-
BUILTIN_CLASSLOADER
private static final LocklessLazyVar<java.lang.Class<?>> BUILTIN_CLASSLOADER
-
CLASS_FILE_EXT
private static final java.lang.String CLASS_FILE_EXT
- See Also:
- Constant Field Values
-
_module
private IModule _module
-
_filter
private IClassPath.ClassPathFilter _filter
-
_cache
private FqnCache<java.lang.Object> _cache
-
_fs
private IFileSystem _fs
-
_bStableFiles
private boolean _bStableFiles
-
-
Constructor Detail
-
ClassPath
public ClassPath(IModule module, IClassPath.ClassPathFilter filter)
-
-
Method Detail
-
getPaths
public java.util.ArrayList<IDirectory> getPaths()
- Specified by:
getPathsin interfaceIClassPath
-
contains
public boolean contains(java.lang.String fqn)
-
get
public IFile get(java.lang.String fqn)
-
getFilteredClassNames
public java.util.Set<java.lang.String> getFilteredClassNames()
- Specified by:
getFilteredClassNamesin interfaceIClassPath
-
isEmpty
public boolean isEmpty()
-
loadClasspathInfo
private void loadClasspathInfo()
-
loadClasspathInfo_Java8
private void loadClasspathInfo_Java8()
-
loadClasspathInfo_Java9
private void loadClasspathInfo_Java9()
-
addJreJars
private void addJreJars(java.util.List<IDirectory> javaClassPath)
-
addClassNames
private void addClassNames(IDirectory root, IDirectory dir, IClassPath.ClassPathFilter filter)
-
putClassName
private void putClassName(IFile file, java.lang.String strClassName, IClassPath.ClassPathFilter filter)
-
getPlaceholderClassNameForFilteredPackage
private static java.lang.String getPlaceholderClassNameForFilteredPackage(java.lang.String strClassName)
-
getClassNameFromFile
private java.lang.String getClassNameFromFile(IDirectory root, IFile file)
-
isClassFileName
private boolean isClassFileName(java.lang.String strFileName)
-
isValidClassName
private boolean isValidClassName(java.lang.String strClassName)
-
hasNamespace
public boolean hasNamespace(java.lang.String namespace)
-
getTypeNames
public java.util.Set<TypeName> getTypeNames(java.lang.String namespace)
- Specified by:
getTypeNamesin interfaceIClassPath
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
getJreJars
private static java.util.List<java.lang.String> getJreJars()
-
-