Package gw.internal.gosu.dynamic
Class DynamicTypeLoader
- java.lang.Object
-
- gw.config.BaseService
-
- gw.lang.reflect.TypeLoaderBase
-
- gw.internal.gosu.dynamic.DynamicTypeLoader
-
- All Implemented Interfaces:
IService
,ITypeLoader
,IPluginHost
public class DynamicTypeLoader extends TypeLoaderBase
-
-
Field Summary
-
Fields inherited from class gw.lang.reflect.TypeLoaderBase
_module, _typeNames
-
Fields inherited from interface gw.lang.reflect.ITypeLoader
NO_TYPES
-
-
Constructor Summary
Constructors Constructor Description DynamicTypeLoader(IModule module)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Set<String>
computeTypeNames()
Set<String>
getAllNamespaces()
Don't call this method unless you really know what you're doing.List<String>
getHandledPrefixes()
IType
getType(String fullyQualifiedName)
Gets a type based on a fully-qualified name.boolean
handlesNonPrefixLoads()
boolean
hasNamespace(String namespace)
boolean
isCaseSensitive()
void
refreshedNamespace(String namespace, IDirectory dir, RefreshKind kind)
-
Methods inherited from class gw.lang.reflect.TypeLoaderBase
clearTypeNames, deleteIndexFile, getAllTypeNames, getModule, getNamespaceForDirectory, getResource, getTypeNames, getTypeNames, getTypesForFile, handlesDirectory, handlesFile, loadTypeNames, refreshed, refreshedFile, refreshedImpl, refreshedTypes, refreshedTypesImpl, saveTypeNames, shouldCacheTypeNames, showTypeNamesInIDE, shutdown, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface gw.plugin.IPluginHost
getInterface
-
-
-
-
Constructor Detail
-
DynamicTypeLoader
public DynamicTypeLoader(IModule module)
-
-
Method Detail
-
isCaseSensitive
public boolean isCaseSensitive()
- Specified by:
isCaseSensitive
in interfaceITypeLoader
- Overrides:
isCaseSensitive
in classTypeLoaderBase
-
getType
public IType getType(String fullyQualifiedName)
Description copied from interface:ITypeLoader
Gets a type based on a fully-qualified name. This could either be the name of an entity, like "entity.User", the name of a typekey, like "typekey.SystemPermission", or a class name, like "java.lang.String". Names can have [] appended to them to create arrays, and multi-dimensional arrays are supported.ClassNotFoundException
if none of its composite typeloaders can load the type.- Parameters:
fullyQualifiedName
- the fully qualified name of the type- Returns:
- the corresponding IType or null
-
getAllNamespaces
public Set<String> getAllNamespaces()
Description copied from interface:ITypeLoader
Don't call this method unless you really know what you're doing.- Returns:
- the set of package (aka namespace) names in which this loader's types reside.
-
handlesNonPrefixLoads
public boolean handlesNonPrefixLoads()
-
refreshedNamespace
public void refreshedNamespace(String namespace, IDirectory dir, RefreshKind kind)
-
hasNamespace
public boolean hasNamespace(String namespace)
-
-