package info.guardianproject.otr.app.im.engine;
import info.guardianproject.otr.app.im.IDataListener;
import java.io.IOException;
import java.util.Map;
import net.java.otr4j.session.SessionStatus;
public interface DataHandler {
/**
* @param from this is OUR address
* @param session the chat session
* @param value the serialized request
*/
void onIncomingRequest(Address from, Address to, byte[] value);
/**
* @param from this is OUR address
* @param session the chat session
* @param value the serialized response
*/
void onIncomingResponse(Address from, Address to, byte[] value);
/**
* Offer data to peer
*
* @param offerId offer ID
* @param us our Address
* @param localUri URI of data
* @param headers extra headrs or null
*/
void offerData(String offerId, Address us, String localUri, Map<String, String> headers) throws IOException;
void setDataListener(IDataListener dataListener);
void onOtrStatusChanged(SessionStatus status);
}