org.qedeq.kernel.bo.service.basis
Class ControlVisitor

java.lang.Object
  extended by org.qedeq.kernel.se.visitor.AbstractModuleVisitor
      extended by org.qedeq.kernel.bo.service.basis.ControlVisitor
All Implemented Interfaces:
ListVisitor, QedeqVisitor
Direct Known Subclasses:
DynamicHeuristicCheckerExecutor, FormalProofCheckerExecutor, LoadDirectlyRequiredModulesExecutor, LoadRequiredModulesExecutor, ModuleLabelsCreator, Qedeq2LatexExecutor, Qedeq2UnicodeVisitor, Qedeq2Xml, QedeqBoDuplicateLanguageChecker, SimpleProofFinderExecutor, WellFormedCheckerExecutor

public abstract class ControlVisitor
extends AbstractModuleVisitor

Basic visitor that gives some error collecting features. Also hides the traverser that does the work.

Author:
Michael Meyling

Constructor Summary
protected ControlVisitor(KernelQedeqBo prop)
          Constructor.
protected ControlVisitor(Service service, KernelQedeqBo prop)
          Constructor.
 
Method Summary
protected  void addError(ModuleDataException me)
          Add exception to error collection.
protected  void addError(SourceFileException sf)
          Add exception to error collection.
protected  void addWarning(ModuleDataException me)
          Add exception to warning collection.
 boolean getBlocked()
          Get if further traverse is blocked.
 ModuleContext getCurrentContext()
          Get current context within original.
 QedeqNumbers getCurrentNumbers()
          Get copy of current counters.
 SourceFileExceptionList getErrorList()
          Get list of errors that occurred during visit.
 InternalModuleServiceCall getInternalServiceCall()
          Get service call we work in.
 boolean getInterrupted()
          Was traverse interrupted by user?
 KernelQedeqBo getKernelQedeqBo()
          Get QedeqBo.
 RuleKey getLocalRuleKey(java.lang.String name)
          Get current (QEDEQ module local) rule version for given rule name.
 java.lang.String getLocationDescription()
          Get location info from traverser.
 KernelNodeBo getNodeBo()
          Get node that is currently parsed.
 java.lang.String getNodeDisplay(java.lang.String label, KernelNodeBo kNode, java.lang.String language)
          Get display text for node.
 Reference getReference(java.lang.String reference, ModuleContext context, boolean addWarning, boolean addError)
          Get link for given reference.
 Service getService()
          Get service we work for.
 InternalKernelServices getServices()
          Get internal kernel services.
 QedeqTraverser getTraverser()
          Get traverser for QEDEQ module.
 double getVisitPercentage()
          Get percentage of visit currently done.
 SourceFileExceptionList getWarningList()
          Get list of warnings that occurred during visit.
 boolean hasErrors()
          Did any errors occur yet?
 boolean hasNoErrors()
          Did no errors occur yet?
protected  void setBlocked(boolean blocked)
          Set if further traverse is blocked.
 void setLocationWithinModule(java.lang.String locationWithinModule)
          Set location information where are we within the original module.
 void traverse(InternalServiceJob process)
          Start traverse of QedeqBo.
 
Methods inherited from class org.qedeq.kernel.se.visitor.AbstractModuleVisitor
visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitEnter, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave, visitLeave
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ControlVisitor

protected ControlVisitor(KernelQedeqBo prop)
Constructor. Can only be used if instance also implements Service.

Parameters:
prop - Internal QedeqBo.

ControlVisitor

protected ControlVisitor(Service service,
                         KernelQedeqBo prop)
Constructor.

Parameters:
service - This service we work for.
prop - Internal QedeqBo.
Method Detail

getKernelQedeqBo

public KernelQedeqBo getKernelQedeqBo()
Get QedeqBo.

Returns:
QEDEQ module were are in.

getNodeBo

public KernelNodeBo getNodeBo()
Get node that is currently parsed. Might be null.

Returns:
QEDEQ node were are currently in.

traverse

public void traverse(InternalServiceJob process)
              throws SourceFileExceptionList
Start traverse of QedeqBo. If during the traverse a ModuleDataException occurs it is thrown till high level, transformed into a SourceFileException and added to the error list. All collected exceptions (via addError(ModuleDataException) and addError(SourceFileException)) are thrown (if there were any).
If you are interested in warnings you have to call getWarningList() afterwards.

Parameters:
process - We work in this service process.
Throws:
SourceFileExceptionList - All collected error exceptions.

getCurrentContext

public ModuleContext getCurrentContext()
Get current context within original. Remember to use the copy constructor when trying to remember this context!

Returns:
Current context.

addError

protected void addError(ModuleDataException me)
Add exception to error collection.

Parameters:
me - Exception to be added.

addError

protected void addError(SourceFileException sf)
Add exception to error collection.

Parameters:
sf - Exception to be added.

getErrorList

public SourceFileExceptionList getErrorList()
Get list of errors that occurred during visit.

Returns:
Exception list.

hasErrors

public boolean hasErrors()
Did any errors occur yet?

Returns:
Non error free visits?

hasNoErrors

public boolean hasNoErrors()
Did no errors occur yet?

Returns:
Error free visits?

addWarning

protected void addWarning(ModuleDataException me)
Add exception to warning collection.

Parameters:
me - Exception to be added.

getWarningList

public SourceFileExceptionList getWarningList()
Get list of warnings that occurred during visit.

Returns:
Exception list.

setBlocked

protected void setBlocked(boolean blocked)
Set if further traverse is blocked.

Parameters:
blocked - Further traverse blocked?

getBlocked

public boolean getBlocked()
Get if further traverse is blocked.

Returns:
Further traverse blocked?

getInternalServiceCall

public InternalModuleServiceCall getInternalServiceCall()
Get service call we work in.

Returns:
Service process we work for.

getService

public Service getService()
Get service we work for.

Returns:
Service we work for.

getLocationDescription

public java.lang.String getLocationDescription()
Get location info from traverser.

Returns:
Location description.

getVisitPercentage

public double getVisitPercentage()
Get percentage of visit currently done.

Returns:
Value between 0 and 100.

getCurrentNumbers

public QedeqNumbers getCurrentNumbers()
Get copy of current counters.

Returns:
Values of various counters.

getLocalRuleKey

public RuleKey getLocalRuleKey(java.lang.String name)
Get current (QEDEQ module local) rule version for given rule name.

Parameters:
name - Rule name
Returns:
Current (local) rule version. Might be null.

getServices

public InternalKernelServices getServices()
Get internal kernel services. Convenience method.

Returns:
Internal kernel services.

getInterrupted

public boolean getInterrupted()
Was traverse interrupted by user?

Returns:
Did we get an interrupt?

getReference

public Reference getReference(java.lang.String reference,
                              ModuleContext context,
                              boolean addWarning,
                              boolean addError)
Get link for given reference.

Parameters:
reference - String to parse.
context - Here the link is in the source text.
addWarning - Should we add a warning if an error occurs?
addError - Should we add an error if an error occurs?
Returns:
Generated link. Never null.

getNodeDisplay

public java.lang.String getNodeDisplay(java.lang.String label,
                                       KernelNodeBo kNode,
                                       java.lang.String language)
Get display text for node. The module of the node is ignored.

Parameters:
label - Label for node. Fallback if kNode == null.
kNode - Node for which we want a textual representation.
language - Language. Might be null.
Returns:
Textual node representation.

setLocationWithinModule

public void setLocationWithinModule(java.lang.String locationWithinModule)
Set location information where are we within the original module.

Parameters:
locationWithinModule - Location within module.

getTraverser

public QedeqTraverser getTraverser()
Get traverser for QEDEQ module.

Returns:
Traverser used.


Copyright © 2014. All Rights Reserved.