/**
  * @since 2.0
  *
  * @return true
  */
 public function process()
 {
     $settings = ApplicationFactory::getInstance()->getSettings();
     $deleteSubjectJob = new DeleteSubjectJob($this->wikiPage->getTitle(), array('asDeferredJob' => $settings->get('smwgDeleteSubjectAsDeferredJob'), 'withAssociates' => $settings->get('smwgDeleteSubjectWithAssociatesRefresh')));
     $deleteSubjectJob->execute();
     return true;
 }
Exemplo n.º 2
0
 /**
  * @return DeleteSubjectJob
  */
 private function acquireInstance(Title $title = null, $settings = array())
 {
     if ($title === null) {
         $title = Title::newFromText(__METHOD__);
     }
     $defaultSettings = array('smwgCacheType' => 'hash', 'smwgEnableUpdateJobs' => false, 'smwgDeleteSubjectAsDeferredJob' => false, 'smwgDeleteSubjectWithAssociatesRefresh' => false);
     $settings = Settings::newFromArray(array_merge($defaultSettings, $settings));
     $semanticData = new SemanticData(DIWikiPage::newFromTitle($title));
     $mockStore = $this->getMockBuilder('\\SMW\\Store')->disableOriginalConstructor()->setMethods(array('deleteSubject', 'getSemanticData', 'getProperties', 'getInProperties'))->getMockForAbstractClass();
     $mockStore->expects($this->once())->method('deleteSubject')->will($this->returnCallback(array($this, 'mockStoreDeleteSubjectCallback')));
     $mockStore->expects($this->any())->method('getSemanticData')->will($this->returnValue($semanticData));
     $mockStore->expects($this->any())->method('getProperties')->will($this->returnValue(array()));
     $mockStore->expects($this->any())->method('getInProperties')->will($this->returnValue(array()));
     ApplicationFactory::getInstance()->registerObject('Store', $mockStore);
     ApplicationFactory::getInstance()->registerObject('Settings', $settings);
     $parameters = array('asDeferredJob' => $settings->get('smwgDeleteSubjectAsDeferredJob'), 'withAssociates' => $settings->get('smwgDeleteSubjectWithAssociatesRefresh'));
     $instance = new DeleteSubjectJob($title, $parameters);
     $instance->setJobQueueEnabledState(false);
     return $instance;
 }