Remove deprecations in JdbcChatMemory · spring-projects/spring-ai@356a68f (original) (raw)

`@@ -21,24 +21,15 @@

`

21

21

`import org.slf4j.Logger;

`

22

22

`import org.slf4j.LoggerFactory;

`

23

23

``

24

``

`-

import org.springframework.ai.chat.memory.ChatMemory;

`

25

``

`-

import org.springframework.ai.chat.memory.MessageWindowChatMemory;

`

26

``

`-

import org.springframework.ai.chat.memory.jdbc.JdbcChatMemory;

`

27

``

`-

import org.springframework.ai.chat.memory.jdbc.JdbcChatMemoryConfig;

`

28

24

`import org.springframework.ai.chat.memory.jdbc.JdbcChatMemoryRepository;

`

29

25

`import org.springframework.ai.model.chat.memory.autoconfigure.ChatMemoryAutoConfiguration;

`

30

26

`import org.springframework.boot.autoconfigure.AutoConfiguration;

`

31

27

`import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;

`

32

28

`import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;

`

33

``

`-

import org.springframework.boot.autoconfigure.condition.ConditionMessage;

`

34

``

`-

import org.springframework.boot.autoconfigure.condition.ConditionOutcome;

`

35

``

`-

import org.springframework.boot.autoconfigure.condition.SpringBootCondition;

`

``

29

`+

import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;

`

36

30

`import org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration;

`

37

31

`import org.springframework.boot.context.properties.EnableConfigurationProperties;

`

38

32

`import org.springframework.context.annotation.Bean;

`

39

``

`-

import org.springframework.context.annotation.ConditionContext;

`

40

``

`-

import org.springframework.context.annotation.Conditional;

`

41

``

`-

import org.springframework.core.type.AnnotatedTypeMetadata;

`

42

33

`import org.springframework.jdbc.core.JdbcTemplate;

`

43

34

``

44

35

`/**

`

`@@ -59,55 +50,13 @@ JdbcChatMemoryRepository chatMemoryRepository(JdbcTemplate jdbcTemplate) {

`

59

50

`return JdbcChatMemoryRepository.builder().jdbcTemplate(jdbcTemplate).build();

`

60

51

` }

`

61

52

``

62

``

`-

/**

`

63

``

`-

`

64

``

`-

`

65

``

`-

`

66

``

`-

*/

`

67

53

`@Bean

`

68

54

`@ConditionalOnMissingBean

`

69

``

`-

@Deprecated

`

70

``

`-

JdbcChatMemory chatMemory(JdbcTemplate jdbcTemplate) {

`

71

``

`-

var config = JdbcChatMemoryConfig.builder().jdbcTemplate(jdbcTemplate).build();

`

72

``

`-

return JdbcChatMemory.create(config);

`

73

``

`-

}

`

74

``

-

75

``

`-

@Bean

`

76

``

`-

@ConditionalOnMissingBean

`

77

``

`-

@Conditional(OnSchemaInitializationEnabledCondition.class)

`

``

55

`+

@ConditionalOnProperty(prefix = JdbcChatMemoryProperties.CONFIG_PREFIX, name = "initialize-schema",

`

``

56

`+

havingValue = "true", matchIfMissing = true)

`

78

57

`JdbcChatMemoryDataSourceScriptDatabaseInitializer jdbcChatMemoryScriptDatabaseInitializer(DataSource dataSource) {

`

79

58

`logger.debug("Initializing schema for JdbcChatMemoryRepository");

`

80

59

`return new JdbcChatMemoryDataSourceScriptDatabaseInitializer(dataSource);

`

81

60

` }

`

82

61

``

83

``

`-

/**

`

84

``

`-

`

85

``

`-

`

86

``

`-

`

87

``

`-

`

88

``

`-

*/

`

89

``

`-

@Deprecated

`

90

``

`-

static class OnSchemaInitializationEnabledCondition extends SpringBootCondition {

`

91

``

-

92

``

`-

@Override

`

93

``

`-

public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) {

`

94

``

`-

Boolean initializeSchemaEnabled = context.getEnvironment()

`

95

``

`-

.getProperty("spring.ai.chat.memory.jdbc.initialize-schema", Boolean.class);

`

96

``

-

97

``

`-

if (initializeSchemaEnabled != null) {

`

98

``

`-

return new ConditionOutcome(initializeSchemaEnabled,

`

99

``

`-

ConditionMessage.forCondition("Enable JDBC Chat Memory Schema Initialization")

`

100

``

`-

.because("spring.ai.chat.memory.jdbc.initialize-schema is " + initializeSchemaEnabled));

`

101

``

`-

}

`

102

``

-

103

``

`-

initializeSchemaEnabled = context.getEnvironment()

`

104

``

`-

.getProperty(JdbcChatMemoryProperties.CONFIG_PREFIX + ".initialize-schema", Boolean.class, true);

`

105

``

-

106

``

`-

return new ConditionOutcome(initializeSchemaEnabled, ConditionMessage

`

107

``

`-

.forCondition("Enable JDBC Chat Memory Schema Initialization")

`

108

``

`-

.because(JdbcChatMemoryProperties.CONFIG_PREFIX + ".initialize-schema is " + initializeSchemaEnabled));

`

109

``

`-

}

`

110

``

-

111

``

`-

}

`

112

``

-

113

62

`}

`