/**
  * Sets a container for current component
  *
  * @param __IContainer $container The component container
  */
 public function setContainer(__IContainer &$container)
 {
     //protect to infinite recursion
     if ($this->_container == null || $this->_container->getId() !== $container->getId()) {
         $this->_container =& $container;
         $container->addComponent($this);
     }
 }
 /**
  * Overwriten from __UIComponent in order to ensure that the parent component is a {@link __ItemListComponent} instance
  *
  * @param __IContainer $container The container component
  */
 public function setContainer(__IContainer &$container)
 {
     if ($container instanceof __ItemListComponent) {
         parent::setContainer($container);
     } else {
         throw __ExceptionFactory::getInstance()->createException('Wrong container component for an __ItemComponent. An __ItemListComponent was expected.');
     }
 }