/**
  * Constructor.
  */
 public function __construct()
 {
     $schedulePeriodStr = self::getSchedulePeriod();
     // created the scheduledtime instance, also, since GeoIP updates are done on tuesdays,
     // get new DBs on Wednesday
     switch ($schedulePeriodStr) {
         case self::SCHEDULE_PERIOD_WEEKLY:
             $schedulePeriod = new Weekly();
             $schedulePeriod->setDay(3);
             break;
         case self::SCHEDULE_PERIOD_MONTHLY:
         default:
             $schedulePeriod = new Monthly();
             $schedulePeriod->setDayOfWeek(3, 0);
             break;
     }
     parent::__construct($this, 'update', null, $schedulePeriod, Task::LOWEST_PRIORITY);
 }