func PublishNamedEvent(pub Publisher, eventBody interface{}) {
	name := reflect.TypeOf(eventBody).Name()
	pub.Publish(name, eventBody)
}
func PublishNamedEvent(pub Publisher, eventBody interface{}) {
	name := reflect.TypeOf(eventBody).Name()
	pub.Publish(name, eventBody)
}
func PublishNamedEvent ( pub Publisher , eventBody interface { } ) { name := reflect . TypeOf ( eventBody ) . Name ( ) pub . Publish ( name , eventBody ) }
// PublishNamedEvent which name infered from eventBody interface name.
PublishNamedEvent which name infered from eventBody interface name .