KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > java > security > cert > CertPathBuilderSpi


1 /*
2  * @(#)CertPathBuilderSpi.java 1.5 03/12/19
3  *
4  * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
5  * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
6  */

7
8 package java.security.cert;
9
10 import java.security.InvalidAlgorithmParameterException JavaDoc;
11
12 /**
13  * The <i>Service Provider Interface</i> (<b>SPI</b>)
14  * for the {@link CertPathBuilder CertPathBuilder} class. All
15  * <code>CertPathBuilder</code> implementations must include a class (the
16  * SPI class) that extends this class (<code>CertPathBuilderSpi</code>) and
17  * implements all of its methods. In general, instances of this class should
18  * only be accessed through the <code>CertPathBuilder</code> class. For
19  * details, see the Java Cryptography Architecture.
20  * <p>
21  * <b>Concurrent Access</b>
22  * <p>
23  * Instances of this class need not be protected against concurrent
24  * access from multiple threads. Threads that need to access a single
25  * <code>CertPathBuilderSpi</code> instance concurrently should synchronize
26  * amongst themselves and provide the necessary locking before calling the
27  * wrapping <code>CertPathBuilder</code> object.
28  * <p>
29  * However, implementations of <code>CertPathBuilderSpi</code> may still
30  * encounter concurrency issues, since multiple threads each
31  * manipulating a different <code>CertPathBuilderSpi</code> instance need not
32  * synchronize.
33  *
34  * @version 1.5 12/19/03
35  * @since 1.4
36  * @author Sean Mullan
37  */

38 public abstract class CertPathBuilderSpi {
39
40     /**
41      * The default constructor.
42      */

43     public CertPathBuilderSpi() { }
44
45     /**
46      * Attempts to build a certification path using the specified
47      * algorithm parameter set.
48      *
49      * @param params the algorithm parameters
50      * @return the result of the build algorithm
51      * @throws CertPathBuilderException if the builder is unable to construct
52      * a certification path that satisfies the specified parameters
53      * @throws InvalidAlgorithmParameterException if the specified parameters
54      * are inappropriate for this <code>CertPathBuilder</code>
55      */

56     public abstract CertPathBuilderResult JavaDoc engineBuild(CertPathParameters JavaDoc params)
57     throws CertPathBuilderException JavaDoc, InvalidAlgorithmParameterException JavaDoc;
58 }
59
Popular Tags