limitations under the License.
*/
+/*
+ * This source code is part of the near-RT RIC (RAN Intelligent Controller)
+ * platform project (RICP).
+*/
+
#include "private/databaseconfigurationimpl.hpp"
#include <arpa/inet.h>
}
const uint16_t DEFAULT_PORT(6379U);
+ const uint16_t DEFAULT_SENTINEL_PORT(26379U);
}
DatabaseConfigurationImpl::DatabaseConfigurationImpl():
dbType = DatabaseConfiguration::DbType::REDIS_STANDALONE;
else if (type == "redis-cluster")
dbType = DatabaseConfiguration::DbType::REDIS_CLUSTER;
+ else if (type == "redis-sentinel")
+ dbType = DatabaseConfiguration::DbType::REDIS_SENTINEL;
else
throw DatabaseConfiguration::InvalidDbType(type);
}
{
return { HostAndPort(getDefaultHost(), htons(DEFAULT_PORT)) };
}
+
+void DatabaseConfigurationImpl::checkAndApplySentinelAddress(const std::string& address)
+{
+ sentinelAddress = HostAndPort(address, htons(DEFAULT_SENTINEL_PORT));
+}
+
+boost::optional<HostAndPort> DatabaseConfigurationImpl::getSentinelAddress() const
+{
+ return sentinelAddress;
+}
+
+void DatabaseConfigurationImpl::checkAndApplySentinelMasterName(const std::string& name)
+{
+ sentinelMasterName = name;
+}
+
+std::string DatabaseConfigurationImpl::getSentinelMasterName() const
+{
+ return sentinelMasterName;
+}