net.jini.jeri.ssl
Class CallContext

java.lang.Object
  extended by net.jini.jeri.ssl.Utilities
      extended by net.jini.jeri.ssl.CallContext
All Implemented Interfaces:
OutboundRequestHandle

 class CallContext
extends Utilities
implements OutboundRequestHandle

Records information needed to make a remote call. The information consists of the endpoint, client subject, requirement for client authentication, permitted client and server principals, cipher suites, and integrity and connection time constraints.

Author:
Sun Microsystems, Inc.

Nested Class Summary
 
Nested classes/interfaces inherited from class net.jini.jeri.ssl.Utilities
Utilities.SSLContextInfo
 
Field Summary
(package private)  String[] cipherSuites
          An ordered list of cipher suites to use.
(package private)  boolean clientAuthRequired
          Whether client authentication is required.
(package private)  Set clientPrincipals
          The principals in the client subject that may be used for authentication, or null if the client is anonymous.
(package private)  Subject clientSubject
          The client subject.
(package private)  long connectionTime
          The absolute time by which a new connection must be completed, or Long.MAX_VALUE for no restriction.
(package private)  Endpoint endpoint
          The endpoint.
(package private)  SslEndpointImpl endpointImpl
          The associated endpoint implementation delegate.
(package private)  boolean integrityPreferred
          Whether codebase integrity is preferred.
(package private)  boolean integrityRequired
          Whether codebase integrity is required.
(package private)  Set serverPrincipals
          The principals that will be accepted for authentication of the server subject, or null if all principals are permitted or if the server is anonymous.
 
Fields inherited from class net.jini.jeri.ssl.Utilities
ANY_KEY_ALGORITHM, clientLogger, DSA_KEY_ALGORITHM, getSubjectPermission, initLogger, INTEGRITY_PREFERRED, INTEGRITY_REQUIRED, RSA_KEY_ALGORITHM, serverLogger, UNKNOWN_PRINCIPAL
 
Constructor Summary
CallContext(Endpoint endpoint, SslEndpointImpl endpointImpl, Subject clientSubject, boolean clientAuthRequired, Set clientPrincipals, Set serverPrincipals, List cipherSuites, boolean integrityRequired, boolean integrityPreferred, long connectionTime)
          Creates a CallContext.
 
Method Summary
(package private) static CallContext coerce(OutboundRequestHandle handle, Endpoint endpoint)
          Converts an OutboundRequestHandle intended for the specified endpoint into a CallContext.
(package private)  InvocationConstraints getUnfulfilledConstraints()
          Returns any constraints that must be partially or fully implemented by higher layers for this outbound request.
 String toString()
           
 
Methods inherited from class net.jini.jeri.ssl.Utilities
checkValidity, contains, doesEncryption, doesServerAuthentication, equals, firstX509Cert, getCertFactory, getCipherAlgorithm, getClassName, getClientPrincipals, getClientPrincipals, getClientSSLContextInfo, getKeyAlgorithm, getKeyExchangeAlgorithm, getPermittedKeyAlgorithms, getServerPrincipals, getServerSSLContextInfo, getSupportedCipherSuites, hasStrongCipherAlgorithm, logThrow, maintainsIntegrity, permittedKeyAlgorithm, position, releaseClientSSLContextInfo, safeEquals, subjectString, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

endpoint

final Endpoint endpoint
The endpoint.


endpointImpl

final SslEndpointImpl endpointImpl
The associated endpoint implementation delegate.


clientSubject

final Subject clientSubject
The client subject.


clientAuthRequired

final boolean clientAuthRequired
Whether client authentication is required.


clientPrincipals

final Set clientPrincipals
The principals in the client subject that may be used for authentication, or null if the client is anonymous.


serverPrincipals

final Set serverPrincipals
The principals that will be accepted for authentication of the server subject, or null if all principals are permitted or if the server is anonymous.


cipherSuites

final String[] cipherSuites
An ordered list of cipher suites to use.


integrityRequired

final boolean integrityRequired
Whether codebase integrity is required.


integrityPreferred

final boolean integrityPreferred
Whether codebase integrity is preferred.


connectionTime

final long connectionTime
The absolute time by which a new connection must be completed, or Long.MAX_VALUE for no restriction.

Constructor Detail

CallContext

CallContext(Endpoint endpoint,
            SslEndpointImpl endpointImpl,
            Subject clientSubject,
            boolean clientAuthRequired,
            Set clientPrincipals,
            Set serverPrincipals,
            List cipherSuites,
            boolean integrityRequired,
            boolean integrityPreferred,
            long connectionTime)
Creates a CallContext.

Method Detail

coerce

static CallContext coerce(OutboundRequestHandle handle,
                          Endpoint endpoint)
Converts an OutboundRequestHandle intended for the specified endpoint into a CallContext. Throws NullPointerException if the handle is null. Throws IllegalArgumentException if the instance is not associated with the endpoint.


toString

public String toString()
Overrides:
toString in class Object

getUnfulfilledConstraints

InvocationConstraints getUnfulfilledConstraints()
Returns any constraints that must be partially or fully implemented by higher layers for this outbound request.



Copyright 2007-2010, multiple authors.
Licensed under the Apache License, Version 2.0, see the NOTICE file for attributions.