| @@ 275-284 (lines=10) @@ | ||
| 272 | * |
|
| 273 | * @return mixed|null |
|
| 274 | */ |
|
| 275 | protected function resolveUser() |
|
| 276 | { |
|
| 277 | $userResolver = Config::get('audit.resolver.user'); |
|
| 278 | ||
| 279 | if (is_subclass_of($userResolver, UserResolver::class)) { |
|
| 280 | return call_user_func([$userResolver, 'resolve']); |
|
| 281 | } |
|
| 282 | ||
| 283 | throw new AuditingException('Invalid UserResolver implementation'); |
|
| 284 | } |
|
| 285 | ||
| 286 | /** |
|
| 287 | * Resolve the URL. |
|
| @@ 293-302 (lines=10) @@ | ||
| 290 | * |
|
| 291 | * @return string |
|
| 292 | */ |
|
| 293 | protected function resolveUrl(): string |
|
| 294 | { |
|
| 295 | $urlResolver = Config::get('audit.resolver.url'); |
|
| 296 | ||
| 297 | if (is_subclass_of($urlResolver, UrlResolver::class)) { |
|
| 298 | return call_user_func([$urlResolver, 'resolve']); |
|
| 299 | } |
|
| 300 | ||
| 301 | throw new AuditingException('Invalid UrlResolver implementation'); |
|
| 302 | } |
|
| 303 | ||
| 304 | /** |
|
| 305 | * Resolve the IP Address. |
|
| @@ 311-320 (lines=10) @@ | ||
| 308 | * |
|
| 309 | * @return string |
|
| 310 | */ |
|
| 311 | protected function resolveIpAddress(): string |
|
| 312 | { |
|
| 313 | $ipAddressResolver = Config::get('audit.resolver.ip_address'); |
|
| 314 | ||
| 315 | if (is_subclass_of($ipAddressResolver, IpAddressResolver::class)) { |
|
| 316 | return call_user_func([$ipAddressResolver, 'resolve']); |
|
| 317 | } |
|
| 318 | ||
| 319 | throw new AuditingException('Invalid IpAddressResolver implementation'); |
|
| 320 | } |
|
| 321 | ||
| 322 | /** |
|
| 323 | * Resolve the User Agent. |
|
| @@ 329-338 (lines=10) @@ | ||
| 326 | * |
|
| 327 | * @return string|null |
|
| 328 | */ |
|
| 329 | protected function resolveUserAgent() |
|
| 330 | { |
|
| 331 | $userAgentResolver = Config::get('audit.resolver.user_agent'); |
|
| 332 | ||
| 333 | if (is_subclass_of($userAgentResolver, UserAgentResolver::class)) { |
|
| 334 | return call_user_func([$userAgentResolver, 'resolve']); |
|
| 335 | } |
|
| 336 | ||
| 337 | throw new AuditingException('Invalid UserAgentResolver implementation'); |
|
| 338 | } |
|
| 339 | ||
| 340 | /** |
|
| 341 | * Determine if an attribute is eligible for auditing. |
|