/**
  * @param Noovias_Cron_Data_CronExpression $data
  * @return string
  * @throws Exception
  */
 protected function calculateMonth(Noovias_Cron_Data_CronExpression $data)
 {
     $monthoption = $data->getMonthOption();
     if ($monthoption === Noovias_Cron_Data_CronExpression::OPTION_EVERY) {
         return '*';
     }
     if ($monthoption === Noovias_Cron_Data_CronExpression::OPTION_SPECIFY) {
         if (!is_array($data->getSpecifyMonth())) {
             throw new Noovias_Cron_Exception_CouldNotGenerateCronExpression(self::GENERATION_EXCEPTION_MESSAGE);
         }
         return implode(',', $data->getSpecifyMonth());
     }
     if ($monthoption === Noovias_Cron_Data_CronExpression::OPTION_FROMTO) {
         return $data->getFromMonth() . '-' . $data->getToMonth();
     }
     // Throw exception if there was no return yet
     throw new Noovias_Cron_Exception_CouldNotGenerateCronExpression(self::GENERATION_EXCEPTION_MESSAGE);
 }