/*
* @(#)CorbaMessageMediator.java 1.32 04/06/21
*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
*/
package com.sun.corba.se.spi.protocol;
import java.nio.ByteBuffer;
import org.omg.CORBA.INTERNAL;
import org.omg.CORBA.SystemException;
import org.omg.CORBA.portable.ResponseHandler;
import org.omg.CORBA.portable.UnknownException;
import org.omg.CORBA_2_3.portable.InputStream;
import org.omg.CORBA_2_3.portable.OutputStream;
import com.sun.corba.se.pept.broker.Broker;
import com.sun.corba.se.pept.protocol.MessageMediator;
import com.sun.corba.se.pept.encoding.InputObject;
import com.sun.corba.se.pept.encoding.OutputObject;
import com.sun.corba.se.pept.protocol.ProtocolHandler;
import com.sun.corba.se.pept.transport.Connection;
import com.sun.corba.se.spi.ior.IOR;
import com.sun.corba.se.spi.ior.ObjectKey;
import com.sun.corba.se.spi.ior.iiop.GIOPVersion;
import com.sun.corba.se.spi.protocol.CorbaProtocolHandler;
import com.sun.corba.se.spi.servicecontext.ServiceContexts;
import com.sun.corba.se.impl.protocol.giopmsgheaders.LocateReplyMessage;
import com.sun.corba.se.impl.protocol.giopmsgheaders.LocateReplyOrReplyMessage;
import com.sun.corba.se.impl.protocol.giopmsgheaders.Message;
import com.sun.corba.se.impl.protocol.giopmsgheaders.MessageBase;
import com.sun.corba.se.impl.protocol.giopmsgheaders.MessageHandler;
import com.sun.corba.se.impl.protocol.giopmsgheaders.ReplyMessage;
import com.sun.corba.se.impl.protocol.giopmsgheaders.ReplyMessage_1_0;
import com.sun.corba.se.impl.protocol.giopmsgheaders.RequestMessage;
import com.sun.corba.se.impl.protocol.giopmsgheaders.RequestMessage_1_0;
/**
* @author Harold Carr
*/
public interface CorbaMessageMediator
extends
MessageMediator,
ResponseHandler
{
public void setReplyHeader(LocateReplyOrReplyMessage header);
public LocateReplyMessage getLocateReplyHeader();
public ReplyMessage getReplyHeader();
public void setReplyExceptionDetailMessage(String message);
public RequestMessage getRequestHeader();
public GIOPVersion getGIOPVersion();
public byte getEncodingVersion();
public int getRequestId();
public Integer getRequestIdInteger();
public boolean isOneWay();
public short getAddrDisposition();
public String getOperationName();
public ServiceContexts getRequestServiceContexts();
public ServiceContexts getReplyServiceContexts();
public Message getDispatchHeader();
public void setDispatchHeader(Message msg);
public ByteBuffer getDispatchBuffer();
public void setDispatchBuffer(ByteBuffer byteBuffer);
public int getThreadPoolToUse();
public byte getStreamFormatVersion(); // REVIST name ForRequest?
public byte getStreamFormatVersionForReply();
// REVISIT - not sure if the final fragment and DII stuff should
// go here.
public void sendCancelRequestIfFinalFragmentNotSent();
public void setDIIInfo(org.omg.CORBA.Request request);
public boolean isDIIRequest();
public Exception unmarshalDIIUserException(String repoId,
InputStream inputStream);
public void setDIIException(Exception exception);
public void handleDIIReply(InputStream inputStream);
public boolean isSystemExceptionReply();
public boolean isUserExceptionReply();
public boolean isLocationForwardReply();
public boolean isDifferentAddrDispositionRequestedReply();
public short getAddrDispositionReply();
public IOR getForwardedIOR();
public SystemException getSystemExceptionReply();
////////////////////////////////////////////////////
//
// Server side
//
public ObjectKey getObjectKey();
public void setProtocolHandler(CorbaProtocolHandler protocolHandler);
public CorbaProtocolHandler getProtocolHandler();
////////////////////////////////////////////////////
//
// ResponseHandler
//
public org.omg.CORBA.portable.OutputStream createReply();
public org.omg.CORBA.portable.OutputStream createExceptionReply();
////////////////////////////////////////////////////
//
// from core.ServerRequest
//
public boolean executeReturnServantInResponseConstructor();
public void setExecuteReturnServantInResponseConstructor(boolean b);
public boolean executeRemoveThreadInfoInResponseConstructor();
public void setExecuteRemoveThreadInfoInResponseConstructor(boolean b);
public boolean executePIInResponseConstructor();
public void setExecutePIInResponseConstructor( boolean b );
}
// End of file.
|