public function push(string $event, $event_args = null) : EventChannelInterface
    {
        try{
            $this->channel->push($event, $event_args);
        }
        catch(EventSourceIsNotPushableException $e)
        {
            throw new EventStreamException('Event is not pushable.');
        }
        return $this;
    }