org.bouncycastle.asn1.x509

## Class Targets

- java.lang.Object
- - org.bouncycastle.asn1.ASN1Encodable
  - - org.bouncycastle.asn1.x509.Targets

All Implemented Interfaces:
  DEREncodable

    public class Targets
    extends ASN1Encodable

Targets structure used in target information extension for attribute certificates from RFC 3281.

                Targets ::= SEQUENCE OF Target

                Target  ::= CHOICE {
                  targetName          [0] GeneralName,
                  targetGroup         [1] GeneralName,
                  targetCert          [2] TargetCert
                }

                TargetCert  ::= SEQUENCE {
                  targetCertificate    IssuerSerial,
                  targetName           GeneralName OPTIONAL,
                  certDigestInfo       ObjectDigestInfo OPTIONAL
                }

See Also:
  `Target`, `TargetInformation`

### Field Summary

### Fields inherited from class org.bouncycastle.asn1.ASN1Encodable

`BER, DER`

### Constructor Summary

Constructors
Constructor and Description
`Targets(Target[] targets)` Constructor from given targets.

### Method Summary

Methods
`static Targets` `getInstance(java.lang.Object obj)` Creates an instance of a Targets from the given object.
`Target[]` `getTargets()` Returns the targets in a `Vector`.
`DERObject` `toASN1Object()` Produce an object suitable for an ASN1OutputStream.

### Methods inherited from class org.bouncycastle.asn1.ASN1Encodable

`equals, getDEREncoded, getDERObject, getEncoded, getEncoded, hashCode`

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

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

### Constructor Detail

#### Targets

    public Targets(Target[] targets)

Constructor from given targets.

The vector is copied.

Parameters:
  `targets` - A `Vector` of `Target`s.
Throws:
  `java.lang.IllegalArgumentException` - if the vector contains not only Targets.
See Also:
  `Target`

### Method Detail

#### getInstance

    public static Targets getInstance(java.lang.Object obj)

Creates an instance of a Targets from the given object.

`obj` can be a Targets or a `ASN1Sequence`

Parameters:
  `obj` - The object.
Returns:
  A Targets instance.
Throws:
  `java.lang.IllegalArgumentException` - if the given object cannot be interpreted as Target.

#### getTargets

    public Target[] getTargets()

Returns the targets in a `Vector`.

The vector is cloned before it is returned.

Returns:
  Returns the targets.

#### toASN1Object

    public DERObject toASN1Object()

Produce an object suitable for an ASN1OutputStream. Returns:

                Targets ::= SEQUENCE OF Target

Specified by:
  `toASN1Object` in class `ASN1Encodable`
Returns:
  a DERObject