JAVA的一些源码 JAVA2 STANDARD EDITION DEVELOPMENT KIT 5.0

源代码在线查看: contactinfo.java

软件大小: 17696 K
上传用户: bilika
关键词: DEVELOPMENT STANDARD EDITION JAVA2
下载地址: 免注册下载 普通下载 VIP

相关代码

				/*				 * @(#)ContactInfo.java	1.23 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.pept.transport;								import com.sun.corba.se.pept.broker.Broker;				import com.sun.corba.se.pept.encoding.InputObject;				import com.sun.corba.se.pept.encoding.OutputObject;				import com.sun.corba.se.pept.protocol.MessageMediator;				import com.sun.corba.se.pept.protocol.ClientRequestDispatcher;				import com.sun.corba.se.pept.transport.ConnectionCache;								/**				 * The primary PEPt client-side plug-in point and enabler				 * for altenate encodings, protocols and transports.				 *				 * ContactInfo is a factory for client-side				 * artifacts used				 * to construct and send a message (and possibly receive and process a				 * response).				 *				 * @author Harold Carr				 */				public interface ContactInfo 				{				    /**				     * The {@link com.sun.corba.se.pept.broker.Broker Broker} associated				     * with an invocation.				     *				     * @return {@link com.sun.corba.se.pept.broker.Broker Broker}				     */				    public Broker getBroker();								    /**				     * The parent				     * {@link com.sun.corba.se.pept.broker.ContactInfoList ContactInfoList}				     * for this ContactInfo.				     *				     * @return				     * {@link com.sun.corba.se.pept.broker.ContactInfoList ContactInfoList}				     */				    public ContactInfoList getContactInfoList();								    /**				     * Used to get a				     * {@link com.sun.corba.se.pept.protocol.ClientRequestDispatcher				     * ClientRequestDispatcher}				     * used to handle the specific protocol represented by this				     * ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.protocol.ClientRequestDispatcher				     * ClientRequestDispatcher} */				    public ClientRequestDispatcher getClientRequestDispatcher();								    /**				     * Used to determine if a				     * {@link com.sun.corba.se.pept.transport.Connection Connection}				     * will be present in an invocation.				     *				     * For example, it may be				     * false in the case of shared-memory 				     * Input/OutputObjects.				     *				     * @return true if a 				     * {@link com.sun.corba.se.pept.transport.Connection Connection}				     * will be used for an invocation.				     */				    public boolean isConnectionBased();								    /**				     * Used to determine if the				     * {@link com.sun.corba.se.pept.transport.Connection Connection}				     * used for a request should be cached.				     *				     * If true then PEPt will attempt to reuse an existing				     * {@link com.sun.corba.se.pept.transport.Connection Connection}. If				     * one is not found it will create a new one and cache it for future use.				     *				     *				     * @return true if				     * {@link com.sun.corba.se.pept.transport.Connection Connection}s				     * created by this ContactInfo should be cached.				     */				    public boolean shouldCacheConnection();								    /**				     * PEPt uses separate caches for each type of ContactInfo				     * as given by getConnectionCacheType.				     *				     * @return {@link java.lang.String}				     */				    public String getConnectionCacheType();								    /**				     * Set the				     * {@link com.sun.corba.se.pept.transport.Outbound.ConnectionCache OutboundConnectionCache}				     * to be used by this ContactInfo.				     *				     * PEPt uses separate caches for each type of ContactInfo				     * as given by {@link #getConnectionCacheType}.				     * {@link #setConnectionCache} and {@link #getConnectionCache} support				     * an optimzation to avoid hashing to find that cache.				     *				     * @param connectionCache.				     */				    public void setConnectionCache(OutboundConnectionCache connectionCache);								    /**				     * Get the				     * {@link com.sun.corba.se.pept.transport.Outbound.ConnectionCache OutboundConnectionCache}				     * used by this ContactInfo				     *				     * PEPt uses separate caches for each type of ContactInfo				     * as given by {@link #getConnectionCacheType}.				     * {@link #setConnectionCache} and {@link #getConnectionCache} support				     * an optimzation to avoid hashing to find that cache.				     *				     * @return 				     * {@link com.sun.corba.se.pept.transport.ConnectionCache ConnectionCache}				     */				    public OutboundConnectionCache getConnectionCache();								    /**				     * Used to get a				     * {@link com.sun.corba.se.pept.transport.Connection Connection}				     * to send and receive messages on the specific transport				     * represented by this ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.transport.Connection Connection}				     */				    public Connection createConnection();								    /**				     * Used to get a				     * {@link com.sun.corba.se.pept.protocol.MessageMeidator MessageMediator}				     * to hold internal data for a message to be sent using the specific				     * encoding, protocol, transport combination represented by this				     * ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.protocol.MessageMediator MessageMediator}				     */				    public MessageMediator createMessageMediator(Broker broker, 										 ContactInfo contactInfo,										 Connection connection,										 String methodName,										 boolean isOneWay);								    /**				     * Used to get a				     * {@link com.sun.corba.se.pept.protocol.MessageMeidator MessageMediator}				     * to hold internal data for a message received using the specific				     * encoding, protocol, transport combination represented by this				     * ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.protocol.MessageMeidator MessageMediator}				     */				    public MessageMediator createMessageMediator(Broker broker,										 Connection connection);								    /**				     * Used to finish creating a				     * {@link com.sun.corba.se.pept.protocol.MessageMeidator MessageMediator}				     * with internal data for a message received using the specific				     * encoding, protocol, transport combination represented by this				     * ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.protocol.MessageMediator MessageMediator}				     */				    public MessageMediator finishCreatingMessageMediator(Broker broker,				                                                         Connection connection,										         MessageMediator messageMediator);								    /**				     * Used to get a				     * {@link com.sun.corba.se.pept.encoding.InputObject InputObject}				     * for the specific encoding represented by this				     * ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.encoding.InputObject InputObject}				     */				    public InputObject createInputObject(Broker broker,									 MessageMediator messageMediator);								    /**				     * Used to get a				     * {@link com.sun.corba.se.pept.encoding.OutputObject OutputObject}				     * for the specific encoding represented by this				     * ContactInfo.				     *				     * @return 				     * {@link com.sun.corba.se.pept.encoding.OutputObject OutputObject}				     */				    public OutputObject createOutputObject(MessageMediator messageMediator);								    /**				     * Used to lookup artifacts associated with this ContactInfo.				     *				     * @return the hash value.				     */				    public int hashCode();				}								// End of file.															

相关资源