org.eclipse.xtext.common.types.access.impl
Class ClasspathTypeProvider

java.lang.Object
  extended by org.eclipse.xtext.common.types.access.impl.AbstractJvmTypeProvider
      extended by org.eclipse.xtext.common.types.access.impl.ClasspathTypeProvider
All Implemented Interfaces:
org.eclipse.emf.ecore.resource.Resource.Factory, IJvmTypeProvider

public class ClasspathTypeProvider
extends AbstractJvmTypeProvider

Author:
Sebastian Zarnekow - Initial contribution and API

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.eclipse.xtext.common.types.access.IJvmTypeProvider
IJvmTypeProvider.Factory
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.resource.Resource.Factory
org.eclipse.emf.ecore.resource.Resource.Factory.Descriptor, org.eclipse.emf.ecore.resource.Resource.Factory.Registry
 
Constructor Summary
ClasspathTypeProvider(java.lang.ClassLoader classLoader, org.eclipse.emf.ecore.resource.ResourceSet resourceSet)
          Deprecated. 
ClasspathTypeProvider(java.lang.ClassLoader classLoader, org.eclipse.emf.ecore.resource.ResourceSet resourceSet, IndexedJvmTypeAccess indexedJvmTypeAccess)
           
 
Method Summary
protected  ClassFinder createClassFinder(java.lang.ClassLoader classLoader)
           
protected  ClassURIHelper createClassURIHelper()
           
protected  DeclaredTypeFactory createDeclaredTypeFactory()
           
 ClassMirror createMirror(java.lang.Class<?> clazz)
           
protected  IMirror createMirrorForFQN(java.lang.String name)
           
 JvmType findTypeByClass(java.lang.Class<?> clazz, org.eclipse.emf.ecore.resource.Resource resource)
           
 JvmType findTypeByName(java.lang.String name)
          Find a type by its fully qualified name, e.g.
 ClassFinder getClassFinder()
           
 ClassURIHelper getClassURIHelper()
           
 DeclaredTypeFactory getDeclaredTypeFactory()
           
protected  JvmType tryFindTypeInIndex(java.lang.String name, IndexedJvmTypeAccess indexAccess)
           
 
Methods inherited from class org.eclipse.xtext.common.types.access.impl.AbstractJvmTypeProvider
createMirror, createResource, doCreateResource, getIndexedJvmTypeAccess, getResourceSet, registerProtocol
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClasspathTypeProvider

public ClasspathTypeProvider(java.lang.ClassLoader classLoader,
                             org.eclipse.emf.ecore.resource.ResourceSet resourceSet,
                             IndexedJvmTypeAccess indexedJvmTypeAccess)

ClasspathTypeProvider

@Deprecated
public ClasspathTypeProvider(java.lang.ClassLoader classLoader,
                                        org.eclipse.emf.ecore.resource.ResourceSet resourceSet)
Deprecated. 

Method Detail

createClassFinder

protected ClassFinder createClassFinder(java.lang.ClassLoader classLoader)

createDeclaredTypeFactory

protected DeclaredTypeFactory createDeclaredTypeFactory()

createClassURIHelper

protected ClassURIHelper createClassURIHelper()

getClassURIHelper

public ClassURIHelper getClassURIHelper()

getDeclaredTypeFactory

public DeclaredTypeFactory getDeclaredTypeFactory()

getClassFinder

public ClassFinder getClassFinder()

findTypeByName

public JvmType findTypeByName(java.lang.String name)
Description copied from interface: IJvmTypeProvider
Find a type by its fully qualified name, e.g. java.util.Map$Entry, int[], void or java.lang.String[][][].

Specified by:
findTypeByName in interface IJvmTypeProvider
Specified by:
findTypeByName in class AbstractJvmTypeProvider
Returns:
the found JvmType or null if no such type could be found.

tryFindTypeInIndex

protected JvmType tryFindTypeInIndex(java.lang.String name,
                                     IndexedJvmTypeAccess indexAccess)

createMirrorForFQN

protected IMirror createMirrorForFQN(java.lang.String name)
Specified by:
createMirrorForFQN in class AbstractJvmTypeProvider

createMirror

public ClassMirror createMirror(java.lang.Class<?> clazz)

findTypeByClass

public JvmType findTypeByClass(java.lang.Class<?> clazz,
                               org.eclipse.emf.ecore.resource.Resource resource)