org.apache.jdo.impl.model.java.runtime
Class RuntimeJavaModel

java.lang.Object
  extended byorg.apache.jdo.impl.model.java.AbstractJavaModel
      extended byorg.apache.jdo.impl.model.java.reflection.ReflectionJavaModel
          extended byorg.apache.jdo.impl.model.java.runtime.RuntimeJavaModel
All Implemented Interfaces:
JavaModel

public class RuntimeJavaModel
extends ReflectionJavaModel

A reflection based JavaModel implementation used at runtime. The implementation takes java.lang.Class and java.lang.reflect.Field instances to get Java related metadata about types and fields.

The RuntimeJavaModelFactory caches JavaModel instances per ClassLoader. The RuntimeJavaModel implementation will use this ClassLoader to lookup any type by name. This makes sure that the type name is unique.

Since:
JDO 1.0.1
Author:
Michael Bouschen

Field Summary
 
Fields inherited from class org.apache.jdo.impl.model.java.AbstractJavaModel
children, jdoModel, parent, types
 
Constructor Summary
  RuntimeJavaModel(java.lang.ClassLoader classLoader)
          Constructor taking the ClassLoader.
protected RuntimeJavaModel(java.lang.ClassLoader classLoader, boolean initialize)
           
 
Method Summary
protected  JavaType createJavaType(java.lang.Class clazz)
          Creates a new JavaType instance for the specified Class object.
 
Methods inherited from class org.apache.jdo.impl.model.java.reflection.ReflectionJavaModel
getClassLoader, getInputStreamForResource, getJavaType, getJavaType
 
Methods inherited from class org.apache.jdo.impl.model.java.AbstractJavaModel
getChildren, getJDOModel, getParent, setJDOModel, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RuntimeJavaModel

public RuntimeJavaModel(java.lang.ClassLoader classLoader)
Constructor taking the ClassLoader.


RuntimeJavaModel

protected RuntimeJavaModel(java.lang.ClassLoader classLoader,
                           boolean initialize)
Method Detail

createJavaType

protected JavaType createJavaType(java.lang.Class clazz)
Creates a new JavaType instance for the specified Class object. This method provides a hook such that RuntimeJavaModel subclasses can create instances of a different JavaType implementation.

This implementation returns a RuntimeJavaType instance.

Specified by:
createJavaType in class ReflectionJavaModel
Parameters:
clazz - the Class instance representing the type
Returns:
a new JavaType instance


Copyright © 2005 Apache Software Foundation. All Rights Reserved.