/// <summary> /// Returns a new REST service client instance /// </summary> /// <param name="restEndpoint">The URI of the BrightstarDB REST endpoint to connect to</param> /// <param name="requestAuthenticator">The service to use to apply authentication information to outgoing requests</param> /// <param name="queryCache">A cache instance for the client to use for caching SPARQL query responses</param> /// <returns>A new <see cref="IBrightstarService"/> instance</returns> public static IBrightstarService GetRestClient(string restEndpoint, IRequestAuthenticator requestAuthenticator = null, ICache queryCache = null) { if (requestAuthenticator == null) { requestAuthenticator = new PassthroughRequestAuthenticator(); } return(new BrightstarRestClient(restEndpoint, requestAuthenticator, queryCache)); }
/// <summary> /// Returns a new REST service client instance constructed from a BrightstarDB connection string /// </summary> /// <param name="connectionString">The connection string providing the parameters for the REST service connection</param> /// <returns>A new <see cref="IBrightstarService"/>instance</returns> /// <exception cref="ArgumentNullException">The <paramref name="connectionString"/> parameter is NULL</exception> /// <exception cref="BrightstarClientException">The <paramref name="connectionString"/> parameter is invalid for some other reason</exception> public static IBrightstarService GetRestClient(ConnectionString connectionString) { if (connectionString == null) { throw new ArgumentNullException("connectionString"); } if (String.IsNullOrEmpty(connectionString.ServiceEndpoint)) { throw new BrightstarClientException( "Connection string does not contain the required 'endpoint' attribute"); } string endpoint = connectionString.ServiceEndpoint; IRequestAuthenticator requestAuthenticator = new PassthroughRequestAuthenticator(); if (connectionString.Account != null && connectionString.Key != null) { requestAuthenticator = new SharedSecretAuthenticator(connectionString.Account, connectionString.Key); } return(new BrightstarRestClient(endpoint, requestAuthenticator, null)); }