@@ -22,19 +22,15 @@ final class Chain implements Authentication
2222 */
2323 public function __construct (array $ authenticationChain = [])
2424 {
25- $ this ->setAuthenticationChain ($ authenticationChain );
26- }
25+ foreach ($ authenticationChain as $ authentication ) {
26+ if (!$ authentication instanceof Authentication) {
27+ throw new \InvalidArgumentException (
28+ 'Members of the authentication chain must be of type Http\Message\Authentication '
29+ );
30+ }
31+ }
2732
28- /**
29- * Adds an Authentication method to the chain.
30- *
31- * The order of authentication methods SHOULD NOT matter.
32- *
33- * @param Authentication $authentication
34- */
35- public function addAuthentication (Authentication $ authentication )
36- {
37- $ this ->authenticationChain [] = $ authentication ;
33+ $ this ->authenticationChain = $ authenticationChain ;
3834 }
3935
4036 /**
@@ -47,28 +43,6 @@ public function getAuthenticationChain()
4743 return $ this ->authenticationChain ;
4844 }
4945
50- /**
51- * Replaces the current authentication chain.
52- *
53- * @param array $authenticationChain
54- */
55- public function setAuthenticationChain (array $ authenticationChain )
56- {
57- $ this ->clearAuthenticationChain ();
58-
59- foreach ($ authenticationChain as $ authentication ) {
60- $ this ->addAuthentication ($ authentication );
61- }
62- }
63-
64- /**
65- * Clears the authentication chain.
66- */
67- public function clearAuthenticationChain ()
68- {
69- $ this ->authenticationChain = [];
70- }
71-
7246 /**
7347 * {@inheritdoc}
7448 */
0 commit comments