Child pages
  • Implementing Custom Logons

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
private String userID;
private String password;
  
 
public void toAdmin(Message message, SessionID sessionId) {
       if (isMessageOfType(message, MsgType.LOGON)) {
               addLogonField(message);
       }
       super.toAdmin(message, sessionId);
}

private void addLogonField(Message message) {
       message.getHeader().setField(new SenderSubID(userID));
       message.getHeader().setField(new RawDataLength(password.length()));
       message.getHeader().setField(new RawData(password));
}

private boolean isMessageOfType(Message message, String type) {
       try {
               return type.equals(message.getHeader().getField(new MsgType()).getValue());
       } catch (FieldNotFound e) {
               logErrorToSessionLog(message, e);
               return false;
       }
}

private void logErrorToSessionLog(Message message, FieldNotFound e) {
       LogUtil.logThrowable(MessageUtils.getSessionID(message), e.getMessage(), e);
}

Wiki Markup
\[/java\]