public function setEntityPrototype($entityPrototype)
    {
        if (!is_object($entityPrototype)) {
            throw new Exception\InvalidArgumentException(
                sprintf(
                    '%s expects parameter 1 to be an object, %s provided instead',
                    __METHOD__,
                    is_object($entityPrototype) ? get_class($entityPrototype) : gettype($entityPrototype)
                )
            );
        }
        $this->entityPrototype = $entityPrototype;

        return $this;
    }