Getting a Guardian instance
Last updated
use Midnite81\Guardian\Factories\GuardianFactory;
use Midnite81\Guardian\Store\FileStore;
$guardian = GuardianFactory::create(
'weather-conditions',
new FileStore('/path/to/cache'),
[RateLimitRule::allow(100)->perMinute()],
[ErrorHandlingRule::allowFailures(5)->perMinute()]
);use Midnite81\Guardian\Factories\LaravelGuardianFactory;
// Using Laravel's built-in cache
$guardian = LaravelGuardianFactory::make(
'weather-conditions',
[RateLimitRule::allow(100)->perMinute()],
[ErrorHandlingRule::allowFailures(5)->perMinute()]
);
// Using a custom cache
$guardian = LaravelGuardianFactory::create(
'weather-conditions',
new FileStore('/path/to/cache'),
[RateLimitRule::allow(100)->perMinute()],
[ErrorHandlingRule::allowFailures(5)->perMinute()]
);use Midnite81\Guardian\Guardian;
use Midnite81\Guardian\Store\FileStore;
$guardian = new Guardian(
'spotify-playlist',
new FileStore('/path/to/cache'),
[RateLimitRule::allow(100)->perMinute()],
[ErrorHandlingRule::allowFailures(5)->perMinute()]
);use Midnite81\Guardian\Guardian;
class MyController
{
public function __construct(protected Guardian $guardian)
{
$this->guardian->setIdentifier('spotify-playlist')
->setCache($customCache) // Optional: defaults to Laravel's cache
->addRules([RateLimitRule::allow(100)->perMinute()])
->addErrorRules([ErrorHandlingRule::allowFailures(5)->perMinute()]);
}
}use Midnite81\Guardian\Facades\Guardian;
// Using Laravel's built-in cache
$guardian = Guardian::make(
'weather-conditions',
[RateLimitRule::allow(100)->perMinute()]
);
// Using a custom cache
$guardian = Guardian::create(
'weather-conditions',
new FileStore('/path/to/cache'),
[RateLimitRule::allow(100)->perMinute()],
[ErrorHandlingRule::allowFailures(5)->perMinute()]
);