Package org.opensaml.security.x509.tls.impl

# Class ThreadLocalX509TrustEngineContext

java.lang.Object
org.opensaml.security.x509.tls.impl.ThreadLocalX509TrustEngineContext

public final class ThreadLocalX509TrustEngineContext extends Object
Class which holds and makes available instances of `TrustEngine``<? super` `X509Credential``>` and `CriteriaSet` via ThreadLocal storage, typically used for server TLS authentication via `ThreadLocalX509TrustManager`.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`private static final class`
`ThreadLocalX509TrustEngineContext.Data`
Unified class representing the data that will be managed by the thread local storage.

## Field Summary

Fields
Modifier and Type
Field
Description
`private static ThreadLocal<ThreadLocalX509TrustEngineContext.Data>`
`current`
ThreadLocal storage for trust engine.

## Constructor Summary

Constructors
Modifier
Constructor
Description
`private`
`ThreadLocalX509TrustEngineContext()`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`static void`
`clearCurrent()`
Clear the current thread-local credential.
`static CriteriaSet`
`getCriteria()`
Return the current thread-local criteria instance.
`static Boolean`
`getTrusted()`
Return the current thread-local trust evaluation data.
`static TrustEngine<? super X509Credential>`
`getTrustEngine()`
Return the current thread-local trust engine instance.
`static boolean`
`haveCurrent()`
Get whether the current thread-local is populated with non-null data.
`static Boolean`
`isFailureFatal()`
Return whether failure of server TLS is to be treated as fatal.
`static void`
`loadCurrent(TrustEngine<? super X509Credential> trustEngine, CriteriaSet criteria, Boolean fatal)`
Load the thread-local storage with the current credential.
`static void`
`setTrusted(Boolean trusted)`
Set the current thread-local trust evaluation data.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### current

@Nonnull private static ThreadLocal<ThreadLocalX509TrustEngineContext.Data> current
ThreadLocal storage for trust engine.

## Constructor Details

### ThreadLocalX509TrustEngineContext

private ThreadLocalX509TrustEngineContext()
Constructor.

## Method Details

### loadCurrent

public static void loadCurrent(@Nonnull TrustEngine<? super X509Credential> trustEngine, @Nonnull CriteriaSet criteria, @Nullable Boolean fatal)
Load the thread-local storage with the current credential.

Parameters:
  `trustEngine` - the current trust engine
  `criteria` - the current criteria
  `fatal` - whether trust engine evaluation failure should be treated as fatal. Defaults to true.

### clearCurrent

public static void clearCurrent()
Clear the current thread-local credential.

### haveCurrent

public static boolean haveCurrent()
Get whether the current thread-local is populated with non-null data.

Returns:
  true if thread-local has non-null data, false otherwise

### getTrustEngine

@Nullable public static TrustEngine<? super X509Credential> getTrustEngine()
Return the current thread-local trust engine instance.

Returns:
  the current trust engine

### getCriteria

@Nullable public static CriteriaSet getCriteria()
Return the current thread-local criteria instance.

Returns:
  the current criteria

### isFailureFatal

@Nonnull public static Boolean isFailureFatal()
Return whether failure of server TLS is to be treated as fatal.

Returns:
  true if fatal, false if not

### getTrusted

@Nullable public static Boolean getTrusted()
Return the current thread-local trust evaluation data.

Returns:
  the current trust evaluation data

### setTrusted

public static void setTrusted(@Nullable Boolean trusted)
Set the current thread-local trust evaluation data.

Parameters:
  `trusted` - the current trust evaluation data