Skip to content

Commit 953cc68

Browse files
Change tenant and database init method to check for exception instead
1 parent 94e9808 commit 953cc68

2 files changed

Lines changed: 8 additions & 4 deletions

File tree

src/Client.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
use Codewithkyrian\ChromaDB\Embeddings\EmbeddingFunction;
88
use Codewithkyrian\ChromaDB\Generated\ChromaApiClient;
9+
use Codewithkyrian\ChromaDB\Generated\Exceptions\ChromaNotFoundException;
910
use Codewithkyrian\ChromaDB\Generated\Models\Collection;
1011
use Codewithkyrian\ChromaDB\Resources\CollectionResource;
1112

@@ -23,13 +24,16 @@ public function __construct(
2324

2425
public function initDatabaseAndTenant(): void
2526
{
26-
27-
if ($this->apiClient->getTenant($this->tenant) === null) {
27+
try {
28+
$this->apiClient->getTenant($this->tenant);
29+
} catch (ChromaNotFoundException) {
2830
$createTenantRequest = new Generated\Requests\CreateTenantRequest($this->tenant);
2931
$this->apiClient->createTenant($createTenantRequest);
3032
}
3133

32-
if ($this->apiClient->getDatabase($this->database, $this->tenant) === null) {
34+
try {
35+
$this->apiClient->getDatabase($this->database, $this->tenant);
36+
} catch (ChromaNotFoundException) {
3337
$createDatabaseRequest = new Generated\Requests\CreateDatabaseRequest($this->database);
3438
$this->apiClient->createDatabase($this->tenant, $createDatabaseRequest);
3539
}

src/Generated/ChromaApiClient.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public function createDatabase(string $tenant, CreateDatabaseRequest $request):
9494
}
9595
}
9696

97-
public function getDatabase(string $database, string $tenant): ?Database
97+
public function getDatabase(string $database, string $tenant): Database
9898
{
9999
try {
100100
$response = $this->httpClient->get("/api/v1/databases/$database", [

0 commit comments

Comments
 (0)