diff options
author | Alexander Alexeev | 2016-11-18 01:30:39 +0700 |
---|---|---|
committer | Vitaly Takmazov | 2016-11-23 13:02:57 +0300 |
commit | 36f0ced4b46a1823a15d3e33e664891c92618b78 (patch) | |
tree | 92b3bc196701b3011049eaf58ec7c8143cf52ecc /juick-server/src/main/java/com/juick/configuration | |
parent | 149fc39c00c11b5be208914ea93a3c5bd5b7f11c (diff) |
search service for full text search implementation;
search bean configuration
Diffstat (limited to 'juick-server/src/main/java/com/juick/configuration')
-rw-r--r-- | juick-server/src/main/java/com/juick/configuration/SearchConfiguration.java | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/juick-server/src/main/java/com/juick/configuration/SearchConfiguration.java b/juick-server/src/main/java/com/juick/configuration/SearchConfiguration.java new file mode 100644 index 00000000..40473433 --- /dev/null +++ b/juick-server/src/main/java/com/juick/configuration/SearchConfiguration.java @@ -0,0 +1,54 @@ +package com.juick.configuration; + +import com.juick.service.search.SearchService; +import com.juick.service.search.SphinxSearchServiceImpl; +import org.apache.commons.dbcp2.BasicDataSource; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.PropertySource; +import org.springframework.core.env.Environment; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +/** + * Created by aalexeev on 11/18/16. + */ +@Configuration +@PropertySource(value = {"classpath:juick.conf"}) +public class SearchConfiguration { + @Resource + private Environment env; + + @Bean + public SearchService searchService() { + BasicDataSource dataSource = new BasicDataSource(); + + dataSource.setDriverClassName(env.getProperty("sphinx_driver", "com.mysql.jdbc.Driver")); + dataSource.setUrl(env.getProperty("sphinx_url", "jdbc:mysql://127.0.0.1:9306?autoReconnect=true&useUnicode=yes&characterEncoding=utf8&maxAllowedPacket=512000")); + dataSource.setUsername(env.getProperty("sphinx_user", "")); + dataSource.setPassword(env.getProperty("sphinx_password", "")); + + return new SphinxSearchServiceImpl(dataSource); + } + + @Bean + public SearchService emptySearchService() { + return new SearchService() { + @Override + public void setMaxResult(int maxResult) { + } + + @Override + public List<Integer> searchInAllMessages(String searchString, int messageIdBefore) { + return Collections.emptyList(); + } + + @Override + public List<Integer> searchByStringAndUser(String searchString, int userId, int messageIdBefore) { + return Collections.emptyList(); + } + }; + } +} |