EDU.utwente.CoCompose.lang
Class ModelVisitor

java.lang.Object
  |
  +--EDU.utwente.CoCompose.lang.ModelVisitor
All Implemented Interfaces:
java.lang.Runnable
Direct Known Subclasses:
CompositeFormConstraintsVisitor, ConceptFormConstraintsVisitor, DetermineFormsVisitor, FlatteningOptionsVisitor, FlattenVisitor, FlattenVisitorDepthFirst, FormConstraintsVisitor, GenerateImplementationVisitor, JavaFormsPostproc, OrderCompositesVisitor, PositionVisitor, ResetFormsVisitor, TranslateVisitor

public abstract class ModelVisitor
extends java.lang.Object
implements java.lang.Runnable

Abstract Visitor class for visiting CoCompose Models.

Version:
0.1.15, 20 October 2003
Author:
Dennis Wagelaar

Field Summary
protected  Logger log
          The object to log to.
 
Constructor Summary
ModelVisitor()
          Constructs a ModelVisitor.
 
Method Summary
protected  ModelUpdate getUpdate()
          Gets the updateable model display.
 void run()
          Runs the visitor.
 void setErrorReporter(ErrorReporter reporter)
          Sets the error reporter object.
 void setLogger(Logger logger)
          Sets the logger object.
 void setUpdate(ModelUpdate update)
          Sets the updateable model display.
 void startModel(Model model)
          Starts visitor in a separate thread.
 void visitAbstractConcept(AbstractConcept concept)
          Visits an AbstractConcept object.
 void visitComposite(Composite composite)
          Visits a Composite object.
 void visitCompositePartConcept(CompositePartConcept concept)
          Visits a CompositePartConcept object.
 void visitCompositeRole(CompositeRole role)
          Visits a CompositeRole object.
 void visitConcept(Concept concept)
          Visits a Concept object.
 void visitConstrainedConcept(ConstrainedConcept concept)
          Visits a ConstrainedConcept object.
 void visitImplementation(Implementation implementation)
          Visits an Implementation object.
 void visitImplementationGenerator(ImplementationGenerator implementation)
          Visits an ImplementationGenerator object.
 void visitImplementationRolePart(ImplementationRolePart rolepart)
          Visits an ImplementationRolePart object.
 void visitLink(Link link)
          Visits a Link object.
 void visitModel(Model model)
          Visits a Model object.
 void visitPublishedConcept(PublishedConcept role)
          Visits a PublishedConcept object.
 void visitSolutionPattern(SolutionPattern solution)
          Visits a SolutionPattern object.
 void visitSolutionRole(SolutionRole role)
          Visits a SolutionRole object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

protected Logger log
The object to log to.
Constructor Detail

ModelVisitor

public ModelVisitor()
Constructs a ModelVisitor.
Method Detail

getUpdate

protected ModelUpdate getUpdate()
Gets the updateable model display.
Returns:
The updateable model display.

setLogger

public void setLogger(Logger logger)
Sets the logger object.
Parameters:
logger - The object to log to

setErrorReporter

public void setErrorReporter(ErrorReporter reporter)
Sets the error reporter object. This is necessary when the visitor is executed in a separate thread.
Parameters:
reporter - The error reporter.

setUpdate

public void setUpdate(ModelUpdate update)
Sets the updateable model display.
Parameters:
update - The updateable model display.

startModel

public void startModel(Model model)
Starts visitor in a separate thread.
Parameters:
model - The model to visit.

run

public void run()
Runs the visitor. This method should not be called directly. Call start instead. Note that exceptions cannot be thrown, so they are printed.
Specified by:
run in interface java.lang.Runnable

visitModel

public void visitModel(Model model)
                throws CoComposeException
Visits a Model object.
Parameters:
model - The model to visit.
Throws:
CoComposeException - if visiting operation failed.

visitAbstractConcept

public void visitAbstractConcept(AbstractConcept concept)
                          throws CoComposeException
Visits an AbstractConcept object.
Parameters:
concept - The abstract concept to visit.
Throws:
CoComposeException - if visiting operation failed.

visitConstrainedConcept

public void visitConstrainedConcept(ConstrainedConcept concept)
                             throws CoComposeException
Visits a ConstrainedConcept object.
Parameters:
concept - The constrained concept to visit.
Throws:
CoComposeException - if visiting operation failed.

visitCompositePartConcept

public void visitCompositePartConcept(CompositePartConcept concept)
                               throws CoComposeException
Visits a CompositePartConcept object.
Parameters:
concept - The composite part concept to visit.
Throws:
CoComposeException - if visiting operation failed.

visitConcept

public void visitConcept(Concept concept)
                  throws CoComposeException
Visits a Concept object.
Parameters:
concept - The concept to visit.
Throws:
CoComposeException - if visiting operation failed.

visitSolutionRole

public void visitSolutionRole(SolutionRole role)
                       throws CoComposeException
Visits a SolutionRole object.
Parameters:
role - The role to visit.
Throws:
CoComposeException - if visiting operation failed.

visitComposite

public void visitComposite(Composite composite)
                    throws CoComposeException
Visits a Composite object.
Parameters:
composite - The composite to visit.
Throws:
CoComposeException - if visiting operation failed.

visitCompositeRole

public void visitCompositeRole(CompositeRole role)
                        throws CoComposeException
Visits a CompositeRole object.
Parameters:
role - The composite role to visit.
Throws:
CoComposeException - if visiting operation failed.

visitPublishedConcept

public void visitPublishedConcept(PublishedConcept role)
                           throws CoComposeException
Visits a PublishedConcept object.
Parameters:
role - The composite role to visit.
Throws:
CoComposeException - if visiting operation failed.

visitLink

public void visitLink(Link link)
               throws CoComposeException
Visits a Link object.
Parameters:
link - The link to visit.
Throws:
CoComposeException - if visiting operation failed.

visitImplementation

public void visitImplementation(Implementation implementation)
                         throws CoComposeException
Visits an Implementation object.
Parameters:
implementation - The concept implementation to visit.
Throws:
CoComposeException - if visiting operation failed.

visitImplementationGenerator

public void visitImplementationGenerator(ImplementationGenerator implementation)
                                  throws CoComposeException
Visits an ImplementationGenerator object.
Parameters:
implementation - The implementation generator to visit.
Throws:
CoComposeException - if visiting operation failed.

visitImplementationRolePart

public void visitImplementationRolePart(ImplementationRolePart rolepart)
                                 throws CoComposeException
Visits an ImplementationRolePart object.
Parameters:
rolepart - The implementation generator role part to visit.
Throws:
CoComposeException - if visiting operation failed.

visitSolutionPattern

public void visitSolutionPattern(SolutionPattern solution)
                          throws CoComposeException
Visits a SolutionPattern object.
Parameters:
solution - The solution pattern to visit.
Throws:
CoComposeException - if visiting operation failed.