function elasticsearch_connector_sequence_get_next in Elasticsearch Connector 7
Same name and namespace in other branches
- 7.2 modules/elasticsearch_connector_sequence/elasticsearch_connector_sequence.module \elasticsearch_connector_sequence_get_next()
Generate a sequence/autoincrement id.
Parameters
string $sequence_id:
Return value
integer
File
- modules/
elasticsearch_connector_sequence/ elasticsearch_connector_sequence.module, line 33 - Module implementing a logic to have an sequence functionality, similar to MySQL sequence and PostgreSQL
Code
function elasticsearch_connector_sequence_get_next($sequence_id) {
$cluster_id = elasticsearch_connector_sequence_get_cluster_id();
if ($cluster_id) {
$client = elasticsearch_connector_get_client_by_id($cluster_id);
$index_name = elasticsearch_connector_sequence_get_index_name();
$type = variable_get('elasticsearch_connector_sequence_type', ELASTICSEARCH_CONNECTOR_SEQUENCE_DEFAULT_TYPE);
if ($client && $index_name) {
$doc['index'] = $index_name;
$doc['type'] = $type;
$doc['id'] = $sequence_id;
$doc['body'] = array();
try {
$response = $client
->index($doc);
return $response['_version'];
} catch (Exception $e) {
watchdog('ec_sequence', $e
->getMessage(), array(), WATCHDOG_ERROR);
return FALSE;
}
}
}
return FALSE;
}