gate.jape
Class RightHandSide

java.lang.Object
  extended bygate.jape.RightHandSide
All Implemented Interfaces:
JapeConstants, Serializable

public class RightHandSide
extends Object
implements JapeConstants, Serializable

The RHS of a CPSL rule. The action part. Contains an inner class created from the code in the grammar RHS.

See Also:
Serialized Form

Field Summary
private  byte[] actionClassBytes
          The bytes of the compiled action class.
private  String actionClassClassFileName
          Name of the .class file for the action class.
private  String actionClassJavaFileName
          Name of the .java file for the action class.
private  String actionClassName
          The name of the action class.
private static int actionClassNumber
          Cardinality of the action class set.
private  String actionClassQualifiedName
          The qualified name of the action class.
private  StringBuffer actionClassString
          The string we use to create the action class.
private static String actionsDirName
          Package name for action classes.
private  HashSet blockNames
          The set of block names.
(package private) static boolean debug
          Debug flag.
private static boolean DEBUG
          Debug flag
private  LeftHandSide lhs
          The LHS of our rule, where we get bindings from.
private  String nl
          Local fashion for newlines.
private  String phaseName
           
private  String ruleName
           
private static ArrayList tempFiles
          A list of the files and directories we create.
private  Object theActionObject
          An instance of theActionClass.
 
Fields inherited from interface gate.jape.JapeConstants
APPELT_STYLE, BRILL_STYLE, DEFAULT_PRIORITY, FIRST_STYLE, INDENT_PADDING, KLEENE_PLUS, KLEENE_QUERY, KLEENE_STAR, MULTI_SPAN_BINDING, NO_BINDING, NO_KLEENE_OP, ONCE_STYLE, SINGLE_SPAN_BINDING
 
Constructor Summary
RightHandSide(String transducerName, String ruleName, LeftHandSide lhs)
          Construction from the transducer name, rule name and the LHS.
 
Method Summary
 void addBlock(String anonymousBlock)
          Add an anonymous block to the action class
 void addBlock(String name, String namedBlock)
          Add a named block to the action class
static void cleanUp()
          Remove class files created for actions.
 void createActionClass()
          Create the action class and an instance of it.
 String getActionClassName()
           
 String getActionClassString()
          Returns the string for the java code
 String getPhaseName()
           
 String getRuleName()
           
 void instantiateActionClass()
          Create an instance of the action class.
static void setActionClassNumber(int n)
          Allow setting of the initial action class number.
 void setPhaseName(String phaseName)
           
 void setRuleName(String ruleName)
           
 String shortDesc()
          Create a string representation of the object.
 String toString()
          Create a string representation of the object.
 String toString(String pad)
          Create a string representation of the object.
 void transduce(Document doc, Map bindings, AnnotationSet inputAS, AnnotationSet outputAS, Ontology ontology)
          Makes changes to the document, using LHS bindings.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEBUG

private static final boolean DEBUG
Debug flag

See Also:
Constant Field Values

theActionObject

private transient Object theActionObject
An instance of theActionClass.


actionClassString

private StringBuffer actionClassString
The string we use to create the action class.


actionClassBytes

private byte[] actionClassBytes
The bytes of the compiled action class.


actionClassName

private String actionClassName
The name of the action class.


actionsDirName

private static String actionsDirName
Package name for action classes. It's called a "dir name" because we used to dump the action classes to disk and compile them there.


actionClassQualifiedName

private String actionClassQualifiedName
The qualified name of the action class.


actionClassJavaFileName

private String actionClassJavaFileName
Name of the .java file for the action class.


actionClassClassFileName

private String actionClassClassFileName
Name of the .class file for the action class.


actionClassNumber

private static int actionClassNumber
Cardinality of the action class set. Used for ensuring class name uniqueness.


blockNames

private HashSet blockNames
The set of block names. Used to ensure we only get their annotations once in the action class.


lhs

private LeftHandSide lhs
The LHS of our rule, where we get bindings from.


tempFiles

private static ArrayList tempFiles
A list of the files and directories we create.


nl

private final String nl
Local fashion for newlines.


debug

static final boolean debug
Debug flag.

See Also:
Constant Field Values

phaseName

private String phaseName

ruleName

private String ruleName
Constructor Detail

RightHandSide

public RightHandSide(String transducerName,
                     String ruleName,
                     LeftHandSide lhs)
Construction from the transducer name, rule name and the LHS.

Method Detail

setActionClassNumber

public static void setActionClassNumber(int n)
Allow setting of the initial action class number. Used for ensuring class name uniqueness when running more than one transducer. The long-term solution is to have separate class loaders for each transducer.


getActionClassString

public String getActionClassString()
Returns the string for the java code


getActionClassName

public String getActionClassName()

addBlock

public void addBlock(String anonymousBlock)
Add an anonymous block to the action class


addBlock

public void addBlock(String name,
                     String namedBlock)
Add a named block to the action class


createActionClass

public void createActionClass()
                       throws JapeException
Create the action class and an instance of it.

Throws:
JapeException

instantiateActionClass

public void instantiateActionClass()
                            throws JapeException
Create an instance of the action class.

Throws:
JapeException

cleanUp

public static void cleanUp()
Remove class files created for actions.


transduce

public void transduce(Document doc,
                      Map bindings,
                      AnnotationSet inputAS,
                      AnnotationSet outputAS,
                      Ontology ontology)
               throws JapeException
Makes changes to the document, using LHS bindings.

Throws:
JapeException

toString

public String toString()
Create a string representation of the object.


toString

public String toString(String pad)
Create a string representation of the object.


shortDesc

public String shortDesc()
Create a string representation of the object.


setPhaseName

public void setPhaseName(String phaseName)

getPhaseName

public String getPhaseName()

setRuleName

public void setRuleName(String ruleName)

getRuleName

public String getRuleName()