anvil.script
Class Smith

java.lang.Object
  |
  +--anvil.script.Smith
All Implemented Interfaces:
ErrorListener, School

public class Smith
extends java.lang.Object
implements ErrorListener, School

class Smith


Field Summary
protected  Address _address
           
protected  ModuleCache _cache
           
protected  boolean _changed
           
protected  java.util.Map _forged
           
protected  ErrorListener _listener
           
protected  MemoryLoader _loader
           
protected  java.util.HashSet _loading
           
protected  java.util.HashSet _notimported
           
protected static java.lang.Object LOAD_LOCK
           
 
Constructor Summary
Smith(ModuleCache cache, Address address)
           
 
Method Summary
 java.io.OutputStream createClassRoom(java.lang.String name)
           
 void error(Location location, java.lang.String message)
           
 void error(Location location, java.lang.Throwable throwable)
           
protected  void errorCheck()
           
 int errors()
           
 ModuleEnvelope forge()
           
protected  ModuleEnvelope forge(Address address)
           
protected  boolean forgeImports(ModuleEnvelope envelope)
           
 ModuleEnvelope get(Address address)
           
 Address getAddress()
           
protected  ModuleEnvelope[] getEnvelopes()
           
 java.util.Iterator getEvents()
           
protected  ErrorListener getListener()
           
protected  void linkImports(ModuleEnvelope envelope)
           
protected  ModuleEnvelope load(Address address)
           
 void merge(ErrorListener listener)
           
protected  void temper()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOAD_LOCK

protected static final java.lang.Object LOAD_LOCK

_cache

protected ModuleCache _cache

_address

protected Address _address

_forged

protected java.util.Map _forged

_listener

protected ErrorListener _listener

_loading

protected java.util.HashSet _loading

_notimported

protected java.util.HashSet _notimported

_changed

protected boolean _changed

_loader

protected MemoryLoader _loader
Constructor Detail

Smith

public Smith(ModuleCache cache,
             Address address)
Method Detail

getListener

protected ErrorListener getListener()

error

public void error(Location location,
                  java.lang.Throwable throwable)
Specified by:
error in interface ErrorListener

error

public void error(Location location,
                  java.lang.String message)
Specified by:
error in interface ErrorListener

errors

public int errors()
Specified by:
errors in interface ErrorListener

getEvents

public java.util.Iterator getEvents()
Specified by:
getEvents in interface ErrorListener

merge

public void merge(ErrorListener listener)
Specified by:
merge in interface ErrorListener

getAddress

public Address getAddress()

linkImports

protected void linkImports(ModuleEnvelope envelope)

forgeImports

protected boolean forgeImports(ModuleEnvelope envelope)
                        throws java.io.IOException,
                               ForgingException
java.io.IOException
ForgingException

get

public ModuleEnvelope get(Address address)

load

protected ModuleEnvelope load(Address address)
                       throws java.io.IOException,
                              ForgingException
java.io.IOException
ForgingException

forge

public ModuleEnvelope forge()
                     throws java.io.IOException,
                            ForgingException
java.io.IOException
ForgingException

forge

protected ModuleEnvelope forge(Address address)
                        throws java.io.IOException,
                               ForgingException
java.io.IOException
ForgingException

getEnvelopes

protected ModuleEnvelope[] getEnvelopes()

errorCheck

protected void errorCheck()
                   throws ForgingException
ForgingException

temper

protected void temper()
               throws ForgingException
ForgingException

createClassRoom

public java.io.OutputStream createClassRoom(java.lang.String name)
                                     throws java.io.IOException
Specified by:
createClassRoom in interface School
java.io.IOException