org.coos.messaging.impl.DefaultExchange Maven / Gradle / Ivy
/**
* COOS - Connected Objects Operating System (www.connectedobjects.org).
*
* Copyright (C) 2009 Telenor ASA and Tellu AS. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This library is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published
* by the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*
* You may also contact one of the following for additional information:
* Telenor ASA, Snaroyveien 30, N-1331 Fornebu, Norway (www.telenor.no)
* Tellu AS, Hagalokkveien 13, N-1383 Asker, Norway (www.tellu.no)
*/
package org.coos.messaging.impl;
import org.coos.messaging.Exchange;
import org.coos.messaging.ExchangePattern;
import org.coos.messaging.Message;
/**
* Class with base implementation of Exchange interface.
*
* @author Knut Eilif Husa, Tellu AS
*/
public class DefaultExchange implements Exchange {
private Message outBoundMessage;
private Message inBoundMessage;
private Message fault;
private Throwable exception;
private ExchangePattern pattern;
private String exchangeId;
private boolean isProcessed = false;
public DefaultExchange(ExchangePattern pattern) {
this.pattern = pattern;
}
public DefaultExchange() {
}
public void setPattern(ExchangePattern pattern) {
this.pattern = pattern;
}
public ExchangePattern getPattern() {
return pattern;
}
public Message getOutBoundMessage() {
return outBoundMessage;
}
public Message getInBoundMessage() {
return inBoundMessage;
}
public void setOutBoundMessage(Message out) {
this.outBoundMessage = out;
}
public void setInBoundMessage(Message in) {
this.inBoundMessage = in;
}
public String getExchangeId() {
return exchangeId;
}
public void setExchangeId(String exchangeId) {
this.exchangeId = exchangeId;
}
public Message getFaultMessage() {
return fault;
}
public void setFaultMessage(Message fault) {
this.fault = fault;
}
public Throwable getException() {
return exception;
}
public void setException(Throwable exception) {
this.exception = exception;
}
public String toString() {
return ("ExchangeID: " + exchangeId);
}
public String toLongString() {
StringBuffer buf = new StringBuffer();
buf.append("ExchangeID: ");
buf.append(exchangeId);
buf.append(", ExchangePattern: ");
buf.append(pattern);
buf.append(", OutboundMsg: ");
buf.append(outBoundMessage);
buf.append(", InboundMsg: ");
buf.append(inBoundMessage);
if (fault != null) {
buf.append(", FaultMsg: ");
buf.append(fault);
}
return buf.toString();
}
public void setProcessed(boolean isProcessed) {
this.isProcessed = isProcessed;
}
public boolean isProcessed() {
return isProcessed;
}
}