in src/nms-api/Util/URISupport.cs [368:416]
public Uri toUri()
{
StringBuilder sb = new StringBuilder();
if (scheme != null)
{
sb.Append(scheme);
sb.Append(':');
}
if (!string.IsNullOrEmpty(host))
{
sb.Append(host);
}
else
{
sb.Append('(');
for (int i = 0; i < components.Length; i++)
{
if (i != 0)
{
sb.Append(',');
}
sb.Append(components[i].ToString());
}
sb.Append(')');
}
if (path != null)
{
sb.Append('/');
sb.Append(path);
}
if (parameters.Count != 0)
{
sb.Append("?");
sb.Append(CreateQueryString(parameters));
}
if (fragment != null)
{
sb.Append("#");
sb.Append(fragment);
}
return new Uri(sb.ToString());
}