Skip to content

Commit 2d517ee

Browse files
ilayaperumalgmarkpollack
authored andcommitted
Refactor chat memory repository artifacts for clarity
- Rename the artifact ID of the chat memory repository artifacts: - `spring-ai-model-chat-memory-jdbc` -> `spring-ai-model-chat-memory-repository-jdbc` - `spring-ai-model-chat-memory-cassandra` -> `spring-ai-model-chat-memory-repository-cassandra` - `spring-ai-model-chat-memory-neo4j` -> `spring-ai-model-chat-memory-repository-neo4j` - Rename the package names to include "repository". Example: org.springframework.ai.chat.memory.repository.jdbc.JdbcChatMemoryRepository - This package renaming also requires to change the default schema location for the jdbc repository to include "repository" - Update the docs - Update the artifact IDs in the parent POM, BOM, autoconfiguration and starters - Update upgrade notes and docs to describe the changes Fix JdbcChatMemoryRepositoryPostgresqlIT - Make sure to set the dialect via datasource Signed-off-by: Ilayaperumal Gopinathan <[email protected]>
1 parent e10fbde commit 2d517ee

File tree

57 files changed

+119
-103
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+119
-103
lines changed

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-cassandra/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
<dependency>
2727
<groupId>org.springframework.ai</groupId>
28-
<artifactId>spring-ai-model-chat-memory-cassandra</artifactId>
28+
<artifactId>spring-ai-model-chat-memory-repository-cassandra</artifactId>
2929
<version>${project.parent.version}</version>
3030
</dependency>
3131

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-cassandra/src/main/java/org/springframework/ai/model/chat/memory/repository/cassandra/autoconfigure/CassandraChatMemoryRepositoryAutoConfiguration.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818

1919
import com.datastax.oss.driver.api.core.CqlSession;
2020

21-
import org.springframework.ai.chat.memory.cassandra.CassandraChatMemoryRepositoryConfig;
22-
import org.springframework.ai.chat.memory.cassandra.CassandraChatMemoryRepository;
21+
import org.springframework.ai.chat.memory.repository.cassandra.CassandraChatMemoryRepositoryConfig;
22+
import org.springframework.ai.chat.memory.repository.cassandra.CassandraChatMemoryRepository;
2323
import org.springframework.ai.model.chat.memory.autoconfigure.ChatMemoryAutoConfiguration;
2424
import org.springframework.boot.autoconfigure.AutoConfiguration;
2525
import org.springframework.boot.autoconfigure.cassandra.CassandraAutoConfiguration;

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-cassandra/src/main/java/org/springframework/ai/model/chat/memory/repository/cassandra/autoconfigure/CassandraChatMemoryRepositoryProperties.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
import org.slf4j.Logger;
2222
import org.slf4j.LoggerFactory;
2323

24-
import org.springframework.ai.chat.memory.cassandra.CassandraChatMemoryRepositoryConfig;
24+
import org.springframework.ai.chat.memory.repository.cassandra.CassandraChatMemoryRepositoryConfig;
2525
import org.springframework.boot.context.properties.ConfigurationProperties;
2626
import org.springframework.lang.Nullable;
2727

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-cassandra/src/test/java/org/springframework/ai/model/chat/memory/repository/cassandra/autoconfigure/CassandraChatMemoryRepositoryAutoConfigurationIT.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
import org.testcontainers.junit.jupiter.Testcontainers;
2727
import org.testcontainers.utility.DockerImageName;
2828

29-
import org.springframework.ai.chat.memory.cassandra.CassandraChatMemoryRepository;
29+
import org.springframework.ai.chat.memory.repository.cassandra.CassandraChatMemoryRepository;
3030
import org.springframework.ai.chat.messages.AssistantMessage;
3131
import org.springframework.ai.chat.messages.MessageType;
3232
import org.springframework.ai.chat.messages.UserMessage;

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-cassandra/src/test/java/org/springframework/ai/model/chat/memory/repository/cassandra/autoconfigure/CassandraChatMemoryRepositoryPropertiesTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
import org.junit.jupiter.api.Test;
2222

23-
import org.springframework.ai.chat.memory.cassandra.CassandraChatMemoryRepositoryConfig;
23+
import org.springframework.ai.chat.memory.repository.cassandra.CassandraChatMemoryRepositoryConfig;
2424

2525
import static org.assertj.core.api.Assertions.assertThat;
2626

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-jdbc/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
<dependency>
2727
<groupId>org.springframework.ai</groupId>
28-
<artifactId>spring-ai-model-chat-memory-jdbc</artifactId>
28+
<artifactId>spring-ai-model-chat-memory-repository-jdbc</artifactId>
2929
<version>${project.parent.version}</version>
3030
</dependency>
3131

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-jdbc/src/main/java/org/springframework/ai/model/chat/memory/repository/jdbc/autoconfigure/JdbcChatMemoryRepositoryAutoConfiguration.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818

1919
import javax.sql.DataSource;
2020

21-
import org.springframework.ai.chat.memory.jdbc.JdbcChatMemoryDialect;
22-
import org.springframework.ai.chat.memory.jdbc.JdbcChatMemoryRepository;
21+
import org.springframework.ai.chat.memory.repository.jdbc.JdbcChatMemoryRepositoryDialect;
22+
import org.springframework.ai.chat.memory.repository.jdbc.JdbcChatMemoryRepository;
2323
import org.springframework.ai.model.chat.memory.autoconfigure.ChatMemoryAutoConfiguration;
2424
import org.springframework.boot.autoconfigure.AutoConfiguration;
2525
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
@@ -45,7 +45,7 @@ public class JdbcChatMemoryRepositoryAutoConfiguration {
4545
@Bean
4646
@ConditionalOnMissingBean
4747
JdbcChatMemoryRepository jdbcChatMemoryRepository(JdbcTemplate jdbcTemplate, DataSource dataSource) {
48-
JdbcChatMemoryDialect dialect = JdbcChatMemoryDialect.from(dataSource);
48+
JdbcChatMemoryRepositoryDialect dialect = JdbcChatMemoryRepositoryDialect.from(dataSource);
4949
return JdbcChatMemoryRepository.builder().jdbcTemplate(jdbcTemplate).dialect(dialect).build();
5050
}
5151

auto-configurations/models/chat/memory/repository/spring-ai-autoconfigure-model-chat-memory-repository-jdbc/src/main/java/org/springframework/ai/model/chat/memory/repository/jdbc/autoconfigure/JdbcChatMemoryRepositoryProperties.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public class JdbcChatMemoryRepositoryProperties {
3030

3131
public static final String CONFIG_PREFIX = "spring.ai.chat.memory.repository.jdbc";
3232

33-
private static final String DEFAULT_SCHEMA_LOCATION = "classpath:org/springframework/ai/chat/memory/jdbc/schema-@@platform@@.sql";
33+
private static final String DEFAULT_SCHEMA_LOCATION = "classpath:org/springframework/ai/chat/memory/repository/jdbc/schema-@@platform@@.sql";
3434

3535
/**
3636
* Whether to initialize the schema on startup. Values: embedded, always, never.
@@ -40,7 +40,7 @@ public class JdbcChatMemoryRepositoryProperties {
4040

4141
/**
4242
* Locations of schema (DDL) scripts. Supports comma-separated list. Default is
43-
* classpath:org/springframework/ai/chat/memory/jdbc/schema-@@platform@@.sql
43+
* classpath:org/springframework/ai/chat/memory/repository/jdbc/schema-@@platform@@.sql
4444
*/
4545
private String schema = DEFAULT_SCHEMA_LOCATION;
4646

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.junit.Test;
2323
import org.junit.runner.RunWith;
2424

25+
import org.springframework.ai.chat.memory.repository.jdbc.JdbcChatMemoryRepository;
2526
import org.springframework.ai.chat.messages.AssistantMessage;
2627
import org.springframework.ai.chat.messages.Message;
2728
import org.springframework.ai.chat.messages.UserMessage;
@@ -39,7 +40,7 @@
3940
import static org.assertj.core.api.Assertions.fail;
4041

4142
@RunWith(SpringRunner.class)
42-
@SpringBootTest(classes = JdbcChatMemoryHsqldbAutoConfigurationIT.TestConfig.class,
43+
@SpringBootTest(classes = JdbcChatMemoryRepositoryHsqldbAutoConfigurationIT.TestConfig.class,
4344
properties = { "spring.datasource.url=jdbc:hsqldb:mem:chat_memory_auto_configuration_test;DB_CLOSE_DELAY=-1",
4445
"spring.datasource.username=sa", "spring.datasource.password=",
4546
"spring.datasource.driver-class-name=org.hsqldb.jdbcDriver",
@@ -54,7 +55,7 @@
5455
org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration.class,
5556
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration.class,
5657
SqlInitializationAutoConfiguration.class })
57-
public class JdbcChatMemoryHsqldbAutoConfigurationIT {
58+
public class JdbcChatMemoryRepositoryHsqldbAutoConfigurationIT {
5859

5960
@Autowired
6061
private ApplicationContext context;
@@ -130,7 +131,7 @@ public void useAutoConfiguredChatMemoryWithJdbc() {
130131
try {
131132
java.util.Enumeration<java.net.URL> resources = Thread.currentThread()
132133
.getContextClassLoader()
133-
.getResources("org/springframework/ai/chat/memory/jdbc/schema-hsqldb.sql");
134+
.getResources("org/springframework/ai/chat/memory/repository/jdbc/schema-hsqldb.sql");
134135
System.out.println("--- schema-hsqldb.sql resources found on classpath ---");
135136
while (resources.hasMoreElements()) {
136137
System.out.println(resources.nextElement());
@@ -157,7 +158,7 @@ public void useAutoConfiguredChatMemoryWithJdbc() {
157158

158159
// Now test the ChatMemory functionality
159160
assertThat(context.getBean(org.springframework.ai.chat.memory.ChatMemory.class)).isNotNull();
160-
assertThat(context.getBean(org.springframework.ai.chat.memory.jdbc.JdbcChatMemoryRepository.class)).isNotNull();
161+
assertThat(context.getBean(JdbcChatMemoryRepository.class)).isNotNull();
161162

162163
var chatMemory = context.getBean(org.springframework.ai.chat.memory.ChatMemory.class);
163164
var conversationId = java.util.UUID.randomUUID().toString();
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import org.junit.jupiter.api.Test;
2323

2424
import org.springframework.ai.chat.memory.ChatMemory;
25-
import org.springframework.ai.chat.memory.jdbc.JdbcChatMemoryRepository;
25+
import org.springframework.ai.chat.memory.repository.jdbc.JdbcChatMemoryRepository;
2626
import org.springframework.ai.chat.messages.AssistantMessage;
2727
import org.springframework.ai.chat.messages.Message;
2828
import org.springframework.ai.chat.messages.UserMessage;
@@ -40,7 +40,7 @@
4040
* @author Linar Abzaltdinov
4141
* @author Yanming Zhou
4242
*/
43-
class JdbcChatMemoryPostgresqlAutoConfigurationIT {
43+
class JdbcChatMemoryRepositoryPostgresqlAutoConfigurationIT {
4444

4545
private final ApplicationContextRunner contextRunner = new ApplicationContextRunner()
4646
.withConfiguration(AutoConfigurations.of(JdbcChatMemoryRepositoryAutoConfiguration.class,

0 commit comments

Comments
 (0)