public IdentifiableMessage<KEY, M, MB> setMessage(final M message, final Object source) throws CouldNotPerformException {
        if (message == null) {
            throw new NotAvailableException("message");
        }
        this.internalMessage = message;
        notifyObservers(source);
        return this;
    }
public IdentifiableMessage < KEY , M , MB > setMessage ( final M message , final Object source ) throws CouldNotPerformException { if ( message == null ) { throw new NotAvailableException ( "message" ) ; } this . internalMessage = message ; notifyObservers ( source ) ; return this ; }
Updates the message of this instance.

@param message the new message object used as replacement for the old message.
@param source  the responsible source of the new message.

@return the updated message is returned.

@throws CouldNotPerformException in thrown in case something went wrong during message processing.