Implementasi dasar pola desain Mediator yang digunakan untuk mendorong pemisahan antar sistem yang berbeda, seperti yang dijelaskan di sini.
Buat instance kelas MessageService saat aplikasi Anda pertama kali dimulai. Kemudian, saat membuat sistem Anda, masukkan instance MessageService sebagai dependensi. Sistem kemudian dapat berlangganan jenis pesan tertentu dengan menyediakan fungsi callback dan jenis pesan:
_messageService . Subscribe ( ApplicationStarted , MessageType . ApplicationStarted ) ;Untuk mengirim pesan antar sistem, Anda hanya perlu mengirim IMessage ke MessageService:
_messageService . SendMessage ( new EmptyMessage ( MessageType . ApplicationStarted ) ) ;Dalam fungsi panggilan balik sistem berlangganan, IMessage dapat dimasukkan ke dalam tipe data apa pun yang dibutuhkan sistem Anda:
private void ReceiveStringMessage ( IMessage obj )
{
StringMessage msg = ( StringMessage ) obj ;
Debug . Log ( "Receive message: " + msg . String )
}Tipe pesan tambahan dapat dibuat dengan mendefinisikan lebih banyak nilai di enum MessageType dan juga dengan membuat kelas yang mewarisi dari IMessage.