private JsonSchema4 ResolveUrlReference(string filePath, string jsonPath) { if (DynamicApis.SupportsWebClientApis) { try { var arr = filePath.Split('#'); if (!_resolvedSchemas.ContainsKey(arr[0])) { JsonSchema4.FromUrl(arr[0], this); } var result = _resolvedSchemas[arr[0]]; return(arr.Length == 1 ? result : ResolveReference(result, "#" + arr[1])); } catch (Exception exception) { throw new InvalidOperationException("Could not resolve the path '" + jsonPath + "' with the URL '" + filePath + "': " + exception.Message, exception); } } else { throw new NotSupportedException("Could not resolve the path '" + jsonPath + "' because JSON web references are not supported on this platform."); } }
/// <summary>Resolves an URL reference.</summary> /// <param name="url">The URL.</param> /// <exception cref="NotSupportedException">Could not resolve the JSON path because web references are not supported on this platform.</exception> protected virtual JsonSchema4 ResolveUrlReference(string url) { if (DynamicApis.SupportsWebClientApis) { return(JsonSchema4.FromUrl(url, this)); } else { throw new NotSupportedException("Could not resolve the JSON path because web references are not supported on this platform."); } }