Package org.italiangrid.voms.ac.impl

# Class DefaultVOMSValidator

java.lang.Object
org.italiangrid.voms.ac.impl.DefaultVOMSACParser
org.italiangrid.voms.ac.impl.DefaultVOMSValidator

All Implemented Interfaces:
  `VOMSACParser`, `VOMSACValidator`

public class DefaultVOMSValidator extends DefaultVOMSACParser implements VOMSACValidator
The default implementation of the VOMS validator.

Author:
  andreaceccanti

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`DefaultVOMSValidator.Builder`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`DEFAULT_TRUST_ANCHORS_DIR`

## Method Summary

Modifier and Type
Method
Description
`protected List<VOMSValidationResult>`
`internalValidate(X509Certificate[] validatedChain)`
`void`
`setValidationResultListener(ValidationResultListener listener)`
Sets a listener that will received validation-related events for this `VOMSACValidator`.
`void`
`shutdown()`
Shutdown the VOMS validator.
`List<VOMSAttribute>`
`validate(X509Certificate[] validatedChain)`
Parses and validates the VOMS attributes found in the certificate chain passed as argument (which is assumed to be validated already).
`List<org.bouncycastle.asn1.x509.AttributeCertificate>`
`validateACs(List<org.bouncycastle.asn1.x509.AttributeCertificate> acs)`
Validates the VOMS attributes found in the attribute certificate list passed as argument.
`List<VOMSValidationResult>`
`validateWithResult(X509Certificate[] validatedChain)`
Parses and validates the VOMS attributes found in the certificate chain passed as argument (which is assumed to be validated already).

### Methods inherited from class org.italiangrid.voms.ac.impl.DefaultVOMSACParser

`parse`

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

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

### Methods inherited from interface org.italiangrid.voms.ac.VOMSACParser

`parse`

## Field Details

### DEFAULT_TRUST_ANCHORS_DIR

public static final String DEFAULT_TRUST_ANCHORS_DIR

See Also:
  - Constant Field Values

## Method Details

### validateWithResult

public List<VOMSValidationResult> validateWithResult(X509Certificate[] validatedChain)
Description copied from interface: `VOMSACValidator`
Parses and validates the VOMS attributes found in the certificate chain passed as argument (which is assumed to be validated already). This method returns a possibly empty list of `VOMSValidationResult` objects which describe the outcome of the validation for each VOMS AC found in the certificate chain. This method is useful when you want to use a single call to get all details about validation without relying on the registration of a `ValidationResultListener`.

Specified by:
  `validateWithResult` in interface `VOMSACValidator`
Parameters:
  `validatedChain` - a chain of X.509 certificates
Returns:
  a possibly empty list of `VOMSValidationResult` object providing access to validation results and related attributes

### internalValidate

protected List<VOMSValidationResult> internalValidate(X509Certificate[] validatedChain)

### validate

public List<VOMSAttribute> validate(X509Certificate[] validatedChain)
Description copied from interface: `VOMSACValidator`
Parses and validates the VOMS attributes found in the certificate chain passed as argument (which is assumed to be validated already). This method returns the possibly empty list of the validated attributes. This method should be used in conjunction with the registration of a `ValidationResultListener` to get details about validation error and warning messages. Use the `VOMSACValidator.validateWithResult(X509Certificate[])` method in case you don't want to rely on a `ValidationResultListener`.

Specified by:
  `validate` in interface `VOMSACValidator`
Parameters:
  `validatedChain` - a validated X.509 certificate chain
Returns:
  a possibly empty list of `VOMSAttribute` object providing access to the validated VOMS attributes

### shutdown

public void shutdown()
Description copied from interface: `VOMSACValidator`
Shutdown the VOMS validator. This method should be called to perform final cleanup operations.

Specified by:
  `shutdown` in interface `VOMSACValidator`

### validateACs

public List<org.bouncycastle.asn1.x509.AttributeCertificate> validateACs(List<org.bouncycastle.asn1.x509.AttributeCertificate> acs)
Description copied from interface: `VOMSACValidator`
Validates the VOMS attributes found in the attribute certificate list passed as argument.

Specified by:
  `validateACs` in interface `VOMSACValidator`
Parameters:
  `acs` - a list of `AttributeCertificate`
Returns:
  the validated and possibly empty list of `AttributeCertificate` object

### setValidationResultListener

public void setValidationResultListener(ValidationResultListener listener)
Description copied from interface: `VOMSACValidator`
Sets a listener that will received validation-related events for this `VOMSACValidator`.

Specified by:
  `setValidationResultListener` in interface `VOMSACValidator`
Parameters:
  `listener` - the listener that will receive validation-related events.