/* * Copyright (c) 2012-2015 The original author or authors * ------------------------------------------------------ * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * and Apache License v2.0 which accompanies this distribution. * * The Eclipse Public License is available at * http://www.eclipse.org/legal/epl-v10.html * * The Apache License v2.0 is available at * http://www.opensource.org/licenses/apache2.0.php * * You may elect to redistribute this code under either of these licenses. */ package org.red5.server.mqtt.codec.parser; import java.io.UnsupportedEncodingException; import org.apache.mina.core.buffer.IoBuffer; import org.apache.mina.core.session.IoSession; import org.apache.mina.filter.codec.ProtocolDecoderOutput; import org.eclipse.moquette.proto.messages.MessageIDMessage; import org.eclipse.moquette.proto.messages.PubRelMessage; import org.red5.server.mqtt.codec.exception.CorruptedFrameException; /** * * @author andrea */ public class PubRelDecoder extends DemuxDecoder { @Override public void decode(IoSession session, IoBuffer in, ProtocolDecoderOutput out) throws UnsupportedEncodingException, CorruptedFrameException { in.reset(); //Common decoding part MessageIDMessage message = new PubRelMessage(); if (!decodeCommonHeader(message, 0x02, in)) { in.reset(); return; } //read messageIDs message.setMessageID(in.getUnsignedShort()); out.write(message); } }