in edge-hub/core/src/Microsoft.Azure.Devices.Edge.Hub.Core/config/BrokerConfigValidator.cs [79:115]
static void ValidateBridge(Bridge bridge, List<string> errors)
{
if (string.IsNullOrEmpty(bridge.Endpoint))
{
errors.Add($"Bridge endpoint must not be empty");
}
if (!bridge.Endpoint.Equals("$upstream", StringComparison.InvariantCultureIgnoreCase)
&& bridge.Settings.Count == 0)
{
errors.Add($"Bridge {bridge.Endpoint}: Settings must not be empty");
}
var order = 0;
foreach (var setting in bridge.Settings)
{
if (setting.Topic != null
&& !IsValidTopicFilter(setting.Topic))
{
errors.Add($"Bridge {bridge.Endpoint}: Rule {order}: Topic is invalid: {setting.Topic}");
}
if (setting.InPrefix.Contains("+")
|| setting.InPrefix.Contains("#"))
{
errors.Add($"Bridge {bridge.Endpoint}: Rule {order}: InPrefix must not contain wildcards (+, #)");
}
if (setting.OutPrefix.Contains("+")
|| setting.OutPrefix.Contains("#"))
{
errors.Add($"Bridge {bridge.Endpoint}: Rule {order}: OutPrefix must not contain wildcards (+, #)");
}
order++;
}
}