code: private SystemMessages createSystemMessages(Locale locale) {
  
          CmsMessages messages = Messages.get().getBundle(locale);
          CustomizedSystemMessages systemMessages = new CustomizedSystemMessages();
          systemMessages.setCommunicationErrorCaption(messages.key(Messages.GUI_SYSTEM_COMMUNICATION_ERROR_CAPTION_0));
          systemMessages.setCommunicationErrorMessage(messages.key(Messages.GUI_SYSTEM_COMMUNICATION_ERROR_MESSAGE_0));
          systemMessages.setCommunicationErrorNotificationEnabled(true);
          systemMessages.setAuthenticationErrorCaption(messages.key(Messages.GUI_SYSTEM_AUTHENTICATION_ERROR_CAPTION_0));
          systemMessages.setAuthenticationErrorMessage(messages.key(Messages.GUI_SYSTEM_AUTHENTICATION_ERROR_MESSAGE_0));
          systemMessages.setAuthenticationErrorNotificationEnabled(true);
          systemMessages.setSessionExpiredCaption(messages.key(Messages.GUI_SYSTEM_SESSION_EXPIRED_ERROR_CAPTION_0));
          systemMessages.setSessionExpiredMessage(messages.key(Messages.GUI_SYSTEM_SESSION_EXPIRED_ERROR_MESSAGE_0));
          systemMessages.setSessionExpiredNotificationEnabled(true);
          systemMessages.setInternalErrorCaption(messages.key(Messages.GUI_SYSTEM_INTERNAL_ERROR_CAPTION_0));
          systemMessages.setInternalErrorMessage(messages.key(Messages.GUI_SYSTEM_INTERNAL_ERROR_MESSAGE_0));
          systemMessages.setInternalErrorNotificationEnabled(true);
          return systemMessages;
      }
docs: Returns a system messages instance for the given locale.<p>
  
  @param locale the locale
  
  @return the system messages