com.vladium.emma.data
Class MetaData

java.lang.Object
  extended bycom.vladium.emma.data.MetaData
All Implemented Interfaces:
java.lang.Cloneable, IMergeable, IMetaData, java.io.Serializable

final class MetaData
extends java.lang.Object
implements IMetaData, java.lang.Cloneable

Author:
Vlad Roubtsov, (C) 2003

Field Summary
private  java.util.HashMap m_classMap
           
private  boolean m_hasLineNumberInfo
           
private  boolean m_hasSrcFileInfo
           
private  CoverageOptions m_options
           
private  java.util.HashSet m_packagesWarned
           
 
Constructor Summary
(package private) MetaData(CoverageOptions options)
           
private MetaData(CoverageOptions options, java.util.HashMap classMap, boolean hasSrcFileInfo, boolean hasLineNumberInfo)
           
 
Method Summary
 boolean add(ClassDescriptor cls, boolean overwrite)
           
 CoverageOptions getOptions()
           
 boolean hasDescriptor(java.lang.String classVMName)
           
 boolean hasLineNumberData()
           
 boolean hasSrcFileData()
           
 boolean isEmpty()
           
 java.util.Iterator iterator()
           
 java.lang.Object lock()
           
 IMergeable merge(IMergeable rhs)
          Caller must always switch to the returned handle.
(package private) static MetaData readExternal(java.io.DataInput in)
           
 IMetaData shallowCopy()
           
 int size()
           
(package private) static void writeExternal(MetaData mdata, java.io.DataOutput out)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

m_options

private final CoverageOptions m_options

m_hasSrcFileInfo

private boolean m_hasSrcFileInfo

m_hasLineNumberInfo

private boolean m_hasLineNumberInfo

m_classMap

private java.util.HashMap m_classMap

m_packagesWarned

private transient java.util.HashSet m_packagesWarned
Constructor Detail

MetaData

MetaData(CoverageOptions options)

MetaData

private MetaData(CoverageOptions options,
                 java.util.HashMap classMap,
                 boolean hasSrcFileInfo,
                 boolean hasLineNumberInfo)
Method Detail

shallowCopy

public IMetaData shallowCopy()
Specified by:
shallowCopy in interface IMetaData

getOptions

public CoverageOptions getOptions()
Specified by:
getOptions in interface IMetaData

size

public int size()
Specified by:
size in interface IMetaData

hasSrcFileData

public boolean hasSrcFileData()
Specified by:
hasSrcFileData in interface IMetaData

hasLineNumberData

public boolean hasLineNumberData()
Specified by:
hasLineNumberData in interface IMetaData

iterator

public java.util.Iterator iterator()
Specified by:
iterator in interface IMetaData

hasDescriptor

public boolean hasDescriptor(java.lang.String classVMName)
Specified by:
hasDescriptor in interface IMetaData

lock

public java.lang.Object lock()
Specified by:
lock in interface IMetaData

add

public boolean add(ClassDescriptor cls,
                   boolean overwrite)
Specified by:
add in interface IMetaData

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface IMergeable

merge

public IMergeable merge(IMergeable rhs)
Description copied from interface: IMergeable
Caller must always switch to the returned handle.

Specified by:
merge in interface IMergeable

readExternal

static MetaData readExternal(java.io.DataInput in)
                      throws java.io.IOException
Throws:
java.io.IOException

writeExternal

static void writeExternal(MetaData mdata,
                          java.io.DataOutput out)
                   throws java.io.IOException
Throws:
java.io.IOException