getService (tipo de string, algoritmo de string)
El método getService() de la clase java.security.Provider se utiliza para obtener el servicio que describe la implementación de este proveedor del tipo especificado de este algoritmo o alias.
Si no existe tal implementación, este método devuelve nulo. Si hay dos servicios coincidentes, uno agregado a este proveedor mediante putService() y otro agregado mediante put(), se devuelve el servicio agregado mediante putService().
Sintaxis:
public Provider.Service getService(String type, String algorithm)
Parámetros: este método toma el siguiente argumento como parámetro.
- tipo : el tipo de servicio solicitado.
- algoritmo : el nombre del algoritmo que no distingue entre mayúsculas y minúsculas (o alias alternativo) del servicio solicitado.
Valor devuelto: este método devuelve el servicio que describe el servicio coincidente de este proveedor o nulo si no existe dicho servicio.
Excepción: este método arroja NullPointerException si el tipo o el algoritmo es nulo.
A continuación se muestran los ejemplos para ilustrar el método getService() :
Ejemplo 1:
// Java program to demonstrate // getService() method import java.security.*; import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { try { // creating the object of SecureRandom Signature sr = Signature.getInstance("SHA1withDSA", "SUN"); // getting the Provider of the SecureRandom sr // by using method getProvider() Provider provider = sr.getProvider(); // getting the service of the provider using getServices() method Provider.Service service1 = provider .getService("Signature", sr.getAlgorithm()); // printing the service System.out.println("Provider service : " + service1); } catch (NoSuchAlgorithmException e) { System.out.println("Exception thrown : " + e); } } }
Provider service : SUN: Signature.SHA1withDSA -> sun.security.provider.DSA$SHA1withDSA aliases: [DSA, DSS, SHA/DSA, SHA-1/DSA, SHA1/DSA, SHAwithDSA, DSAWithSHA1, OID.1.2.840.10040.4.3, 1.2.840.10040.4.3, 1.3.14.3.2.13, 1.3.14.3.2.27] attributes: {ImplementedIn=Software, KeySize=1024, SupportedKeyClasses=java.security.interfaces.DSAPublicKey|java.security.interfaces.DSAPrivateKey}
Ejemplo 2: para mostrar NullPointerException lanzada por el método getService().
// Java program to demonstrate // getService() method import java.security.*; import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { try { // creating the object of SecureRandom Signature sr = Signature.getInstance("SHA1withDSA", "SUN"); // getting the Provider of the SecureRandom sr // by using method getProvider() Provider provider = sr.getProvider(); // getting the service of the provider using getServices() method Provider.Service service1 = provider .getService(null, sr.getAlgorithm()); // printing the service System.out.println("Provider service : " + service1); } catch (NoSuchAlgorithmException e) { System.out.println("Exception thrown : " + e); } catch (NullPointerException e) { System.out.println("Exception thrown : " + e); } } }
Exception thrown : java.lang.NullPointerException
obtenerServicios()
El método getServices() de la clase java.security.Provider se utiliza para obtener un conjunto no modificable de todos los servicios admitidos por este proveedor.
Sintaxis:
public Set<Provider.Service> getServices()
Valor devuelto: este método devuelve un conjunto no modificable de todos los servicios admitidos por este proveedor.
A continuación se muestran los ejemplos para ilustrar el método getServices():
Programa 1:
// Java program to demonstrate // getService() method import java.security.*; import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { // Declaring int variable int i = 5; try { // creating the object of SecureRandom Signature sr = Signature.getInstance("SHA1withDSA", "SUN"); // getting the Provider of the SecureRandom sr // by using method getProvider() Provider provider = sr.getProvider(); // Declaring the variable of set<Map> type Set<Provider.Service> servicelist; // getting the service of the provider using getServices() method servicelist = provider.getServices(); // Creating the object of iterator to iterate set Iterator<Provider.Service> iter = servicelist.iterator(); // printing the set elements System.out.println("Provider servicelist : \n "); while (i > 0) { System.out.println("Value is : " + iter.next()); i--; } } catch (NoSuchAlgorithmException e) { System.out.println("Exception thrown : " + e); } catch (NullPointerException e) { System.out.println("Exception thrown : " + e); } } }
Provider servicelist : Value is : SUN: SecureRandom.NativePRNG -> sun.security.provider.NativePRNG Value is : SUN: SecureRandom.SHA1PRNG -> sun.security.provider.SecureRandom attributes: {ImplementedIn=Software} Value is : SUN: SecureRandom.NativePRNGBlocking -> sun.security.provider.NativePRNG$Blocking Value is : SUN: SecureRandom.NativePRNGNonBlocking -> sun.security.provider.NativePRNG$NonBlocking Value is : SUN: Signature.SHA1withDSA -> sun.security.provider.DSA$SHA1withDSA aliases: [DSA, DSS, SHA/DSA, SHA-1/DSA, SHA1/DSA, SHAwithDSA, DSAWithSHA1, OID.1.2.840.10040.4.3, 1.2.840.10040.4.3, 1.3.14.3.2.13, 1.3.14.3.2.27] attributes: {ImplementedIn=Software, KeySize=1024, SupportedKeyClasses=java.security.interfaces.DSAPublicKey|java.security.interfaces.DSAPrivateKey}
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA