/**
*
*/
package vnet.sms.common.wme.acknowledge;
import static org.apache.commons.lang.Validate.notNull;
import java.io.Serializable;
import org.jboss.netty.channel.Channel;
import vnet.sms.common.messages.Acknowledgement;
import vnet.sms.common.messages.LoginRequest;
import vnet.sms.common.wme.MessageEventType;
import vnet.sms.common.wme.receive.ReceivedLoginRequestEvent;
/**
* @author obergner
*
*/
public class SendLoginRequestNackEvent<ID extends Serializable> extends
DownstreamSendMessageAcknowledgementEvent<ID, LoginRequest> {
public static final <I extends Serializable> SendLoginRequestNackEvent<I> reject(
final ReceivedLoginRequestEvent<I> loginRequestReceivedEvent) {
notNull(loginRequestReceivedEvent,
"Argument 'loginRequestReceivedEvent' must not be null");
return new SendLoginRequestNackEvent<I>(
loginRequestReceivedEvent.getMessageReference(),
loginRequestReceivedEvent.getChannel(),
loginRequestReceivedEvent.getMessage());
}
private SendLoginRequestNackEvent(final ID messageReference,
final Channel channel, final LoginRequest message) {
super(messageReference, MessageEventType.SEND_LOGIN_REQUEST_NACK,
channel, message, Acknowledgement.nack());
}
}