2362N/A * Copyright (c) 2000, 2001, Oracle and/or its affiliates. All rights reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 2362N/A * published by the Free Software Foundation. Oracle designates this 0N/A * particular file as subject to the "Classpath" exception as provided 2362N/A * by Oracle in the LICENSE file that accompanied this code. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 2362N/A * or visit www.oracle.com if you need additional information or have any 0N/A * The <i>Service Provider Interface</i> (<b>SPI</b>) 0N/A * for the {@link CertPathValidator CertPathValidator} class. All 0N/A * <code>CertPathValidator</code> implementations must include a class (the 0N/A * SPI class) that extends this class (<code>CertPathValidatorSpi</code>) 0N/A * and implements all of its methods. In general, instances of this class 0N/A * should only be accessed through the <code>CertPathValidator</code> class. 0N/A * For details, see the Java Cryptography Architecture. 0N/A * <b>Concurrent Access</b> 0N/A * Instances of this class need not be protected against concurrent 0N/A * access from multiple threads. Threads that need to access a single 0N/A * <code>CertPathValidatorSpi</code> instance concurrently should synchronize 0N/A * amongst themselves and provide the necessary locking before calling the 0N/A * wrapping <code>CertPathValidator</code> object. 0N/A * However, implementations of <code>CertPathValidatorSpi</code> may still 0N/A * encounter concurrency issues, since multiple threads each 0N/A * manipulating a different <code>CertPathValidatorSpi</code> instance need not 0N/A * @author Yassir Elley 0N/A * The default constructor. 0N/A * Validates the specified certification path using the specified 0N/A * algorithm parameter set. 0N/A * The <code>CertPath</code> specified must be of a type that is 0N/A * supported by the validation algorithm, otherwise an 0N/A * <code>InvalidAlgorithmParameterException</code> will be thrown. For 0N/A * example, a <code>CertPathValidator</code> that implements the PKIX 0N/A * algorithm validates <code>CertPath</code> objects of type X.509. 0N/A * @param certPath the <code>CertPath</code> to be validated 0N/A * @param params the algorithm parameters 0N/A * @return the result of the validation algorithm 0N/A * @exception CertPathValidatorException if the <code>CertPath</code> 0N/A * @exception InvalidAlgorithmParameterException if the specified 0N/A * parameters or the type of the specified <code>CertPath</code> are 0N/A * inappropriate for this <code>CertPathValidator</code>