/** * Adds a new message encoder for a given message type * * @param messageType The message type * @param encoderClass The associated encoder class */ public void addMessageEncoder(Class<?> messageType, Class<? extends MessageEncoder> encoderClass) { this.encoder.addMessageEncoder(messageType, encoderClass); }
protected MessageEncoder<Object> findEncoder(State state, Class<?> type) { return findEncoder(state, type, null); }
public void encode(IoSession session, Object message, ProtocolEncoderOutput out) throws Exception { State state = getState(session); MessageEncoder<Object> encoder = findEncoder(state, message.getClass()); if (encoder != null) { encoder.encode(session, message, out); } else { throw new UnknownMessageTypeException( "No message encoder found for message: " + message); } }
/** * {@inheritDoc} */ @Override public void encode(IoSession session, Object message, ProtocolEncoderOutput out) throws Exception { State state = getState(session); MessageEncoder<Object> encoder = findEncoder(state, message.getClass()); if (encoder != null) { encoder.encode(session, message, out); } else { throw new UnknownMessageTypeException("No message encoder found for message: " + message); } }
/** * Adds a new message encoder for a given message type * * @param <T> The message type * @param messageType The message type * @param encoder The associated encoder instance */ public <T> void addMessageEncoder(Class<T> messageType, MessageEncoder<? super T> encoder) { this.encoder.addMessageEncoder(messageType, encoder); }
/** * {@inheritDoc} */ @Override public void encode(IoSession session, Object message, ProtocolEncoderOutput out) throws Exception { State state = getState(session); MessageEncoder<Object> encoder = findEncoder(state, message.getClass()); if (encoder != null) { encoder.encode(session, message, out); } else { throw new UnknownMessageTypeException("No message encoder found for message: " + message); } }
protected MessageEncoder<Object> findEncoder(State state, Class<?> type) { return findEncoder(state, type, null); }
/** * Add a new message instance class for a list of message types * * @param <T> The message type * @param messageTypes The message types * @param encoder The encoder instance */ public <T> void addMessageEncoder(Iterable<Class<? extends T>> messageTypes, MessageEncoder<? super T> encoder) { for (Class<? extends T> messageType : messageTypes) { addMessageEncoder(messageType, encoder); } }
protected MessageEncoder<Object> findEncoder(State state, Class<?> type) { return findEncoder(state, type, null); }
/** * Adds a new message encoder for a given message type * * @param <T> The message type * @param messageType The message type * @param encoder The associated encoder instance */ public <T> void addMessageEncoder(Class<T> messageType, MessageEncoder<? super T> encoder) { this.encoder.addMessageEncoder(messageType, encoder); }
encoder = findEncoder(state, element, triedClasses); encoder = findEncoder(state, superclass);
/** * Adds a new message encoder for a given message type * * @param <T> The message type * @param messageType The message type * @param factory The associated encoder factory */ public <T> void addMessageEncoder(Class<T> messageType, MessageEncoderFactory<? super T> factory) { this.encoder.addMessageEncoder(messageType, factory); }
encoder = findEncoder(state, element, triedClasses); encoder = findEncoder(state, superclass);
/** * Add a new message encoder class for a list of message types * * @param messageTypes The message types * @param encoderClass The encoder class */ @SuppressWarnings("rawtypes") public void addMessageEncoder(Iterable<Class<?>> messageTypes, Class<? extends MessageEncoder> encoderClass) { for (Class<?> messageType : messageTypes) { addMessageEncoder(messageType, encoderClass); } }
encoder = findEncoder(state, element, triedClasses); if (encoder != null) { break; encoder = findEncoder(state, superclass);
/** * Add a new message encoder class for a list of message types * * @param messageTypes The message types * @param encoderClass The encoder class */ @SuppressWarnings("rawtypes") public void addMessageEncoder(Iterable<Class<?>> messageTypes, Class<? extends MessageEncoder> encoderClass) { for (Class<?> messageType : messageTypes) { addMessageEncoder(messageType, encoderClass); } }
/** * Add a new message instance class for a list of message types * * @param <T> The message type * @param messageTypes The message types * @param encoder The encoder instance */ public <T> void addMessageEncoder(Iterable<Class<? extends T>> messageTypes, MessageEncoder<? super T> encoder) { for (Class<? extends T> messageType : messageTypes) { addMessageEncoder(messageType, encoder); } }
@SuppressWarnings("unchecked") public void addMessageEncoder(Iterable<Class<?>> messageTypes, Class<? extends MessageEncoder> encoderClass) { for (Class<?> messageType : messageTypes) { addMessageEncoder(messageType, encoderClass); } }
/** * Adds a new message encoder for a given message type * * @param <T> The message type * @param messageType The message type * @param factory The associated encoder factory */ public <T> void addMessageEncoder(Class<T> messageType, MessageEncoderFactory<? super T> factory) { this.encoder.addMessageEncoder(messageType, factory); }
/** * Add a new message encoder factory for a list of message types * * @param <T> The message type * @param messageTypes The message types * @param factory The encoder factory */ public <T> void addMessageEncoder(Iterable<Class<? extends T>> messageTypes, MessageEncoderFactory<? super T> factory) { for (Class<? extends T> messageType : messageTypes) { addMessageEncoder(messageType, factory); } }