11
11
12
12
namespace LightSaml \SpBundle \Controller ;
13
13
14
- use LightSaml \Builder \ Profile \ Metadata \ MetadataProfileBuilder ;
14
+ use LightSaml \SymfonyBridgeBundle \ Bridge \ Container \ BuildContainer ;
15
15
use LightSaml \Builder \Profile \WebBrowserSso \Sp \SsoSpSendAuthnRequestProfileBuilderFactory ;
16
- use LightSaml \SymfonyBridgeBundle \Bridge \Container \PartyContainer ;
17
- use LightSaml \SymfonyBridgeBundle \Bridge \Container \StoreContainer ;
16
+ use LightSaml \Builder \Profile \Metadata \MetadataProfileBuilder ;
18
17
use Symfony \Bundle \FrameworkBundle \Controller \AbstractController ;
19
18
use Symfony \Component \HttpFoundation \Request ;
20
19
21
20
class DefaultController extends AbstractController
22
21
{
23
- private MetadataProfileBuilder $ metadataProfileBuilder ;
24
- private SsoSpSendAuthnRequestProfileBuilderFactory $ profileLoginFactory ;
25
- private StoreContainer $ storeContainer ;
26
- private PartyContainer $ partyContainer ;
27
- private string $ discoveryRoute ;
28
-
29
- public function __construct (
30
- MetadataProfileBuilder $ metadataProfileBuilder ,
31
- SsoSpSendAuthnRequestProfileBuilderFactory $ profileLoginFactory ,
32
- StoreContainer $ storeContainer ,
33
- PartyContainer $ partyContainer ,
34
- string $ discoveryRoute
35
- ) {
22
+ /**
23
+ * @var BuildContainer $buildContainer
24
+ */
25
+ protected BuildContainer $ buildContainer ;
26
+ /**
27
+ * @var SsoSpSendAuthnRequestProfileBuilderFactory $ssoSpSendAuthnRequestProfileBuilderFactory
28
+ */
29
+ protected SsoSpSendAuthnRequestProfileBuilderFactory $ ssoSpSendAuthnRequestProfileBuilderFactory ;
30
+ /**
31
+ * @var MetadataProfileBuilder $metadataProfileBuilder
32
+ */
33
+ protected MetadataProfileBuilder $ metadataProfileBuilder ;
34
+ /**
35
+ * @var string $samlSpDiscoveryRoute
36
+ */
37
+ protected string $ samlSpDiscoveryRoute ;
38
+
39
+ public function __construct (BuildContainer $ buildContainer , SsoSpSendAuthnRequestProfileBuilderFactory $ ssoSpSendAuthnRequestProfileBuilderFactory , MetadataProfileBuilder $ metadataProfileBuilder , string $ samlSpDiscoveryRoute )
40
+ {
41
+ $ this ->buildContainer = $ buildContainer ;
42
+ $ this ->ssoSpSendAuthnRequestProfileBuilderFactory = $ ssoSpSendAuthnRequestProfileBuilderFactory ;
36
43
$ this ->metadataProfileBuilder = $ metadataProfileBuilder ;
37
- $ this ->profileLoginFactory = $ profileLoginFactory ;
38
- $ this ->storeContainer = $ storeContainer ;
39
- $ this ->discoveryRoute = $ discoveryRoute ;
40
- $ this ->partyContainer = $ partyContainer ;
44
+ $ this ->samlSpDiscoveryRoute = $ samlSpDiscoveryRoute ;
41
45
}
42
-
43
46
public function metadataAction ()
44
47
{
45
- $ context = $ this ->metadataProfileBuilder ->buildContext ();
46
- $ action = $ this ->metadataProfileBuilder ->buildAction ();
48
+ $ profile = $ this ->metadataProfileBuilder ;
49
+ $ context = $ profile ->buildContext ();
50
+ $ action = $ profile ->buildAction ();
47
51
48
52
$ action ->execute ($ context );
49
53
@@ -52,7 +56,7 @@ public function metadataAction()
52
56
53
57
public function discoveryAction ()
54
58
{
55
- $ parties = $ this ->partyContainer ->getIdpEntityDescriptorStore ()->all ();
59
+ $ parties = $ this ->buildContainer -> getPartyContainer () ->getIdpEntityDescriptorStore ()->all ();
56
60
57
61
if (1 == count ($ parties )) {
58
62
return $ this ->redirect ($ this ->generateUrl ('lightsaml_sp.login ' , ['idp ' => $ parties [0 ]->getEntityID ()]));
@@ -67,10 +71,10 @@ public function loginAction(Request $request)
67
71
{
68
72
$ idpEntityId = $ request ->get ('idp ' );
69
73
if (null === $ idpEntityId ) {
70
- return $ this ->redirect ($ this ->generateUrl ($ this ->discoveryRoute ));
74
+ return $ this ->redirect ($ this ->generateUrl ($ this ->samlSpDiscoveryRoute ));
71
75
}
72
76
73
- $ profile = $ this ->profileLoginFactory ->get ($ idpEntityId );
77
+ $ profile = $ this ->ssoSpSendAuthnRequestProfileBuilderFactory ->get ($ idpEntityId );
74
78
$ context = $ profile ->buildContext ();
75
79
$ action = $ profile ->buildAction ();
76
80
@@ -81,7 +85,7 @@ public function loginAction(Request $request)
81
85
82
86
public function sessionsAction ()
83
87
{
84
- $ ssoState = $ this ->storeContainer ->getSsoStateStore ()->get ();
88
+ $ ssoState = $ this ->buildContainer -> getStoreContainer () ->getSsoStateStore ()->get ();
85
89
86
90
return $ this ->render ('@LightSamlSp/sessions.html.twig ' , [
87
91
'sessions ' => $ ssoState ->getSsoSessions (),
0 commit comments