Package net.shibboleth.idp.attribute.resolver.dc.saml.impl

# Class ExecutableQueryBuilder.StandardExecutableQuery

java.lang.Object
net.shibboleth.idp.attribute.resolver.dc.saml.impl.ExecutableQueryBuilder.StandardExecutableQuery

All Implemented Interfaces:
  `ExecutableSearch`, `ExecutableQuery`

Enclosing class:
  ExecutableQueryBuilder

private final class ExecutableQueryBuilder.StandardExecutableQuery extends Object implements ExecutableQuery
Standard implementation of the `ExecutableQuery`.

## Field Summary

Fields
Modifier and Type
Field
Description
`private final String`
`authorityEndpoint`
Attribute authority endpoint.
`private final String`
`authorityEntityID`
Attribute authority entityID.
`private final AttributeAuthorityDescriptor`
`authorityRoleDescriptor`
Attribute authority role descriptor.
`private final Map<String,List<IdPAttributeValue>>`
`dependencyAttributes`
Dependency attributes.
`private final org.slf4j.Logger`
`log`
Logger.
`private final InOutOperationContext`
`opContext`
SOAP client context.
`private final AttributeResolutionContext`
`resolutionContext`
Attribute resolution context.

## Constructor Summary

Constructors
Modifier
Constructor
Description
`private`
`StandardExecutableQuery(String entityID, AttributeAuthorityDescriptor roleDescriptor, String endpoint, InOutOperationContext clientContext, AttributeResolutionContext arc, Map<String,List<IdPAttributeValue>> dependencies)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`ResponseData`
`execute(SOAPClient soapClient)`
Executes the query and returns the results.
`String`
`getResultCacheKey()`
Gets a key that uniquely identifies this object and may be used as a key in a result cache.
`private void`
`logContextData(InOutOperationContext opContext)`
Log SOAP client context data.
`String`
`toString()`
`private void`
`validateResponse(Response response)`
Validate the response.

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

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

## Field Details

### authorityEntityID

@Nonnull private final String authorityEntityID
Attribute authority entityID.

### authorityRoleDescriptor

@Nonnull private final AttributeAuthorityDescriptor authorityRoleDescriptor
Attribute authority role descriptor.

### authorityEndpoint

@Nonnull private final String authorityEndpoint
Attribute authority endpoint.

### opContext

@Nonnull private final InOutOperationContext opContext
SOAP client context.

### resolutionContext

@Nonnull private final AttributeResolutionContext resolutionContext
Attribute resolution context.

### dependencyAttributes

@Nonnull private final Map<String,List<IdPAttributeValue>> dependencyAttributes
Dependency attributes.

### log

@Nonnull private final org.slf4j.Logger log
Logger.

## Constructor Details

### StandardExecutableQuery

private StandardExecutableQuery(@Nonnull String entityID, @Nonnull AttributeAuthorityDescriptor roleDescriptor, @Nonnull String endpoint, @Nonnull InOutOperationContext clientContext, @Nonnull AttributeResolutionContext arc, @Nonnull Map<String,List<IdPAttributeValue>> dependencies)
Constructor.

Parameters:
  `entityID` - Attribute authority entityID
  `roleDescriptor` - Attribute authority role descriptor
  `endpoint` - Attribute authority endpoint.
  `clientContext` - SOAP client context
  `arc` - Attribute resolution context
  `dependencies` - dependency attributes

## Method Details

### getResultCacheKey

@Nullable public String getResultCacheKey()
Gets a key that uniquely identifies this object and may be used as a key in a result cache.

If a null is returned, no caching will be done.

Specified by:
  `getResultCacheKey` in interface `ExecutableSearch`
Returns:
  the result cache key

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### execute

@Nonnull public ResponseData execute(@Nonnull SOAPClient soapClient) throws SAMLException, SOAPException, SecurityException
Executes the query and returns the results.

Specified by:
  `execute` in interface `ExecutableQuery`
Parameters:
  `soapClient` - SOAP client to process the query
Returns:
  the result of the executed query
Throws:
  `SAMLException` - if there is a SAML error during resolution
  `SOAPException` - if there is a SOAP error during resolution
  `SecurityException` - if there there is a security-related error during resolution

### logContextData

private void logContextData(@Nonnull InOutOperationContext opContext)
Log SOAP client context data.

Parameters:
  `opContext` - the SOAP client context

### validateResponse

private void validateResponse(@Nonnull Response response) throws SAMLException
Validate the response.

Parameters:
  `response` - the response to validate
Throws:
  `SAMLException` - if response is not valid