-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Trinity Notification je Symfony bundle pro zpracování změn, které vznikly v entitách (vytvoření, změna či smazání). Podstata je taková, že změny, které vzniknou v entitě jsou pomocí event manageru zpracovány a předány do Entity manageru. Ten pak vyhodnotí (anotace entity), zda má změny dále zpracovat či ne.
###Anotace entity Anotace entity se používají pro definici zdroje (atributy entity) a http metod (post, put, delete). Pokud je vyhodnocena změna entity a souhlasí http metoda dojde ke zpracování entity.
####Zdroj: Jedná se o názvy atributů entity.
####Api driver: V současné době je pro notifikace 1 driver - API driver, který změny, které nastaly v entitě předává dál (aplikace A notifikuje aplikaci B).
Libovolná entita u které chceme zachytávat změnu.
Source - Zdroj pro notifikaci - atribut nebo metoda.
Methods - http metoda( put, post, delete )
use Trinity\NotificationBundle\Annotations as N;
/**
* User
* @N\Source(columns="id, username, email, firstName, lastName, avatar, locked")
* @N\Methods(types={"put", "delete"})
*
*/
class User {
}
Klient je třída, která je notifikována o změně. Příkladem může být aplikace A, která používá notifikace a chce informovat aplikaci B, že u ní došlo ke změně jména u uživatele.
class Client implements IClient{
/**
* Get notifyUrl.
*
* @return string
*/
public function getNotifyUrl()
{
return $this->url.'/'.self::NOTIFY_URI;
}
}