Class ModelTranslator<E extends ExpressionTranslator>
- java.lang.Object
-
- net.ssehub.easy.dslCore.translation.MessageReceiver
-
- net.ssehub.easy.dslCore.translation.ModelTranslator<E>
-
- Type Parameters:
E- the specific type of expression translator to be used
- All Implemented Interfaces:
IMessageReceiver
- Direct Known Subclasses:
ModelTranslator,ModelTranslator
public abstract class ModelTranslator<E extends ExpressionTranslator> extends MessageReceiver
A basic implementation of a model translator, i.e., a basic class for translating individual model elements into model instances. This class relies on an associatedExpressionTranslator.- Author:
- Holger Eichelberger
-
-
Field Summary
Fields Modifier and Type Field Description private EexpressionTranslator
-
Constructor Summary
Constructors Constructor Description ModelTranslator(E expressionTranslator)Creates a new model translator.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddMessage(Message msg)Adds a message.voidcollect(IMessage message, org.eclipse.emf.ecore.EObject cause, org.eclipse.emf.ecore.EStructuralFeature causeFeature, int code)Receives an EASy message.static <T> java.util.List<T>copy(java.util.List<T> objects)Copies a set ofobjects.voiderror(java.lang.String message, org.eclipse.emf.ecore.EObject cause, org.eclipse.emf.ecore.EStructuralFeature causeFeature, int code)Receives an error message.voiderror(org.eclipse.emf.ecore.resource.Resource.Diagnostic diagnostic)Adds a diagnostic error, typically from a standalone parser configuration.intgetErrorCount()Returns the number of errors.protected EgetExpressionTranslator()Returns the associated expression translator.MessagegetMessage(int index)Returns the specified message.intgetMessageCount()Returns the number of messages.static <T extends org.eclipse.emf.ecore.EObject>
java.util.List<T>select(java.util.List<? extends org.eclipse.emf.ecore.EObject> objects, java.lang.Class<T> type)Selects the givenobjectsbytype.voidwarning(java.lang.String message, org.eclipse.emf.ecore.EObject cause, org.eclipse.emf.ecore.EStructuralFeature causeFeature, int code)Receives a warning message.-
Methods inherited from class net.ssehub.easy.dslCore.translation.MessageReceiver
error
-
-
-
-
Field Detail
-
expressionTranslator
private E extends ExpressionTranslator expressionTranslator
-
-
Constructor Detail
-
ModelTranslator
public ModelTranslator(E expressionTranslator)
Creates a new model translator.- Parameters:
expressionTranslator- the associated expression translator
-
-
Method Detail
-
select
public static <T extends org.eclipse.emf.ecore.EObject> java.util.List<T> select(java.util.List<? extends org.eclipse.emf.ecore.EObject> objects, java.lang.Class<T> type)Selects the givenobjectsbytype.- Type Parameters:
T- the actual type of list entries- Parameters:
objects- the objects to be consideredtype- the type as selection criterion- Returns:
- the selected objects being instance of
type
-
copy
public static <T> java.util.List<T> copy(java.util.List<T> objects)
Copies a set ofobjects.- Type Parameters:
T- the actual type of list entries- Parameters:
objects- the objects to be copied (may be null)- Returns:
- the copied instance (null if
objectis null)
-
getExpressionTranslator
protected E getExpressionTranslator()
Returns the associated expression translator.- Returns:
- the expression translator
-
getMessageCount
public int getMessageCount()
Description copied from class:MessageReceiverReturns the number of messages.- Specified by:
getMessageCountin classMessageReceiver- Returns:
- the number of messages
-
getErrorCount
public int getErrorCount()
Description copied from class:MessageReceiverReturns the number of errors.- Specified by:
getErrorCountin classMessageReceiver- Returns:
- the number of errors
-
getMessage
public Message getMessage(int index)
Description copied from class:MessageReceiverReturns the specified message.- Specified by:
getMessagein classMessageReceiver- Parameters:
index- the position of the message to be returned- Returns:
- the specified message
-
error
public void error(java.lang.String message, org.eclipse.emf.ecore.EObject cause, org.eclipse.emf.ecore.EStructuralFeature causeFeature, int code)Description copied from interface:IMessageReceiverReceives an error message.- Parameters:
message- the messagecause- the cause (as instance of the EMF grammar model)causeFeature- the cause of the feature as an appropriate constant fromIvmlPackage.Literalscode- a numerical identification of the error
-
warning
public void warning(java.lang.String message, org.eclipse.emf.ecore.EObject cause, org.eclipse.emf.ecore.EStructuralFeature causeFeature, int code)Description copied from interface:IMessageReceiverReceives a warning message.- Parameters:
message- the messagecause- the cause (as instance of the EMF grammar model)causeFeature- the cause of the feature as an appropriate constant fromIvmlPackage.Literalscode- a numerical identification of the warning
-
collect
public void collect(IMessage message, org.eclipse.emf.ecore.EObject cause, org.eclipse.emf.ecore.EStructuralFeature causeFeature, int code)
Description copied from interface:IMessageReceiverReceives an EASy message. This allows re-directing the message while keeping the relation to the original one, e.g., for cleaning up messages.- Parameters:
message- the messagecause- the cause (as instance of the EMF grammar model)causeFeature- the cause of the feature as an appropriate constant fromIvmlPackage.Literalscode- a numerical identification of the error
-
error
public void error(org.eclipse.emf.ecore.resource.Resource.Diagnostic diagnostic)
Adds a diagnostic error, typically from a standalone parser configuration.- Specified by:
errorin classMessageReceiver- Parameters:
diagnostic- the diagnostic to be added
-
addMessage
public void addMessage(Message msg)
Adds a message.- Specified by:
addMessagein classMessageReceiver- Parameters:
msg- the message to be added
-
-