org.topbraid.core.change
Interface IChange

All Known Subinterfaces:
IRenamingChange
All Known Implementing Classes:
AbstractChange, AbstractConvertChange, AbstractInferenceChange, AbstractReplaceObjectChange, AddDifferentStatementsChange, AddStatementChange, AddStatementsChange, AddSubclassAxiomsChange, AddSubjectToStatementsChange, AddSuperClassChange, AddUnionDomainPropertyChange, AssertStatementsChange, ChangeDatatypeChange, ConvertToBNodeChange, ConvertToDefinedClassChange, ConvertToOWLChange, ConvertToPrimitiveClassChange, ConvertToRDFSChange, CreateCloneChange, CreateEnumerationChange, CreateInstanceChange, CreateReifiedStatementChange, CreateSubClassChange, DeleteRedundantOntologiesOperation, DeleteResourcesChange, DeleteStatementChange, DeleteStatementsChange, ExtractClassChange, FixLiteralsChange, MoveObjectChange, MoveResourcesIntoModelChange, MoveStatementsToSubjectChange, MoveTriplesChange, RemoveRedundantSuperClassesChange, RemoveUnionDomainPropertyChange, RemoveUsagesChange, RenameResourceChange, ReplaceInfGraphChange, ReplaceNamespaceOperation, ReplaceObjectChange, ReplaceSuperClassesChange, ReplaceSuperPropertiesChange, ReplaceTriplesChange, ReplaceTypeChange, SwapObjectChange

public interface IChange

An atomic unit of changes to a Jena model.

Author:
Holger Knublauch

Method Summary
 java.lang.String check(ISession session)
          Checks if this can be executed and returns an error string if not.
 void execute(ISession session, org.eclipse.core.runtime.IProgressMonitor monitor)
          Executes the change.
 ImageMetadata getImageMetadata()
          Gets (optional) metadata to describe an image about this change.
 java.lang.String getLabel()
          Gets an (optional) textual representation of this change.
 boolean isNoop()
          Checks if this is a no-operation, i.e.
 

Method Detail

check

java.lang.String check(ISession session)
Checks if this can be executed and returns an error string if not. This method is usually called by the execution environment prior to calling the execute(org.topbraid.core.session.ISession, org.eclipse.core.runtime.IProgressMonitor) method.

Parameters:
session - the session to check against
Returns:
null if the change can be performed, an error message otherwise

execute

void execute(ISession session,
             org.eclipse.core.runtime.IProgressMonitor monitor)
             throws java.lang.InterruptedException
Executes the change. This should perform the changes to a Jena model. In case of an unexpected state, the method may throw an IllegalStateException.

Parameters:
session - the session to execute the change on
monitor - a progress monitor for longish operations (may be null)
Throws:
java.lang.InterruptedException - if the user has cancelled the execution, e.g. using the provided monitor

getImageMetadata

ImageMetadata getImageMetadata()
Gets (optional) metadata to describe an image about this change.

Returns:
the ImageMetadata or null

getLabel

java.lang.String getLabel()
Gets an (optional) textual representation of this change.

Returns:
the text or null

isNoop

boolean isNoop()
Checks if this is a no-operation, i.e. resulting in no triple changes. This can be used by execution environments to check whether corresponding user interface components shall be activated to the user.

Returns:
true if this is a no-operation