public function createAndSendMessageFromTemplate()
    {
        $args = func_get_args();
        if (empty($args[0])) {
            throw new \RuntimeException('First parameter must be a template filename or EmailTemplate entity');
            
        } elseif ($args[0] instanceof EmailTemplate) {
            $method = 'createMessageFromTemplateEntity';
            
        } else {
            $method = 'createMessageFromTemplateFile';
        }
        
        $message = call_user_func_array(array($this, $method), $args);
        $this->mailer->send($message);

        return true;
    }