class StoredMessage implements Serializable {

        private static final long serialVersionUID = 1755296138639817304L;
        private MqttQoS m_qos;
        final byte[] m_payload;
        final String m_topic;
        private boolean m_retained;
        private String m_clientID;

        public StoredMessage(byte[] message, MqttQoS qos, String topic) {
            m_qos = qos;
            m_payload = message;
            m_topic = topic;
        }

        public void setQos(MqttQoS qos) {
            this.m_qos = qos;
        }

        public MqttQoS getQos() {
            return m_qos;
        }

        public String getTopic() {
            return m_topic;
        }

        public String getClientID() {
            return m_clientID;
        }

        public void setClientID(String m_clientID) {
            this.m_clientID = m_clientID;
        }

        public ByteBuf getPayload() {
            return Unpooled.copiedBuffer(m_payload);
        }

        public void setRetained(boolean retained) {
            this.m_retained = retained;
        }

        public boolean isRetained() {
            return m_retained;
        }

        @Override
        public String toString() {<FILL_FUNCTION_BODY>}
    }

            return "PublishEvent{clientID='" + m_clientID + '\'' + ", m_retain="
                + m_retained + ", m_qos=" + m_qos + ", m_topic='" + m_topic + '\'' + '}';
        
<no_super_class>