- /*
- * @(#)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.
-