1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2026-02-05 14:14:03 +00:00

Change interface as events expect a TenantWithDatabase not just a Tenant

This commit is contained in:
Mark 2024-12-29 09:26:18 +01:00
parent 322fe07592
commit d2aaf5b11b
No known key found for this signature in database
GPG key ID: 79CFF7869BD39873
2 changed files with 6 additions and 4 deletions

View file

@ -9,6 +9,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Illuminate\Database\Eloquent\SoftDeletes;
use Stancl\Tenancy\Contracts\Tenant;
use Stancl\Tenancy\Contracts\UniqueIdentifierGenerator;
use Stancl\Tenancy\Database\Contracts\TenantWithDatabase;
use Stancl\Tenancy\ResourceSyncing\Events\CentralResourceAttachedToTenant;
use Stancl\Tenancy\ResourceSyncing\Events\CentralResourceDetachedFromTenant;
use Stancl\Tenancy\ResourceSyncing\Events\SyncedResourceSaved;
@ -78,7 +79,7 @@ trait ResourceSyncing
}
/** Default implementation for \Stancl\Tenancy\ResourceSyncing\SyncMaster */
public function triggerAttachEvent(Tenant&Model $tenant): void
public function triggerAttachEvent(TenantWithDatabase&Model $tenant): void
{
if ($this instanceof SyncMaster) {
/** @var SyncMaster&Model $this */
@ -87,7 +88,7 @@ trait ResourceSyncing
}
/** Default implementation for \Stancl\Tenancy\ResourceSyncing\SyncMaster */
public function triggerDetachEvent(Tenant&Model $tenant): void
public function triggerDetachEvent(TenantWithDatabase&Model $tenant): void
{
if ($this instanceof SyncMaster) {
/** @var SyncMaster&Model $this */

View file

@ -8,6 +8,7 @@ use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Stancl\Tenancy\Contracts\Tenant;
use Stancl\Tenancy\Database\Contracts\TenantWithDatabase;
// todo@move move all resource syncing-related things to a separate namespace?
@ -23,9 +24,9 @@ interface SyncMaster extends Syncable
public function getTenantModelName(): string;
public function triggerDetachEvent(Tenant&Model $tenant): void;
public function triggerDetachEvent(TenantWithDatabase&Model $tenant): void;
public function triggerAttachEvent(Tenant&Model $tenant): void;
public function triggerAttachEvent(TenantWithDatabase&Model $tenant): void;
public function triggerDeleteEvent(bool $forceDelete = false): void;