/** * Factory method for returning a singleton instance of a column selector * * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder * @return Tx_PtExtlist_Domain_Model_ColumnSelector_ColumnSelector */ public function getInstance(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder) { $listIdentifier = $configurationBuilder->getListIdentifier(); if ($this->instances[$listIdentifier] === null) { $this->instances[$listIdentifier] = new Tx_PtExtlist_Domain_Model_ColumnSelector_ColumnSelector(); $this->instances[$listIdentifier]->setConfiguration($configurationBuilder->buildColumnSelectorConfiguration()); // Inject settings from session. $this->sessionPersistenceManagerBuilder->getInstance()->registerObjectAndLoadFromSession($this->instances[$listIdentifier]); // Inject settings from gp-vars. $this->getPostVarsAdapterFactory->getInstance()->injectParametersInObject($this->instances[$listIdentifier]); } return $this->instances[$listIdentifier]; }
/** * @static * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder * @param Tx_PtExtlist_Domain_Model_List_Header_ListHeader $listHeader */ protected function setVisibilityByColumnSelector(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder, Tx_PtExtlist_Domain_Model_List_Header_ListHeader $listHeader) { if ($configurationBuilder->buildColumnSelectorConfiguration()->getEnabled()) { $this->columnSelectorFactory->getInstance($configurationBuilder)->setVisibilityOnListHeader($listHeader); } }
public function testBuildcolumnSelectorConfiguration() { $configurationBuilder = new Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder($this->settings, 'test'); $columnSelectorConfig = $configurationBuilder->buildColumnSelectorConfiguration(); $this->assertTrue(is_a($columnSelectorConfig, 'Tx_PtExtlist_Domain_Configuration_ColumnSelector_ColumnSelectorConfig'), 'The method returned ' . get_class($columnSelectorConfig)); }