package org.skyscreamer.nevado.jms.message; import org.skyscreamer.nevado.jms.NevadoSession; import org.skyscreamer.nevado.jms.destination.NevadoDestination; import org.skyscreamer.nevado.jms.message.JMSXProperty; import org.skyscreamer.nevado.jms.message.NevadoMessage; import org.skyscreamer.nevado.jms.message.NevadoProperty; import javax.jms.*; import java.util.Enumeration; /** * Bomb message. Used to test recovery when things blow up in unexpected ways. * * @author Carter Page <carter@skyscreamer.org> */ public class TestBrokenMessage extends NevadoMessage { private final NevadoMessage _delegatee; public TestBrokenMessage(NevadoMessage delegatee) { _delegatee = delegatee; } @Override public NevadoSession getNevadoSession() { return _delegatee.getNevadoSession(); } @Override public void setNevadoSession(NevadoSession nevadoSession) { _delegatee.setNevadoSession(nevadoSession); } @Override public NevadoDestination getNevadoDestination() { return _delegatee.getNevadoDestination(); } @Override public void setNevadoDestination(NevadoDestination nevadoDestination) { _delegatee.setNevadoDestination(nevadoDestination); } @Override public boolean nevadoPropertyExists(NevadoProperty property) throws JMSException { return _delegatee.nevadoPropertyExists(property); } @Override public Object getNevadoProperty(NevadoProperty nevadoProperty) throws JMSException { return _delegatee.getNevadoProperty(nevadoProperty); } @Override public void setNevadoProperty(NevadoProperty nevadoProperty, Object value) throws JMSException { throw new RuntimeException("TEST - Boom!"); } @Override public void acknowledge() throws JMSException { _delegatee.acknowledge(); } @Override public void expire() throws JMSException { _delegatee.expire(); } public static NevadoMessage getInstance(Message message) throws JMSException { return NevadoMessage.getInstance(message); } @Override public void setJMSXProperty(JMSXProperty property, Object value) throws JMSException { _delegatee.setJMSXProperty(property, value); } @Override public Object getJMSXProperty(JMSXProperty property) throws JMSException { return _delegatee.getJMSXProperty(property); } @Override public boolean isAcknowledged() { return _delegatee.isAcknowledged(); } @Override public void setAcknowledged(boolean acknowledged) { _delegatee.setAcknowledged(acknowledged); } @Override public boolean isDisableMessageID() { return _delegatee.isDisableMessageID(); } @Override public void setDisableMessageID(boolean _disableMessageID) { _delegatee.setDisableMessageID(_disableMessageID); } @Override public boolean isDisableTimestamp() { return _delegatee.isDisableTimestamp(); } @Override public void setDisableTimestamp(boolean _disableTimestamp) { _delegatee.setDisableTimestamp(_disableTimestamp); } @Override public String getJMSMessageID() throws JMSException { return _delegatee.getJMSMessageID(); } @Override public void setJMSMessageID(String messageID) throws JMSException { _delegatee.setJMSMessageID(messageID); } @Override public long getJMSTimestamp() throws JMSException { return _delegatee.getJMSTimestamp(); } @Override public void setJMSTimestamp(long timestamp) throws JMSException { throw new RuntimeException("TEST - Boom!"); } @Override public byte[] getJMSCorrelationIDAsBytes() throws JMSException { return _delegatee.getJMSCorrelationIDAsBytes(); } @Override public void setJMSCorrelationIDAsBytes(byte[] correlationID) throws JMSException { _delegatee.setJMSCorrelationIDAsBytes(correlationID); } @Override public void setJMSCorrelationID(String correlationID) throws JMSException { _delegatee.setJMSCorrelationID(correlationID); } @Override public String getJMSCorrelationID() throws JMSException { return _delegatee.getJMSCorrelationID(); } @Override public Destination getJMSReplyTo() throws JMSException { return _delegatee.getJMSReplyTo(); } @Override public void setJMSReplyTo(Destination jmsReplyTo) throws JMSException { _delegatee.setJMSReplyTo(jmsReplyTo); } @Override public Destination getJMSDestination() throws JMSException { return _delegatee.getJMSDestination(); } @Override public void setJMSDestination(Destination destination) throws JMSException { _delegatee.setJMSDestination(destination); } @Override public int getJMSDeliveryMode() throws JMSException { return _delegatee.getJMSDeliveryMode(); } @Override public void setJMSDeliveryMode(int deliveryMode) throws JMSException { _delegatee.setJMSDeliveryMode(deliveryMode); } @Override public boolean getJMSRedelivered() throws JMSException { return _delegatee.getJMSRedelivered(); } @Override public void setJMSRedelivered(boolean redelivered) throws JMSException { _delegatee.setJMSRedelivered(redelivered); } @Override public String getJMSType() throws JMSException { return _delegatee.getJMSType(); } @Override public void setJMSType(String type) throws JMSException { _delegatee.setJMSType(type); } @Override public long getJMSExpiration() throws JMSException { return _delegatee.getJMSExpiration(); } @Override public void setJMSExpiration(long expiration) throws JMSException { _delegatee.setJMSExpiration(expiration); } @Override public int getJMSPriority() throws JMSException { return _delegatee.getJMSPriority(); } @Override public void setJMSPriority(int priority) throws JMSException { _delegatee.setJMSPriority(priority); } @Override public void clearProperties() throws JMSException { _delegatee.clearProperties(); } @Override public void internalClearBody() throws JMSException { _delegatee.internalClearBody(); } @Override public void clearBody() throws JMSException { _delegatee.clearBody(); } @Override public boolean propertyExists(String propertyName) throws JMSException { return _delegatee.propertyExists(propertyName); } @Override public boolean getBooleanProperty(String name) throws JMSException { return _delegatee.getBooleanProperty(name); } @Override public byte getByteProperty(String name) throws JMSException { return _delegatee.getByteProperty(name); } @Override public short getShortProperty(String name) throws JMSException { return _delegatee.getShortProperty(name); } @Override public int getIntProperty(String name) throws JMSException { return _delegatee.getIntProperty(name); } @Override public long getLongProperty(String name) throws JMSException { return _delegatee.getLongProperty(name); } @Override public float getFloatProperty(String name) throws JMSException { return _delegatee.getFloatProperty(name); } @Override public double getDoubleProperty(String name) throws JMSException { return _delegatee.getDoubleProperty(name); } @Override public String getStringProperty(String name) throws JMSException { return _delegatee.getStringProperty(name); } @Override public Object getObjectProperty(String name) throws JMSException { return _delegatee.getObjectProperty(name); } @Override public Enumeration getPropertyNames() throws JMSException { return _delegatee.getPropertyNames(); } @Override public void setBooleanProperty(String name, boolean value) throws JMSException { _delegatee.setBooleanProperty(name, value); } @Override public void setByteProperty(String name, byte value) throws JMSException { _delegatee.setByteProperty(name, value); } @Override public void setShortProperty(String name, short value) throws JMSException { _delegatee.setShortProperty(name, value); } @Override public void setIntProperty(String name, int value) throws JMSException { _delegatee.setIntProperty(name, value); } @Override public void setLongProperty(String name, long value) throws JMSException { _delegatee.setLongProperty(name, value); } @Override public void setFloatProperty(String name, float value) throws JMSException { _delegatee.setFloatProperty(name, value); } @Override public void setDoubleProperty(String name, double value) throws JMSException { _delegatee.setDoubleProperty(name, value); } @Override public void setStringProperty(String name, String value) throws JMSException { _delegatee.setStringProperty(name, value); } @Override public void setObjectProperty(String name, Object value) throws JMSException { _delegatee.setObjectProperty(name, value); } @Override protected void internalSetObjectProperty(String name, Object value) throws JMSException { _delegatee.internalSetObjectProperty(name, value); } @Override protected void checkReadOnlyBody() throws MessageNotWriteableException { _delegatee.checkReadOnlyBody(); } @Override protected void checkWriteOnlyBody() throws MessageNotReadableException { _delegatee.checkWriteOnlyBody(); } @Override public void onSend() { _delegatee.onSend(); } }