package hep.io.root.reps;
import hep.io.root.core.AbstractRootObject;
import hep.io.root.core.RootInput;
import hep.io.root.interfaces.TMap;
import hep.io.root.interfaces.TObject;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
/**
* @author Tony Johnson (tonyj@slac.stanford.edu)
* @version $Id: TMapRep.java 8584 2006-08-10 23:06:37Z duns $
*/
public abstract class TMapRep extends AbstractRootObject implements TMap
{
private String fName;
private TObject fObject;
private int fNobjects;
private Map map;
public void readMembers(RootInput in) throws IOException
{
int v = in.readVersion(this);
if (v > 2) fObject = (TObject) in.readObject("TObject");
if (v > 1) fName = in.readObject("TString").toString();
fNobjects = in.readInt();
map = new HashMap();
for (int i = 0; i < fNobjects; i++)
{
Object key = in.readObjectRef();
Object value = in.readObjectRef();
if (key != null)
{
map.put(key,value);
}
}
in.checkLength(this);
}
public Object remove (Object key)
{
throw new UnsupportedOperationException();
}
public Object get (Object key)
{
return map.get(key);
}
public boolean containsValue (Object value)
{
return map.containsValue(value);
}
public boolean containsKey (Object key)
{
return map.containsKey(key);
}
public void putAll (Map t)
{
throw new UnsupportedOperationException();
}
public java.util.Collection values ()
{
return map.values();
}
public int size ()
{
return map.size();
}
public Object put (Object key, Object value)
{
throw new UnsupportedOperationException();
}
public java.util.Set keySet ()
{
return map.keySet();
}
public boolean isEmpty ()
{
return map.isEmpty();
}
public java.util.Set entrySet ()
{
return map.entrySet();
}
public void clear ()
{
throw new UnsupportedOperationException();
}
}