org.multiverse.instrumentation.metadata
Class MetadataRepository

java.lang.Object
  extended by org.multiverse.instrumentation.metadata.MetadataRepository

public final class MetadataRepository
extends java.lang.Object

A repository for storing metadata about classes (and interfaces) and their internal structure.

Once metadata is extracted, it is stored so it can be reused.

Author:
Peter Veentjer.

Constructor Summary
MetadataRepository()
           
MetadataRepository(ClassMetadataExtractor extractor)
          Creates a MetadataRepository with the given ClassMetadataExtractor .
 
Method Summary
 ClassMetadata loadClassMetadata(java.lang.Class clazz)
          Loads the ClassMetadata for the given Clazz.
 ClassMetadata loadClassMetadata(java.lang.ClassLoader classLoader, java.lang.String className)
          Retrieves the ClassMetadata for a class.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetadataRepository

public MetadataRepository()

MetadataRepository

public MetadataRepository(ClassMetadataExtractor extractor)
Creates a MetadataRepository with the given ClassMetadataExtractor .

Parameters:
extractor - the ClassMetadataExtractor used to extra metadata for classes that have not been inspected.
Throws:
java.lang.NullPointerException - if extractor is null.
Method Detail

loadClassMetadata

public ClassMetadata loadClassMetadata(java.lang.Class clazz)
Loads the ClassMetadata for the given Clazz.

Parameters:
clazz - the Clazz to get the ClassMetadata for.
Returns:
return the loaded ClassMetadata.

loadClassMetadata

public ClassMetadata loadClassMetadata(java.lang.ClassLoader classLoader,
                                       java.lang.String className)
Retrieves the ClassMetadata for a class.

Parameters:
classLoader -
className - the className of the class to look for.
Returns:
the ClassMetadata (will never be null).


Copyright © 2008-2010 Multiverse. All Rights Reserved.