Package com.sun.corba.ee.impl.transport
Class ContactInfoListImpl
- java.lang.Object
-
- com.sun.corba.ee.impl.transport.ContactInfoListImpl
-
- All Implemented Interfaces:
ContactInfoList
- Direct Known Subclasses:
NoConnectionCacheImpl.NCCContactInfoListImpl
,SocketFactoryContactInfoListImpl
public class ContactInfoListImpl extends java.lang.Object implements ContactInfoList
-
-
Field Summary
Fields Modifier and Type Field Description protected IOR
effectiveTargetIOR
protected java.util.List<ContactInfo>
effectiveTargetIORContactInfoList
private java.util.concurrent.locks.ReadWriteLock
lcrdLock
protected LocalClientRequestDispatcher
localClientRequestDispatcher
protected ORB
orb
protected ContactInfo
primaryContactInfo
private static java.lang.ThreadLocal<java.lang.Boolean>
skipRotate
private int
startCount
protected IOR
targetIOR
private org.glassfish.pfl.basic.func.UnaryPredicate<ContactInfo>
testPred
private boolean
usePerRequestLoadBalancing
private static ORBUtilSystemException
wrapper
-
Constructor Summary
Constructors Constructor Description ContactInfoListImpl(ORB orb)
ContactInfoListImpl(ORB orb, IOR targetIOR)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addRemoteContactInfos(IOR effectiveTargetIOR, java.util.List<ContactInfo> effectiveTargetIORContactInfoList)
private void
changingEffectiveAddress(IIOPAddress oldAddr, IIOPAddress newAddr)
protected ContactInfo
createContactInfo(java.lang.String type, java.lang.String hostname, int port)
private void
createContactInfoList()
private void
display(java.lang.String msg, int value)
private void
display(java.lang.String msg, java.lang.Object value)
boolean
equals(java.lang.Object obj)
private <T> java.util.List<T>
filter(java.util.List<T> arg, org.glassfish.pfl.basic.func.UnaryPredicate<T> pred)
IOR
getEffectiveTargetIOR()
LocalClientRequestDispatcher
getLocalClientRequestDispatcher()
private IIOPAddress
getPrimaryAddress(IOR ior)
ContactInfo
getPrimaryContactInfo()
IOR
getTargetIOR()
int
hashCode()
java.util.Iterator<ContactInfo>
iterator()
private java.util.List<ContactInfo>
rotate(java.util.List<ContactInfo> arg)
void
setEffectiveTargetIOR(IOR newIOR)
protected void
setLocalSubcontract()
setLocalSubcontract sets cached information that is set whenever the effectiveTargetIOR changes.static void
setSkipRotate()
void
setTargetIOR(IOR targetIOR)
-
-
-
Field Detail
-
wrapper
private static final ORBUtilSystemException wrapper
-
orb
protected ORB orb
-
lcrdLock
private java.util.concurrent.locks.ReadWriteLock lcrdLock
-
localClientRequestDispatcher
protected LocalClientRequestDispatcher localClientRequestDispatcher
-
targetIOR
protected IOR targetIOR
-
effectiveTargetIOR
protected IOR effectiveTargetIOR
-
effectiveTargetIORContactInfoList
protected java.util.List<ContactInfo> effectiveTargetIORContactInfoList
-
primaryContactInfo
protected ContactInfo primaryContactInfo
-
usePerRequestLoadBalancing
private boolean usePerRequestLoadBalancing
-
startCount
private int startCount
-
testPred
private org.glassfish.pfl.basic.func.UnaryPredicate<ContactInfo> testPred
-
skipRotate
private static java.lang.ThreadLocal<java.lang.Boolean> skipRotate
-
-
Method Detail
-
filter
private <T> java.util.List<T> filter(java.util.List<T> arg, org.glassfish.pfl.basic.func.UnaryPredicate<T> pred)
-
setSkipRotate
public static void setSkipRotate()
-
display
@InfoMethod private void display(java.lang.String msg, int value)
-
display
@InfoMethod private void display(java.lang.String msg, java.lang.Object value)
-
rotate
private java.util.List<ContactInfo> rotate(java.util.List<ContactInfo> arg)
-
iterator
public java.util.Iterator<ContactInfo> iterator()
- Specified by:
iterator
in interfaceContactInfoList
-
setTargetIOR
public void setTargetIOR(IOR targetIOR)
- Specified by:
setTargetIOR
in interfaceContactInfoList
-
getTargetIOR
public IOR getTargetIOR()
- Specified by:
getTargetIOR
in interfaceContactInfoList
-
getPrimaryAddress
private IIOPAddress getPrimaryAddress(IOR ior)
-
changingEffectiveAddress
@InfoMethod private void changingEffectiveAddress(IIOPAddress oldAddr, IIOPAddress newAddr)
-
setEffectiveTargetIOR
public void setEffectiveTargetIOR(IOR newIOR)
- Specified by:
setEffectiveTargetIOR
in interfaceContactInfoList
-
getEffectiveTargetIOR
public IOR getEffectiveTargetIOR()
- Specified by:
getEffectiveTargetIOR
in interfaceContactInfoList
-
getLocalClientRequestDispatcher
public LocalClientRequestDispatcher getLocalClientRequestDispatcher()
- Specified by:
getLocalClientRequestDispatcher
in interfaceContactInfoList
-
hashCode
public int hashCode()
- Specified by:
hashCode
in interfaceContactInfoList
- Overrides:
hashCode
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
createContactInfoList
private void createContactInfoList()
-
addRemoteContactInfos
private void addRemoteContactInfos(IOR effectiveTargetIOR, java.util.List<ContactInfo> effectiveTargetIORContactInfoList)
-
createContactInfo
protected ContactInfo createContactInfo(java.lang.String type, java.lang.String hostname, int port)
-
setLocalSubcontract
protected void setLocalSubcontract()
setLocalSubcontract sets cached information that is set whenever the effectiveTargetIOR changes. Note: this must be maintained accurately whether or not the ORB allows local optimization, because ServantManagers in the POA ALWAYS use local optimization ONLY (they do not have a remote case).
-
getPrimaryContactInfo
public ContactInfo getPrimaryContactInfo()
-
-