using System;
namespace Bro.Common.PubSub
{
///
/// 发布/订阅中心
///
public interface IPubSubCenter
{
///
/// 订阅事件
///
///
///
///
bool Subscribe(string tag, Func method);
///
/// 订阅事件
///
///
///
///
bool Subscribe(string tag, ISubscriber subscribe);
///
/// 发布事件
///
///
///
void Publish(string tag, object param1, object param2, bool isAsync);
///
/// 获取所有订阅者
///
///
///
Subscribers GetSubscribers(string tag);
///
/// 获取某个订阅者
///
///
///
///
ISubscriber GetSubscriber(string tag, string name);
///
/// 移除某个订阅者
///
///
///
///
bool RemoveSubscriber(string tag, string name);
///
/// 移除某类所有订阅者
///
///
///
bool RemoveSubscribers(string tag);
}
}