42 lines
		
	
	
		
			939 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			939 B
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| declare(strict_types=1);
 | |
| 
 | |
| /*
 | |
|  * The MIT License (MIT)
 | |
|  *
 | |
|  * Copyright (c) 2014-2020 Spomky-Labs
 | |
|  *
 | |
|  * This software may be modified and distributed under the terms
 | |
|  * of the MIT license.  See the LICENSE file for details.
 | |
|  */
 | |
| 
 | |
| namespace Jose\Component\Signature;
 | |
| 
 | |
| use Jose\Component\Core\AlgorithmManagerFactory;
 | |
| 
 | |
| class JWSVerifierFactory
 | |
| {
 | |
|     /**
 | |
|      * @var AlgorithmManagerFactory
 | |
|      */
 | |
|     private $algorithmManagerFactory;
 | |
| 
 | |
|     public function __construct(AlgorithmManagerFactory $algorithmManagerFactory)
 | |
|     {
 | |
|         $this->algorithmManagerFactory = $algorithmManagerFactory;
 | |
|     }
 | |
| 
 | |
|     /**
 | |
|      * Creates a JWSVerifier using the given signature algorithm aliases.
 | |
|      *
 | |
|      * @param string[] $algorithms
 | |
|      */
 | |
|     public function create(array $algorithms): JWSVerifier
 | |
|     {
 | |
|         $algorithmManager = $this->algorithmManagerFactory->create($algorithms);
 | |
| 
 | |
|         return new JWSVerifier($algorithmManager);
 | |
|     }
 | |
| }
 |