コード例 #1
0
 /**
  * Loads readers
  */
 public static function initDataReaders()
 {
     if (DataReaderManager::$s_data_reader_manager_did_do_reader_init) {
         return true;
     }
     $vs_base_reader_dir = __CA_LIB_DIR__ . '/ca/Import/DataReaders';
     $va_readers = DataReaderManager::getDataReaderNames();
     foreach ($va_readers as $vs_reader) {
         if (!file_exists("{$vs_base_reader_dir}/{$vs_reader}.php")) {
             continue;
         }
         require_once "{$vs_base_reader_dir}/{$vs_reader}.php";
         $vs_reader_classname = "{$vs_reader}";
         $o_instance = new $vs_reader_classname();
         $va_status = $o_instance->checkStatus();
         if (!isset($va_status['available']) || !$va_status['available']) {
             continue;
         }
         DataReaderManager::$s_data_reader_instances[$vs_reader] = $o_instance;
     }
     DataReaderManager::$s_data_reader_manager_did_do_reader_init = true;
     return true;
 }