// // $Id: ComponentRepository.java,v 1.1 2001/10/26 01:17:21 shaper Exp $ package com.threerings.cast; import java.util.Iterator; /** * The component repository interface is intended to be implemented by * classes that provide access to {@link CharacterComponent} objects * keyed on their unique component identifier. */ public interface ComponentRepository { /** * Returns the {@link CharacterComponent} object for the given * unique component identifier. */ public CharacterComponent getComponent (int cid) throws NoSuchComponentException, NoSuchComponentTypeException; /** * Returns an iterator over the Integer objects * representing all available character component identifiers for * the given character component type identifier. */ public Iterator enumerateComponents (int ctid) throws NoSuchComponentTypeException; /** * Returns an iterator over the Integer objects * representing all available character component type * identifiers. */ public Iterator enumerateComponentTypes (); }