mirror of
https://github.com/archtechx/tenancy.git
synced 2026-02-05 18:54:03 +00:00
method rename
This commit is contained in:
parent
5aa8231c81
commit
4245f46bc1
4 changed files with 12 additions and 12 deletions
|
|
@ -16,5 +16,5 @@ interface Syncable
|
||||||
|
|
||||||
public function triggerSyncEvent(): void;
|
public function triggerSyncEvent(): void;
|
||||||
|
|
||||||
public function getResourceCreationAttributes(): array|null; // todo come up with a better name
|
public function getCreationAttributes(): array|null; // todo come up with a better name
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ trait ResourceSyncing
|
||||||
event(new SyncedResourceSaved($this, tenant()));
|
event(new SyncedResourceSaved($this, tenant()));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getResourceCreationAttributes(): array|null
|
public function getCreationAttributes(): array|null
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -123,18 +123,18 @@ class UpdateSyncedResource extends QueueableListener
|
||||||
|
|
||||||
protected function getAttributesForCreation(Syncable $model): array
|
protected function getAttributesForCreation(Syncable $model): array
|
||||||
{
|
{
|
||||||
if (! $model->getResourceCreationAttributes()) {
|
if (! $model->getCreationAttributes()) {
|
||||||
// Creation attributes are not specified so create the model as 1:1 copy
|
// Creation attributes are not specified so create the model as 1:1 copy
|
||||||
return $model->getAttributes();
|
return $model->getAttributes();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Arr::isAssoc($model->getResourceCreationAttributes())) {
|
if (Arr::isAssoc($model->getCreationAttributes())) {
|
||||||
// Developer provided the default values
|
// Developer provided the default values
|
||||||
// We will merge the default values with sync attributes
|
// We will merge the default values with sync attributes
|
||||||
return array_merge($model->getResourceCreationAttributes(), $model->only($model->getSyncedAttributeNames()));
|
return array_merge($model->getCreationAttributes(), $model->only($model->getSyncedAttributeNames()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Developer provided the attribute names, so we'd use them to pick model attributes
|
// Developer provided the attribute names, so we'd use them to pick model attributes
|
||||||
return $model->only($model->getResourceCreationAttributes());
|
return $model->only($model->getCreationAttributes());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,7 @@ test('creating the resource in tenant database creates it in central database as
|
||||||
tenancy()->end();
|
tenancy()->end();
|
||||||
|
|
||||||
// Assert central user and Resource user has exact same attributes and values
|
// Assert central user and Resource user has exact same attributes and values
|
||||||
expect($resourceUser->getResourceCreationAttributes())->toBeNull();
|
expect($resourceUser->getCreationAttributes())->toBeNull();
|
||||||
expect(CentralUser::first()->toArray())->toEqual(ResourceUser::first()->toArray());
|
expect(CentralUser::first()->toArray())->toEqual(ResourceUser::first()->toArray());
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -232,7 +232,7 @@ test('creating the resource in central database creates it in tenant database as
|
||||||
$centralUser->tenants()->attach('t1');
|
$centralUser->tenants()->attach('t1');
|
||||||
|
|
||||||
$centralUser = CentralUser::first();
|
$centralUser = CentralUser::first();
|
||||||
expect($centralUser->getResourceCreationAttributes())->toBeNull();
|
expect($centralUser->getCreationAttributes())->toBeNull();
|
||||||
$tenant->run(function () use ($centralUser) {
|
$tenant->run(function () use ($centralUser) {
|
||||||
expect(ResourceUser::all())->toHaveCount(1);
|
expect(ResourceUser::all())->toHaveCount(1);
|
||||||
expect(ResourceUser::first()->toArray())->toEqual($centralUser->toArray());
|
expect(ResourceUser::first()->toArray())->toEqual($centralUser->toArray());
|
||||||
|
|
@ -820,7 +820,7 @@ class ResourceUser extends Model implements Syncable
|
||||||
|
|
||||||
// override method in ResourceUser class to return attribute default values
|
// override method in ResourceUser class to return attribute default values
|
||||||
class ResourceUserWithDefaultValues extends ResourceUser {
|
class ResourceUserWithDefaultValues extends ResourceUser {
|
||||||
public function getResourceCreationAttributes(): array
|
public function getCreationAttributes(): array
|
||||||
{
|
{
|
||||||
// Attributes default values when creating resources from tenant to central DB
|
// Attributes default values when creating resources from tenant to central DB
|
||||||
return
|
return
|
||||||
|
|
@ -832,7 +832,7 @@ class ResourceUserWithDefaultValues extends ResourceUser {
|
||||||
|
|
||||||
// override method in ResourceUser class to return attribute names
|
// override method in ResourceUser class to return attribute names
|
||||||
class ResourceUserWithAttributeNames extends ResourceUser {
|
class ResourceUserWithAttributeNames extends ResourceUser {
|
||||||
public function getResourceCreationAttributes(): array
|
public function getCreationAttributes(): array
|
||||||
{
|
{
|
||||||
// Attributes used when creating resources from tenant to central DB
|
// Attributes used when creating resources from tenant to central DB
|
||||||
// Notice here we are not adding "code" filed because it doesn't
|
// Notice here we are not adding "code" filed because it doesn't
|
||||||
|
|
@ -851,7 +851,7 @@ class ResourceUserWithAttributeNames extends ResourceUser {
|
||||||
|
|
||||||
// override method in CentralUser class to return attribute default values
|
// override method in CentralUser class to return attribute default values
|
||||||
class CentralUserWithDefaultValues extends CentralUser {
|
class CentralUserWithDefaultValues extends CentralUser {
|
||||||
public function getResourceCreationAttributes(): array
|
public function getCreationAttributes(): array
|
||||||
{
|
{
|
||||||
// Attributes default values when creating resources from central to tenant model
|
// Attributes default values when creating resources from central to tenant model
|
||||||
return
|
return
|
||||||
|
|
@ -863,7 +863,7 @@ class CentralUserWithDefaultValues extends CentralUser {
|
||||||
|
|
||||||
// override method in CentralUser class to return attribute names
|
// override method in CentralUser class to return attribute names
|
||||||
class CentralUserWithAttributeNames extends CentralUser {
|
class CentralUserWithAttributeNames extends CentralUser {
|
||||||
public function getResourceCreationAttributes(): array
|
public function getCreationAttributes(): array
|
||||||
{
|
{
|
||||||
// Attributes used when creating resources from central to tenant DB
|
// Attributes used when creating resources from central to tenant DB
|
||||||
return
|
return
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue