org.eclipse.viatra.integration.mwe2

## Interface IMessageFactory<ParameterType,Message extends IMessage<ParameterType>>

- Type Parameters:
    `ParameterType` - Type of the parameter of the messages to be created.
    `Message` - Type of the messages to be created.
  All Known Implementing Classes:
    StringMessageFactory

      public interface IMessageFactory<ParameterType,Message extends IMessage<ParameterType>>

  Interface that defines the base functions of a message factory. These factories are responsible for the creation of certain typed messages. The type of these messages is specified in the template parameter, while the parameter type of these messages is specified in the template parameter.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Message` | `createMessage(java.lang.Object parameter)` Creates a message of the type specified by the parameter.
    `boolean` | `isValidParameter(java.lang.Object parameter)` Checks if the given Object is an eligible parameter.

- - ### Method Detail

    - #### createMessage

          Message createMessage(java.lang.Object parameter)
                         throws InvalidParameterTypeException

      Creates a message of the type specified by the parameter.
      Parameters:
        `parameter` - Parameter of the message to be created.
      Returns:
        The created message.
      Throws:
        `InvalidParameterTypeException`

    - #### isValidParameter

          boolean isValidParameter(java.lang.Object parameter)

      Checks if the given Object is an eligible parameter.
      Parameters:
        `parameter` - Object to be checked.
      Returns:
        Validity of the parameter