Skip to content

Commit 9fb40f6

Browse files
committed
Added Casbin 2.0 support
1 parent e720aad commit 9fb40f6

File tree

2 files changed

+14
-22
lines changed

2 files changed

+14
-22
lines changed

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
],
1919
"license": "Apache-2.0",
2020
"require": {
21-
"casbin/casbin": "^1.0",
21+
"casbin/casbin": "^2.0",
2222
"doctrine/dbal": "^2.6"
2323
},
2424
"require-dev": {

src/Adapter.php

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<?php
22

3+
declare(strict_types=1);
4+
35
namespace CasbinAdapter\DBAL;
46

57
use Casbin\Persist\Adapter as AdapterContract;
@@ -109,7 +111,7 @@ public function savePolicyLine($ptype, array $rule)
109111
*
110112
* @param Model $model
111113
*/
112-
public function loadPolicy($model)
114+
public function loadPolicy(Model $model): void
113115
{
114116
$queryBuilder = $this->connection->createQueryBuilder();
115117
$stmt = $queryBuilder->select('ptype', 'v0', 'v1', 'v2', 'v3', 'v4', 'v5')->from($this->casbinRuleTableName)->execute();
@@ -126,23 +128,19 @@ public function loadPolicy($model)
126128
* saves all policy rules to the storage.
127129
*
128130
* @param Model $model
129-
*
130-
* @return bool
131131
*/
132-
public function savePolicy($model)
132+
public function savePolicy(Model $model): void
133133
{
134-
foreach ($model->model['p'] as $ptype => $ast) {
134+
foreach ($model['p'] as $ptype => $ast) {
135135
foreach ($ast->policy as $rule) {
136136
$this->savePolicyLine($ptype, $rule);
137137
}
138138
}
139-
foreach ($model->model['g'] as $ptype => $ast) {
139+
foreach ($model['g'] as $ptype => $ast) {
140140
foreach ($ast->policy as $rule) {
141141
$this->savePolicyLine($ptype, $rule);
142142
}
143143
}
144-
145-
return true;
146144
}
147145

148146
/**
@@ -152,12 +150,10 @@ public function savePolicy($model)
152150
* @param string $sec
153151
* @param string $ptype
154152
* @param array $rule
155-
*
156-
* @return mixed
157153
*/
158-
public function addPolicy($sec, $ptype, $rule)
154+
public function addPolicy(string $sec, string $ptype, array $rule): void
159155
{
160-
return $this->savePolicyLine($ptype, $rule);
156+
$this->savePolicyLine($ptype, $rule);
161157
}
162158

163159
/**
@@ -166,10 +162,8 @@ public function addPolicy($sec, $ptype, $rule)
166162
* @param string $sec
167163
* @param string $ptype
168164
* @param array $rule
169-
*
170-
* @return mixed
171165
*/
172-
public function removePolicy($sec, $ptype, $rule)
166+
public function removePolicy(string $sec, string $ptype, array $rule): void
173167
{
174168
$queryBuilder = $this->connection->createQueryBuilder();
175169
$queryBuilder->delete($this->casbinRuleTableName)->where('ptype = ?')->setParameter(0, $ptype);
@@ -178,7 +172,7 @@ public function removePolicy($sec, $ptype, $rule)
178172
$queryBuilder->andWhere('v'.strval($key).' = ?')->setParameter($key + 1, $value);
179173
}
180174

181-
return $queryBuilder->delete($this->casbinRuleTableName)->execute();
175+
$queryBuilder->delete($this->casbinRuleTableName)->execute();
182176
}
183177

184178
/**
@@ -188,11 +182,9 @@ public function removePolicy($sec, $ptype, $rule)
188182
* @param string $sec
189183
* @param string $ptype
190184
* @param int $fieldIndex
191-
* @param mixed ...$fieldValues
192-
*
193-
* @return mixed
185+
* @param string ...$fieldValues
194186
*/
195-
public function removeFilteredPolicy($sec, $ptype, $fieldIndex, ...$fieldValues)
187+
public function removeFilteredPolicy(string $sec, string $ptype, int $fieldIndex, string ...$fieldValues): void
196188
{
197189
$queryBuilder = $this->connection->createQueryBuilder();
198190
$queryBuilder->where('ptype = :ptype')->setParameter(':ptype', $ptype);
@@ -206,7 +198,7 @@ public function removeFilteredPolicy($sec, $ptype, $fieldIndex, ...$fieldValues)
206198
}
207199
}
208200

209-
return $queryBuilder->delete($this->casbinRuleTableName)->execute();
201+
$queryBuilder->delete($this->casbinRuleTableName)->execute();
210202
}
211203

212204
/**

0 commit comments

Comments
 (0)