2017-07-20 01:49:41 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace Pterodactyl\Contracts\Repository;
|
|
|
|
|
2022-10-14 16:59:20 +00:00
|
|
|
use Pterodactyl\Models\Allocation;
|
|
|
|
|
2017-07-20 01:49:41 +00:00
|
|
|
interface AllocationRepositoryInterface extends RepositoryInterface
|
|
|
|
{
|
2018-01-21 22:02:03 +00:00
|
|
|
/**
|
2022-10-14 16:59:20 +00:00
|
|
|
* Return all the allocations that exist for a node that are not currently
|
2018-01-21 22:02:03 +00:00
|
|
|
* allocated.
|
|
|
|
*/
|
|
|
|
public function getUnassignedAllocationIds(int $node): array;
|
|
|
|
|
2018-01-28 23:14:14 +00:00
|
|
|
/**
|
|
|
|
* Return a single allocation from those meeting the requirements.
|
2018-01-28 23:14:34 +00:00
|
|
|
*/
|
2022-10-14 16:59:20 +00:00
|
|
|
public function getRandomAllocation(array $nodes, array $ports, bool $dedicated = false): ?Allocation;
|
2017-07-20 01:49:41 +00:00
|
|
|
}
|