@SuppressWarnings("unchecked") public final Return processMessageI(Enum<?> msgId, DustObject msgOb, Object ctx) { Return ret = null; if (null == overload) { ret = processMessage((MsgType) msgId, msgOb, ctx); } else { ret = overload.processMessageI(msgId, msgOb, ctx); if (ReturnType.Pass == ret.getType()) { ret = processMessage((MsgType) msgId, msgOb, ctx); } } return ret; }