function tripal_ws_services
3.x tripal_ws.module | tripal_ws_services() |
The callback function for all RESTful web services.
Related topics
File
- tripal_ws/
tripal_ws.module, line 268 - The Tripal Web Service Module
Code
function tripal_ws_services() {
$ws_path = func_get_args();
$params = $_GET;
unset($params['q']);
// The web services should never be cached.
drupal_page_is_cacheable(FALSE);
// Using the provided version number, determine which web services
// verion to call.
$version = array_shift($ws_path);
if ($version and preg_match('/v\d+\.\d+/', $version)) {
$api_url = 'ws/' . $version;
// Add the file with the appropriate web services.
module_load_include('inc', 'tripal_ws', 'includes/tripal_ws.rest_' . $version);
$version = preg_replace('/\./', '_', $version);
$function = 'tripal_ws_services_' . $version;
$response = array();
if (function_exists($function)) {
$response = $function($api_url, $ws_path, $params);
}
}
else {
// TODO: What do we do if no version is provided?
}
drupal_add_http_header('Content-Type', 'application/ld+json');
print drupal_json_encode($response);
}