High level common api for event/delegate.