/**
  * Factory method creates instance of breadcrumbs collection for a given filterbox collection
  *
  * @param Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder
  * @param Tx_PtExtlist_Domain_Model_Filter_FilterboxCollection $filterboxCollection
  * @return Tx_PtExtlist_Domain_Model_BreadCrumbs_BreadCrumbCollection
  */
 public function getInstanceByFilterboxCollection(Tx_PtExtlist_Domain_Configuration_ConfigurationBuilder $configurationBuilder, Tx_PtExtlist_Domain_Model_Filter_FilterboxCollection $filterboxCollection)
 {
     if (!array_key_exists($filterboxCollection->getListIdentifier(), $this->instances) || $this->instances[$filterboxCollection->getListIdentifier()] == null) {
         $breadCrumbCollection = new Tx_PtExtlist_Domain_Model_BreadCrumbs_BreadCrumbCollection();
         $breadCrumbCollection->injectConfigurationBuilder($configurationBuilder);
         $getPostVarsAdapterFactory = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Object\\ObjectManager')->get('Tx_PtExtlist_Domain_StateAdapter_GetPostVarAdapterFactory');
         /* @var $getPostVarsAdapterFactory Tx_PtExtlist_Domain_StateAdapter_GetPostVarAdapterFactory */
         $gpVarsAdapter = $getPostVarsAdapterFactory->getInstance();
         $gpVarsAdapter->injectParametersInObject($breadCrumbCollection);
         foreach ($filterboxCollection as $filterbox) {
             /* @var $filterbox Tx_PtExtlist_Domain_Model_Filter_Filterbox */
             foreach ($filterbox as $filter) {
                 /* @var $filter Tx_PtExtlist_Domain_Model_Filter_FilterInterface */
                 if ($filter->isActive()) {
                     $breadcrumb = $filter->getFilterBreadCrumb();
                     if ($breadcrumb !== null) {
                         // TODO at the moment, proxy filters generate a null breadcrumb. Fix this!
                         $breadCrumbCollection->addBreadCrumb($breadcrumb);
                     }
                 }
             }
         }
         $this->instances[$filterboxCollection->getListIdentifier()] = $breadCrumbCollection;
     }
     return $this->instances[$filterboxCollection->getListIdentifier()];
 }
 public function testSetListIdentifier()
 {
     $filterboxCollection = new Tx_PtExtlist_Domain_Model_Filter_FilterboxCollection();
     $filterboxCollection->setListIdentifier('test123');
     $listId = $filterboxCollection->getListIdentifier();
     $this->assertEquals('test123', $listId);
 }