/**
  * tears down the fixture
  */
 public function tearDown()
 {
     // remove all tasks
     $scheduler = Tinebase_Core::getScheduler();
     $scheduler->getBackend()->saveQueue();
     // init default tasks
     Tinebase_Scheduler_Task::addAlarmTask($scheduler);
     Tinebase_Scheduler_Task::addCacheCleanupTask($scheduler);
     Tinebase_Scheduler_Task::addCredentialCacheCleanupTask($scheduler);
     Tinebase_Scheduler_Task::addTempFileCleanupTask($scheduler);
     Tinebase_Scheduler_Task::addDeletedFileCleanupTask($scheduler);
 }
Example #2
0
 /**
  * update to 4.8
  * - add temp file cleanup task to scheduler
  */
 public function update_7()
 {
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addTempFileCleanupTask($scheduler);
     $this->setApplicationVersion('Tinebase', '4.8');
 }
Example #3
0
 /**
  * update to 5.7
  * - add deleted file cleanup task to scheduler
  */
 public function update_6()
 {
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addDeletedFileCleanupTask($scheduler);
     $this->setApplicationVersion('Tinebase', '5.7');
 }
Example #4
0
 /**
  * init scheduler tasks
  */
 protected function _initializeSchedulerTasks()
 {
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addAlarmTask($scheduler);
     Tinebase_Scheduler_Task::addCacheCleanupTask($scheduler);
     Tinebase_Scheduler_Task::addCredentialCacheCleanupTask($scheduler);
     Tinebase_Scheduler_Task::addTempFileCleanupTask($scheduler);
     Tinebase_Scheduler_Task::addDeletedFileCleanupTask($scheduler);
 }
 /**
  * create scheduler task
  * 
  * @return Tinebase_Scheduler_Task
  */
 protected function _createTask()
 {
     $request = new Zend_Controller_Request_Http();
     $request->setControllerName('Tinebase_Alarm');
     $request->setActionName('sendPendingAlarms');
     $request->setParam('eventName', 'Tinebase_Event_Async_Minutely');
     $task = new Tinebase_Scheduler_Task();
     $task->setMonths("Jan-Dec");
     $task->setWeekdays("Sun-Sat");
     $task->setDays("1-31");
     $task->setHours("0-23");
     $task->setMinutes("0/1");
     $task->setRequest($request);
     return $task;
 }
 /**
  * testCleanupCacheTriggeredByScheduler (this is only for code coverage)
  * 
  * @see Tinebase_ControllerTest::testCleanupCache() for the real cache cleanup test
  */
 public function testCleanupCacheTriggeredByScheduler()
 {
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addCacheCleanupTask($scheduler);
     $scheduler->run();
 }
Example #7
0
 /**
  * update to 3.23
  * - add queue + cache cleanup tasks to scheduler
  */
 public function update_22()
 {
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addQueueTask($scheduler);
     Tinebase_Scheduler_Task::addCacheCleanupTask($scheduler);
     $this->setApplicationVersion('Tinebase', '3.23');
 }
 /**
  * update to 6.4
  * - add credential cache cleanup task to scheduler
  */
 public function update_3()
 {
     Tinebase_Scheduler_Task::addSessionsCleanupTask(Tinebase_Core::getScheduler());
     $this->setApplicationVersion('Tinebase', '6.4');
 }
 /**
  * add access log cleanup task to scheduler
  * 
  * @param Zend_Scheduler $_scheduler
  */
 public static function addAccessLogCleanupTask(Zend_Scheduler $_scheduler)
 {
     $task = Tinebase_Scheduler_Task::getPreparedTask(Tinebase_Scheduler_Task::TASK_TYPE_DAILY, array('controller' => 'Tinebase_AccessLog', 'action' => 'clearTable'));
     $_scheduler->addTask('Tinebase_AccessLogCleanup', $task);
     $_scheduler->saveTask();
     if (Tinebase_Core::isLogLevel(Zend_Log::INFO)) {
         Tinebase_Core::getLogger()->info(__METHOD__ . '::' . __LINE__ . ' Saved task Tinebase_AccessLog::clearTable in scheduler.');
     }
 }
 /**
  * adds import table
  */
 public function update_5()
 {
     $tableDefinition = '
         <table>
             <name>import</name>
             <version>1</version>
             <declaration>
                 <field>
                     <name>id</name>
                     <type>text</type>
                     <length>80</length>
                     <notnull>true</notnull>
                 </field>
                 <field>
                     <name>timestamp</name>
                     <type>datetime</type>
                 </field>
                 <field>
                     <name>user_id</name>
                     <type>text</type>
                     <length>80</length>
                     <notnull>true</notnull>
                 </field>
                 <field>
                     <name>model</name>
                     <type>text</type>
                     <length>80</length>
                     <notnull>true</notnull>
                 </field>
                 <field>
                     <name>application_id</name>
                     <type>text</type>
                     <length>80</length>
                     <notnull>true</notnull>
                 </field>
                 <field>
                     <name>synctoken</name>
                     <type>text</type>
                     <length>80</length>
                 </field>
                 <field>
                     <name>container_id</name>
                     <length>80</length>
                     <type>text</type>
                 </field>
                 <field>
                     <name>sourcetype</name>
                     <type>text</type>
                     <notnull>true</notnull>
                 </field>
                 <field>
                     <name>interval</name>
                     <type>text</type>
                 </field>
                 <field>
                     <name>source</name>
                     <type>text</type>
                 </field>
                 <field>
                     <name>options</name>
                     <type>text</type>
                 </field>
                 <index>
                     <name>id</name>
                     <primary>true</primary>
                     <field>
                         <name>id</name>
                     </field>
                 </index>
                 <field>
                     <name>created_by</name>
                     <type>text</type>
                     <length>40</length>
                 </field>
                 <field>
                     <name>creation_time</name>
                     <type>datetime</type>
                 </field>
                 <field>
                     <name>last_modified_by</name>
                     <type>text</type>
                     <length>40</length>
                 </field>
                 <field>
                     <name>last_modified_time</name>
                     <type>datetime</type>
                 </field>
                 <field>
                     <name>is_deleted</name>
                     <type>boolean</type>
                     <notnull>true</notnull>
                     <default>false</default>
                 </field>
                 <field>
                     <name>deleted_by</name>
                     <type>text</type>
                     <length>40</length>
                 </field>
                 <field>
                     <name>deleted_time</name>
                     <type>datetime</type>
                 </field>
                 <field>
                     <name>seq</name>
                     <type>integer</type>
                     <notnull>true</notnull>
                     <default>0</default>
                 </field>
                 <index>
                     <name>import::application_id--applications::id</name>
                     <field>
                         <name>application_id</name>
                     </field>
                     <foreign>true</foreign>
                     <reference>
                         <table>applications</table>
                         <field>id</field>
                     </reference>
                 </index>
                 <index>
                     <name>import::user_id--accounts::id</name>
                     <field>
                         <name>user_id</name>
                     </field>
                     <foreign>true</foreign>
                     <reference>
                         <table>accounts</table>
                         <field>id</field>
                     </reference>
                 </index>
             </declaration>
         </table>';
     $table = Setup_Backend_Schema_Table_Factory::factory('String', $tableDefinition);
     $this->_backend->createTable($table);
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addImportTask($scheduler);
     $this->setApplicationVersion('Tinebase', '8.6');
 }
 /**
  * update to 7.6
  * 
  * @see 0008318: add clear accesslog to scheduler
  */
 public function update_5()
 {
     $scheduler = Tinebase_Core::getScheduler();
     Tinebase_Scheduler_Task::addAccessLogCleanupTask($scheduler);
     $this->setApplicationVersion('Tinebase', '7.6');
 }