finds the appropriate service implementation and returns an spiandprovider instance containing a reference to spiand its provider concode_field_sep SecurityAccess door concode_elem_sep int cacheVersion concode_elem_sep Provider provider concode_elem_sep ArrayList<Provider.Service> services concode_elem_sep String serviceName concode_elem_sep Object spi concode_elem_sep ServiceCacheEntry serviceCache concode_elem_sep String algorithm concode_field_sep NoSuchAlgorithmException notFound concode_elem_sep ArrayList<Provider.Service> getServices
SpiAndProvider function ( Provider . Service arg0 , String arg1 ) { return new SpiAndProvider ( arg0 . newInstance ( arg1 ) , arg0 . getProvider ( ) ) ; }