@@ -28,10 +28,14 @@ class Driver implements MappingDriver
2828 /** @var bool */
2929 private $ persistAccessToken ;
3030
31- public function __construct (string $ clientClass , bool $ persistAccessToken )
31+ /** @var string */
32+ private $ tablePrefix ;
33+
34+ public function __construct (string $ clientClass , bool $ persistAccessToken , string $ tablePrefix = 'oauth2_ ' )
3235 {
3336 $ this ->clientClass = $ clientClass ;
3437 $ this ->persistAccessToken = $ persistAccessToken ;
38+ $ this ->tablePrefix = $ tablePrefix ;
3539 }
3640
3741 public function loadMetadataForClass ($ className , ClassMetadata $ metadata ): void
@@ -97,7 +101,7 @@ private function buildAbstractClientMetadata(ClassMetadata $metadata): void
97101 private function buildAccessTokenMetadata (ClassMetadata $ metadata ): void
98102 {
99103 (new ClassMetadataBuilder ($ metadata ))
100- ->setTable (' oauth2_access_token ' )
104+ ->setTable ($ this -> tablePrefix . ' access_token ' )
101105 ->createField ('identifier ' , 'string ' )->makePrimaryKey ()->length (80 )->option ('fixed ' , true )->build ()
102106 ->addField ('expiry ' , 'datetime_immutable ' )
103107 ->createField ('userIdentifier ' , 'string ' )->length (128 )->nullable (true )->build ()
@@ -110,7 +114,7 @@ private function buildAccessTokenMetadata(ClassMetadata $metadata): void
110114 private function buildAuthorizationCodeMetadata (ClassMetadata $ metadata ): void
111115 {
112116 (new ClassMetadataBuilder ($ metadata ))
113- ->setTable (' oauth2_authorization_code ' )
117+ ->setTable ($ this -> tablePrefix . ' authorization_code ' )
114118 ->createField ('identifier ' , 'string ' )->makePrimaryKey ()->length (80 )->option ('fixed ' , true )->build ()
115119 ->addField ('expiry ' , 'datetime_immutable ' )
116120 ->createField ('userIdentifier ' , 'string ' )->length (128 )->nullable (true )->build ()
@@ -123,15 +127,15 @@ private function buildAuthorizationCodeMetadata(ClassMetadata $metadata): void
123127 private function buildClientMetadata (ClassMetadata $ metadata ): void
124128 {
125129 (new ClassMetadataBuilder ($ metadata ))
126- ->setTable (' oauth2_client ' )
130+ ->setTable ($ this -> tablePrefix . ' client ' )
127131 ->createField ('identifier ' , 'string ' )->makePrimaryKey ()->length (32 )->build ()
128132 ;
129133 }
130134
131135 private function buildRefreshTokenMetadata (ClassMetadata $ metadata ): void
132136 {
133137 $ classMetadataBuilder = (new ClassMetadataBuilder ($ metadata ))
134- ->setTable (' oauth2_refresh_token ' )
138+ ->setTable ($ this -> tablePrefix . ' refresh_token ' )
135139 ->createField ('identifier ' , 'string ' )->makePrimaryKey ()->length (80 )->option ('fixed ' , true )->build ()
136140 ->addField ('expiry ' , 'datetime_immutable ' )
137141 ->addField ('revoked ' , 'boolean ' )
0 commit comments