1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one or more 3 * contributor license agreements. See the NOTICE file distributed with 4 * this work for additional information regarding copyright ownership. 5 * The ASF licenses this file to You under the Apache License, Version 2.0 6 * (the "License"); you may not use this file except in compliance with 7 * the License. You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18 /** 19 * @author Vera Y. Petrashkova 20 * @version $Revision$ 21 */ 22 23 package org.apache.harmony.security.tests.support; 24 25 import java.security.Security; 26 import java.security.Provider; 27 28 /** 29 * Additional class for verification spi-engine classes 30 * 31 */ 32 33 public class SpiEngUtils { 34 35 public static final String[] invalidValues = { 36 "", 37 "BadAlgorithm", 38 "Long message Long message Long message Long message Long message Long message Long message Long message Long message Long message Long message Long message Long message" }; 39 40 /** 41 * Verification: is algorithm supported or not 42 * 43 * @param algorithm 44 * @param service 45 * @return 46 */ isSupport(String algorithm, String service)47 public static Provider isSupport(String algorithm, String service) { 48 try { 49 Provider[] provs = Security.getProviders(service.concat(".") 50 .concat(algorithm)); 51 if (provs == null) { 52 return null; 53 } 54 return (provs.length == 0 ? null : provs[0]); 55 } catch (Exception e) { 56 return null; 57 } 58 } 59 60 public class MyProvider extends Provider { 61 MyProvider(String name, String info, String key, String clName)62 public MyProvider(String name, String info, String key, String clName) { 63 super(name, 1.0, info); 64 put(key, clName); 65 } 66 67 } 68 69 }