1/*
2 * Copyright (c) 2004, 2016, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24package org.test.dummy;
25
26import java.security.*;
27
28public class DummyProvider extends Provider {
29    public DummyProvider() {
30        super("Dummy", "0.1", "Dummy Provider with nothing");
31    }
32
33    @Override
34    public Provider configure(String configArg) {
35        return new DummyProvider(configArg);
36    }
37
38    private DummyProvider(String arg) {
39        super("Dummy", "0.2", "Dummy Provider with " + arg);
40        //
41        // KeyStore
42        //
43        put("KeyStore.DummyKS", "sun.security.provider.JavaKeyStore$JKS");
44
45        //
46        // Signature engines
47        //
48        put("Signature.SHA1withDSA",
49            "sun.security.provider.DSA$SHA1withDSA");
50        put("Alg.Alias.Signature.DSA", "SHA1withDSA");
51
52        //
53        // Key Pair Generator engines
54        //
55        put("KeyPairGenerator.DSA",
56            "sun.security.provider.DSAKeyPairGenerator");
57
58        //
59        // Digest engines
60        //
61        put("MessageDigest.SHA", "sun.security.provider.SHA");
62        put("Alg.Alias.MessageDigest.SHA1", "SHA");
63
64        //
65        // Algorithm Parameter Generator engines
66        //
67        put("AlgorithmParameterGenerator.DSA",
68            "sun.security.provider.DSAParameterGenerator");
69
70        //
71        // Algorithm Parameter engines
72        //
73        put("AlgorithmParameters.DSA",
74            "sun.security.provider.DSAParameters");
75
76        //
77        // Key factories
78        //
79        put("KeyFactory.DSA", "sun.security.provider.DSAKeyFactory");
80
81        //
82        // Certificate factories
83        //
84        put("CertificateFactory.X.509",
85            "sun.security.provider.X509Factory");
86        put("Alg.Alias.CertificateFactory.X509", "X.509");
87    }
88}
89