# Interface CertSelector

All Superinterfaces:
  `Cloneable`

All Known Implementing Classes:
  `X509CertSelector`

public interface CertSelector extends Cloneable
A selector that defines a set of criteria for selecting `Certificate`s. Classes that implement this interface are often used to specify which `Certificate`s should be retrieved from a `CertStore`.

Concurrent Access

Unless otherwise specified, the methods defined in this interface are not thread-safe. Multiple threads that need to access a single object concurrently should synchronize amongst themselves and provide the necessary locking. Multiple threads each manipulating separate objects need not synchronize.

Since:
  1.4
See Also:
  - `Certificate`
  - `CertStore`
  - `CertStore.getCertificates(CertSelector)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `clone()`
  Makes a copy of this `CertSelector`.
  `boolean`
  `match(Certificate cert)`
  Decides whether a `Certificate` should be selected.

- ## Method Details

  - ### match

    boolean match(Certificate cert)
    Decides whether a `Certificate` should be selected.
    Parameters:
      `cert` - the `Certificate` to be checked
    Returns:
      `true` if the `Certificate` should be selected, `false` otherwise

  - ### clone

    Object clone()
    Makes a copy of this `CertSelector`. Changes to the copy will not affect the original and vice versa.
    Returns:
      a copy of this `CertSelector`