Skip to content

Commit 96c3dce

Browse files
ilayaperumalgStudiousXiaoYu
authored andcommitted
Make vector store builders extensible (spring-projects#2058)
- The VectorStore builders shouldn't be final as they are meant to be extensible - Suppress the `FinalClass` checkstyle errors on VectorStore classes Signed-off-by: StudiousXiaoYu <[email protected]>
1 parent 67ecded commit 96c3dce

File tree

8 files changed

+12
-8
lines changed

8 files changed

+12
-8
lines changed

spring-ai-core/src/main/java/org/springframework/ai/vectorstore/SimpleVectorStore.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@
3838
import com.fasterxml.jackson.databind.ObjectMapper;
3939
import com.fasterxml.jackson.databind.ObjectWriter;
4040
import com.fasterxml.jackson.databind.json.JsonMapper;
41-
import io.micrometer.observation.ObservationRegistry;
4241
import org.slf4j.Logger;
4342
import org.slf4j.LoggerFactory;
4443

@@ -49,7 +48,6 @@
4948
import org.springframework.ai.util.JacksonUtils;
5049
import org.springframework.ai.vectorstore.observation.AbstractObservationVectorStore;
5150
import org.springframework.ai.vectorstore.observation.VectorStoreObservationContext;
52-
import org.springframework.ai.vectorstore.observation.VectorStoreObservationConvention;
5351
import org.springframework.core.io.Resource;
5452

5553
/**

src/checkstyle/checkstyle-suppressions.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,14 @@
4040

4141
<suppress files="AzureVectorStore.java" checks="FinalClass"/>
4242
<suppress files="CassandraVectorStore.java" checks="FinalClass"/>
43+
<suppress files="CoherenceVectorStore.java" checks="FinalClass"/>
44+
<suppress files="CosmosDBVectorStore.java" checks="FinalClass"/>
45+
<suppress files="GemFireVectorStore.java" checks="FinalClass"/>
4346
<suppress files="MilvusVectorStore.java" checks="FinalClass"/>
4447
<suppress files="HanaCloudVectorStore.java" checks="FinalClass"/>
48+
<suppress files="MongoDBAtlasVectorStore.java" checks="FinalClass"/>
49+
<suppress files="Neo4jVectorStore.java" checks="FinalClass"/>
50+
<suppress files="OpenSearchVectorStore.java" checks="FinalClass"/>
4551
<suppress files="PineconeVectorStore.java" checks="FinalClass"/>
4652
<suppress files="TypesenseVectorStore.java" checks="FinalClass"/>
4753
<suppress files="WeaviateVectorStore.java" checks="FinalClass"/>

vector-stores/spring-ai-azure-cosmos-db-store/src/main/java/org/springframework/ai/vectorstore/cosmosdb/CosmosDBVectorStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -381,7 +381,7 @@ public VectorStoreObservationContext.Builder createObservationContextBuilder(Str
381381
*
382382
* @since 1.0.0
383383
*/
384-
public static final class Builder extends AbstractVectorStoreBuilder<Builder> {
384+
public static class Builder extends AbstractVectorStoreBuilder<Builder> {
385385

386386
private final CosmosAsyncClient cosmosClient;
387387

vector-stores/spring-ai-coherence-store/src/main/java/org/springframework/ai/vectorstore/coherence/CoherenceVectorStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ public VectorStoreObservationContext.Builder createObservationContextBuilder(Str
283283
*
284284
* @since 1.0.0
285285
*/
286-
public static final class Builder extends AbstractVectorStoreBuilder<Builder> {
286+
public static class Builder extends AbstractVectorStoreBuilder<Builder> {
287287

288288
private final Session session;
289289

vector-stores/spring-ai-gemfire-store/src/main/java/org/springframework/ai/vectorstore/gemfire/GemFireVectorStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -559,7 +559,7 @@ public void setDeleteData(boolean deleteData) {
559559
*
560560
* @since 1.0.0
561561
*/
562-
public static final class Builder extends AbstractVectorStoreBuilder<Builder> {
562+
public static class Builder extends AbstractVectorStoreBuilder<Builder> {
563563

564564
private String host = GemFireVectorStore.DEFAULT_HOST;
565565

vector-stores/spring-ai-mongodb-atlas-store/src/main/java/org/springframework/ai/vectorstore/mongodb/atlas/MongoDBAtlasVectorStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,7 @@ public static Builder builder(MongoTemplate mongoTemplate, EmbeddingModel embedd
318318
return new Builder(mongoTemplate, embeddingModel);
319319
}
320320

321-
public static final class Builder extends AbstractVectorStoreBuilder<Builder> {
321+
public static class Builder extends AbstractVectorStoreBuilder<Builder> {
322322

323323
private final MongoTemplate mongoTemplate;
324324

vector-stores/spring-ai-neo4j-store/src/main/java/org/springframework/ai/vectorstore/neo4j/Neo4jVectorStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,7 @@ public static Builder builder(Driver driver, EmbeddingModel embeddingModel) {
366366
return new Builder(driver, embeddingModel);
367367
}
368368

369-
public static final class Builder extends AbstractVectorStoreBuilder<Builder> {
369+
public static class Builder extends AbstractVectorStoreBuilder<Builder> {
370370

371371
private final Driver driver;
372372

vector-stores/spring-ai-opensearch-store/src/main/java/org/springframework/ai/vectorstore/opensearch/OpenSearchVectorStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -365,7 +365,7 @@ public record OpenSearchDocument(String id, String content, Map<String, Object>
365365
/**
366366
* Builder class for creating OpenSearchVectorStore instances.
367367
*/
368-
public static final class Builder extends AbstractVectorStoreBuilder<Builder> {
368+
public static class Builder extends AbstractVectorStoreBuilder<Builder> {
369369

370370
private final OpenSearchClient openSearchClient;
371371

0 commit comments

Comments
 (0)