diff --git a/src/mongoc/mongoc-topology-private.h b/src/mongoc/mongoc-topology-private.h index 1c475f8473..1a961ba966 100644 --- a/src/mongoc/mongoc-topology-private.h +++ b/src/mongoc/mongoc-topology-private.h @@ -100,6 +100,9 @@ int64_t mongoc_topology_server_timestamp (mongoc_topology_t *topology, uint32_t id); +mongoc_topology_description_type_t +_mongoc_topology_description_get_type (mongoc_topology_t *topology); + bool _mongoc_topology_start_background_scanner (mongoc_topology_t *topology); diff --git a/src/mongoc/mongoc-topology.c b/src/mongoc/mongoc-topology.c index 0c8a8db298..8d09d4e686 100644 --- a/src/mongoc/mongoc-topology.c +++ b/src/mongoc/mongoc-topology.c @@ -773,6 +773,34 @@ mongoc_topology_server_timestamp (mongoc_topology_t *topology, return timestamp; } +/* + *-------------------------------------------------------------------------- + * + * _mongoc_topology_description_get_type -- + * + * Return the topology's description's type. + * + * NOTE: this method uses @topology's mutex. + * + * Returns: + * The topology description type. + * + *-------------------------------------------------------------------------- + */ +mongoc_topology_description_type_t +_mongoc_topology_description_get_type (mongoc_topology_t *topology) +{ + mongoc_topology_description_type_t td_type; + + mongoc_mutex_lock (&topology->mutex); + + td_type = topology->description.type; + + mongoc_mutex_unlock (&topology->mutex); + + return td_type; +} + /* *-------------------------------------------------------------------------- *