예제 #1
0
include_once dirname(__FILE__) . "/../../config/environment.php";
require_library('connectors/I3InteractiveAPI');
$timestart = time_elapsed();
$params["resource_id"] = 332;
$params["process occurrence"] = false;
$params["dwca_file"] = "http://localhost/cp/3IInteractive/DwCArchive_Cicadellinae.zip";
$params["dwca_file"] = "http://dmitriev.speciesfile.org/Export/DwCArchive_Cicadellinae.zip";
$func = new I3InteractiveAPI($params);
$func->get_all_taxa();
if (filesize(CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"] . "_working/taxon.tab") > 1000) {
    if (is_dir(CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"])) {
        recursive_rmdir(CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"] . "_previous");
        Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"], CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"] . "_previous");
    }
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"] . "_working", CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"]);
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"] . "_working.tar.gz", CONTENT_RESOURCE_LOCAL_PATH . $params["resource_id"] . ".tar.gz");
    Functions::set_resource_status_to_force_harvest($params["resource_id"]);
    Functions::count_resource_tab_files($params["resource_id"]);
    if ($undefined_uris = Functions::get_undefined_uris_from_resource($params["resource_id"])) {
        print_r($undefined_uris);
    }
    echo "\nUndefined URIs: " . count($undefined_uris) . "\n";
    require_library('connectors/DWCADiagnoseAPI');
    $func = new DWCADiagnoseAPI();
    $func->check_unique_ids($params["resource_id"]);
}
$elapsed_time_sec = time_elapsed() - $timestart;
echo "\n\n";
echo "\n elapsed time = " . $elapsed_time_sec / 60 . " minutes";
echo "\n elapsed time = " . $elapsed_time_sec / 60 / 60 . " hours";
echo "\n Done processing.\n";
예제 #2
0
<?php

namespace php_active_record;

/* 
NCBI Bio Projects
partner provides an XML dump
estimated execution time: 
*/
include_once dirname(__FILE__) . "/../../config/environment.php";
require_library('connectors/NCBIProjectsAPI');
$timestart = time_elapsed();
$resource_id = 173;
$func = new NCBIProjectsAPI($resource_id);
$func->get_all_taxa();
if (filesize(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_working/taxon.tab") > 1000) {
    if (is_dir(CONTENT_RESOURCE_LOCAL_PATH . $resource_id)) {
        recursive_rmdir(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_previous");
        Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id, CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_previous");
    }
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_working", CONTENT_RESOURCE_LOCAL_PATH . $resource_id);
    Functions::set_resource_status_to_force_harvest($resource_id);
}
$elapsed_time_sec = time_elapsed() - $timestart;
echo "\n\n elapsed time = " . $elapsed_time_sec / 60 . " minutes";
echo "\n elapsed time = " . $elapsed_time_sec / 60 / 60 . " hours";
echo "\n Done processing.\n";
예제 #3
0
 public static function finalize_dwca_resource($resource_id, $big_file = false)
 {
     if (filesize(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_working/taxon.tab") > 200) {
         if (is_dir(CONTENT_RESOURCE_LOCAL_PATH . $resource_id)) {
             recursive_rmdir(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_previous");
             Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id, CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_previous");
         }
         Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_working", CONTENT_RESOURCE_LOCAL_PATH . $resource_id);
         Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_working.tar.gz", CONTENT_RESOURCE_LOCAL_PATH . $resource_id . ".tar.gz");
         Functions::set_resource_status_to_force_harvest($resource_id);
         Functions::count_resource_tab_files($resource_id);
         if (!$big_file) {
             if ($undefined_uris = Functions::get_undefined_uris_from_resource($resource_id)) {
                 print_r($undefined_uris);
             }
             echo "\nUndefined URIs: " . count($undefined_uris) . "\n";
             require_library('connectors/DWCADiagnoseAPI');
             $func = new DWCADiagnoseAPI();
             $func->check_unique_ids($resource_id);
         }
     }
 }
예제 #4
0
// .3 seconds wait time
include_once dirname(__FILE__) . "/../../config/environment.php";
$resource_id = 15;
if (!Functions::can_this_connector_run($resource_id)) {
    return;
}
require_library('FlickrAPI');
$GLOBALS['ENV_DEBUG'] = false;
$auth_token = NULL;
if (FlickrAPI::valid_auth_token(FLICKR_AUTH_TOKEN)) {
    $auth_token = FLICKR_AUTH_TOKEN;
}
// create new _temp file
if (!($resource_file = Functions::file_open(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_temp.xml", "w+"))) {
    return;
}
// start the resource file with the XML header
fwrite($resource_file, \SchemaDocument::xml_header());
// query Flickr and write results to file
FlickrAPI::get_all_eol_photos($auth_token, $resource_file);
// write the resource footer
fwrite($resource_file, \SchemaDocument::xml_footer());
fclose($resource_file);
// cache the previous version and make this new version the current version
@unlink(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_previous.xml");
Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . ".xml", CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_previous.xml");
Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . "_temp.xml", CONTENT_RESOURCE_LOCAL_PATH . $resource_id . ".xml");
// set Flickr to force harvest
if (filesize(CONTENT_RESOURCE_LOCAL_PATH . $resource_id . ".xml") > 600) {
    Functions::set_resource_status_to_force_harvest($resource_id);
}
예제 #5
0
<?php

namespace php_active_record;

/* connector for Learning + Education Group
Partner provides RSS feed.
estimated execution time: just a few seconds
*/
include_once dirname(__FILE__) . "/../../config/environment.php";
$timestart = time_elapsed();
require_library('connectors/LearningEducationAPI');
$taxa = LearningEducationAPI::get_all_taxa();
$xml = \SchemaDocument::get_taxon_xml($taxa);
$resource_path = CONTENT_RESOURCE_LOCAL_PATH . "257_temp.xml";
if (!($OUT = fopen($resource_path, "w+"))) {
    debug(__CLASS__ . ":" . __LINE__ . ": Couldn't open file: " . $resource_path);
    return;
}
fwrite($OUT, $xml);
fclose($OUT);
if (filesize($resource_path) > 600) {
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . "257.xml", CONTENT_RESOURCE_LOCAL_PATH . "257_previous.xml");
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . "257_temp.xml", CONTENT_RESOURCE_LOCAL_PATH . "257.xml");
    $GLOBALS['db_connection']->update("UPDATE resources SET resource_status_id=" . ResourceStatus::find_or_create_by_translated_label('Force Harvest')->id . " WHERE id=257");
}
$elapsed_time_sec = time_elapsed() - $timestart;
echo "\n";
echo "elapsed time = {$elapsed_time_sec} seconds              \n";
echo "elapsed time = " . $elapsed_time_sec / 60 . " minutes   \n";
echo "\n\n Done processing.";
예제 #6
0
include_once dirname(__FILE__) . "/../../config/environment.php";
$timestart = time_elapsed();
require_library('connectors/ConabioAPI');
$resource_id = 106;
$func = new ConabioAPI();
$func->combine_all_xmls($resource_id);
$resource_path = CONTENT_RESOURCE_LOCAL_PATH . $resource_id . ".xml";
// /* working well - replaces Class='Insecta' to 'Reptilia' if Order=='Squamata' --- WEB-5509
require_library('ResourceDataObjectElementsSetting');
$func = new ResourceDataObjectElementsSetting($resource_id, $resource_path);
$xml = file_get_contents($resource_path);
$xml = $func->replace_taxon_element_value_with_condition("dwc:Class", "Insecta", "Reptilia", $xml, "dwc:Order", "Squamata");
$func->save_resource_document($xml);
// */
// start - this will get Tamborines videos from Vimeo and append it with the main resource 106.xml (DATA-1592)
Functions::file_rename($resource_path, CONTENT_RESOURCE_LOCAL_PATH . "temp_vimeo_to_tamborine1.xml");
get_videos_from_vimeo();
Functions::combine_all_eol_resource_xmls($resource_id, CONTENT_RESOURCE_LOCAL_PATH . "temp_vimeo_to_tamborine*.xml");
unlink(CONTENT_RESOURCE_LOCAL_PATH . "temp_vimeo_to_tamborine1.xml");
unlink(CONTENT_RESOURCE_LOCAL_PATH . "temp_vimeo_to_tamborine2.xml");
// end
if (filesize($resource_path) > 1000) {
    Functions::set_resource_status_to_force_harvest($resource_id);
    Functions::gzip_resource_xml($resource_id);
}
$elapsed_time_sec = time_elapsed() - $timestart;
echo "\n";
echo "elapsed time = " . $elapsed_time_sec / 60 . " minutes \n";
echo "elapsed time = " . $elapsed_time_sec / 60 / 60 . " hours \n";
function get_videos_from_vimeo()
{
예제 #7
0
<?php

namespace php_active_record;

include_once dirname(__FILE__) . "/../../config/environment.php";
require_library('connectors/PaleobiologyAPI');
$paleobiology_connector = new PaleobiologyAPI();
$paleobiology_connector->get_all_taxa();
if (filesize(CONTENT_RESOURCE_LOCAL_PATH . "paleobiology_working/taxon.tab") > 1000) {
    if (is_dir(CONTENT_RESOURCE_LOCAL_PATH . "paleobiology")) {
        recursive_rmdir(CONTENT_RESOURCE_LOCAL_PATH . "paleobiology_previous");
        Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . "paleobiology", CONTENT_RESOURCE_LOCAL_PATH . "paleobiology_previous");
    }
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . "paleobiology_working", CONTENT_RESOURCE_LOCAL_PATH . "paleobiology");
    #$GLOBALS['db_connection']->update("UPDATE resources SET resource_status_id=".ResourceStatus::find_or_create_by_translated_label('Force Harvest')->id." WHERE id=6");
}
예제 #8
0
 public static function move_up_if_only_directory($directory_path)
 {
     $files = read_dir($directory_path);
     $only_file = null;
     foreach ($files as $file) {
         // there can be only one only file, must not start with a dot
         if ($only_file) {
             return;
         }
         if (substr($file, 0, 1) == ".") {
             continue;
         }
         $only_file = $directory_path . "/" . $file;
     }
     if (is_dir($only_file)) {
         Functions::file_rename($only_file, $directory_path . "_swap");
         rmdir($directory_path);
         if (copy($directory_path . "_swap", $directory_path)) {
             unlink($directory_path . "_swap");
         }
     }
 }
예제 #9
0
<?php

namespace php_active_record;

include_once dirname(__FILE__) . "/../../config/environment.php";
require_library('connectors/BiopixAPI');
$biopix_connector = new BiopixAPI();
$biopix_connector->get_all_taxa();
if (filesize(CONTENT_RESOURCE_LOCAL_PATH . "31_working/taxon.tab") > 1000 && filesize(CONTENT_RESOURCE_LOCAL_PATH . "31_working/media_resource.tab") > 1000) {
    if (is_dir(CONTENT_RESOURCE_LOCAL_PATH . "31")) {
        recursive_rmdir(CONTENT_RESOURCE_LOCAL_PATH . "31_previous");
        Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . "31", CONTENT_RESOURCE_LOCAL_PATH . "31_previous");
    }
    Functions::file_rename(CONTENT_RESOURCE_LOCAL_PATH . "31_working", CONTENT_RESOURCE_LOCAL_PATH . "31");
    $GLOBALS['db_connection']->update("UPDATE resources SET resource_status_id=" . ResourceStatus::find_or_create_by_translated_label('Force Harvest')->id . " WHERE id=31");
}