public async Task <ChromaInstance> CreateInstance(string apiBaseAddress) { var clientConfiguration = new ClientConfiguration() { BaseAddress = new Uri(apiBaseAddress) }; var client = new ChromaHttpClient(); client.Init(clientConfiguration); await client.Register(jsonAppDefinition); await client.Heartbeat(); var localInstance = new ChromaInstance(client); localInstance.DestroyMessage += () => { if (!instance.IsCompleted || instance.Result == localInstance) { instance = null; } }; return(localInstance); }
public ChromaHttpClientTests() { testFilePath = Path.Combine(TestBase.AssemblyDirectory, "Files"); clientConfiguration = new ClientConfiguration() { BaseAddress = baseUri }; chromaHttpClient = chromaHttpClient ?? new ChromaHttpClient(); chromaHttpClient.ClientMessage += (code, device, s) => Debug.WriteLine($"{code}:{device}:{s}"); chromaHttpClient.Init(clientConfiguration); }
public async Task <ChromaInstance> Instance(string apiBaseAddress = DEFAULT_BASE_ADDRESS) { if (instance != null) { return(instance); } var clientConfiguration = new ClientConfiguration() { BaseAddress = new Uri(apiBaseAddress) }; var client = new ChromaHttpClient(); client.Init(clientConfiguration); await client.Register(jsonAppDefinition).ConfigureAwait(false); await client.Heartbeat().ConfigureAwait(false); instance = new ChromaInstance(client); instance.DestroyMessage += () => instance = null; return(instance); }