org.objectweb.speedo.generation.mivisitor
Class ReverseFieldAdder

java.lang.Object
  extended byorg.objectweb.speedo.generation.lib.AbstractGeneratorComponent
      extended byorg.objectweb.speedo.generation.mivisitor.AbstractMetaInfoVisitor
          extended byorg.objectweb.speedo.generation.mivisitor.ReverseFieldAdder
All Implemented Interfaces:
GeneratorComponent, MetaInfoVisitor

public class ReverseFieldAdder
extends AbstractMetaInfoVisitor

Add the reverse extensions on the forgetten side. In addition the mapping is added too.

Author:
S.Chassande-Barrioz

Field Summary
 
Fields inherited from class org.objectweb.speedo.generation.mivisitor.AbstractMetaInfoVisitor
LOGGER_NAME
 
Fields inherited from class org.objectweb.speedo.generation.lib.AbstractGeneratorComponent
debug, logger, scp
 
Constructor Summary
ReverseFieldAdder()
           
ReverseFieldAdder(MetaInfoVisitor mim)
           
 
Method Summary
protected  java.lang.String getLoggerName()
           
static SpeedoField getReverseField(SpeedoField sf, java.lang.String rfn)
          Retrieves the SpeedoField instance which is the reverse of a given SpeedoField.
static void throwError(java.lang.String msg, SpeedoField sf)
          Log a pretty error message with the context (field, class, xml desc)
 void visitExtension(SpeedoExtension se)
           
 
Methods inherited from class org.objectweb.speedo.generation.mivisitor.AbstractMetaInfoVisitor
getNext, getSpeedoClass, init, process, setNext, visitClass, visitCompilerParameter, visitField, visitPackage, visitXml
 
Methods inherited from class org.objectweb.speedo.generation.lib.AbstractGeneratorComponent
getLogger, getSpeedoCompilerParameter, setLogger, setSpeedoCompilerParameter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReverseFieldAdder

public ReverseFieldAdder()

ReverseFieldAdder

public ReverseFieldAdder(MetaInfoVisitor mim)
Method Detail

getLoggerName

protected java.lang.String getLoggerName()
Overrides:
getLoggerName in class AbstractMetaInfoVisitor

visitExtension

public void visitExtension(SpeedoExtension se)
                    throws SpeedoException
Specified by:
visitExtension in interface MetaInfoVisitor
Overrides:
visitExtension in class AbstractMetaInfoVisitor
Throws:
SpeedoException

getReverseField

public static SpeedoField getReverseField(SpeedoField sf,
                                          java.lang.String rfn)
                                   throws SpeedoException
Retrieves the SpeedoField instance which is the reverse of a given SpeedoField. The name of reverse field is specified by 'rfn'.

Parameters:
sf - is the SpeedoField which the reverse SpeedoField must be retrieved
rfn - the name of the reverse field
Throws:
SpeedoException

throwError

public static void throwError(java.lang.String msg,
                              SpeedoField sf)
                       throws SpeedoException
Log a pretty error message with the context (field, class, xml desc)

Parameters:
msg - the additionnal message
sf - the field which is managed
Throws:
SpeedoException