Advertisement
Guest User

Untitled

a guest
Aug 1st, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.77 KB | None | 0 0
  1. package com.comarch.fbi.ccb.chat.infrastructure
  2.  
  3. import com.comarch.fbu.ccb.container.commons.configuration.CqrsConfiguration
  4. import com.comarch.fbu.ccb.context.TechnicalContext
  5. import com.comarch.fbu.ccb.context.configuration.ContextConfiguration
  6. import com.comarch.fbu.ccb.context.holder.ContextHolder
  7. import com.comarch.fbu.ccb.context.holder.ContextHolderImpl
  8. import com.comarch.fbu.ccb.event.Event
  9. import com.comarch.fbu.ccb.event.bus.EventBus
  10. import com.comarch.fbu.ccb.module.utility.configuration.base.DateTimeConfiguration
  11. import com.comarch.fbu.ccb.module.utility.configuration.base.ZoneProviderConfiguration
  12. import com.comarch.fbu.ccb.module.utility.database.jdbc.support.ParameterSourceProvider
  13. import com.comarch.fbu.ccb.module.utility.util.CqrsResultModule
  14. import com.comarch.fbu.ccb.module.utility.util.cast.CastHelper
  15. import com.comarch.fbu.ccb.module.utility.util.date.DateTimeProvider
  16. import com.comarch.fbu.ccb.module.utility.util.date.DateTimeProviderImpl
  17. import com.comarch.fbu.ccb.module.utility.util.mapper.ObjectMapperFactory
  18. import com.comarch.fbu.jackson.modules.EnumeratedModule
  19. import com.fasterxml.jackson.databind.DeserializationFeature
  20. import com.fasterxml.jackson.databind.ObjectMapper
  21. import com.fasterxml.jackson.databind.SerializationFeature
  22. import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule
  23. import org.springframework.context.annotation.Bean
  24. import org.springframework.context.annotation.Configuration
  25. import org.springframework.context.annotation.Import
  26. import org.springframework.jdbc.datasource.DataSourceTransactionManager
  27. import org.springframework.jdbc.datasource.DriverManagerDataSource
  28.  
  29. import javax.sql.DataSource
  30. import java.time.Clock
  31.  
  32. /**
  33. * @author mpodskoczy
  34. */
  35. @Configuration
  36. @Import([CqrsConfiguration.class, ContextConfiguration.class, DateTimeConfiguration.class, ZoneProviderConfiguration.class])
  37. //FIXME test configuration
  38. class IntegrationTestConfig {
  39.  
  40. @Bean
  41. EventBus mockEventBus() {
  42. new EventBus() {
  43. @Override
  44. void fire(final Event event) {
  45. //TODO mock
  46. }
  47. }
  48. }
  49.  
  50. @Bean
  51. CastHelper castHelper() {
  52. new CastHelper()
  53. }
  54.  
  55. @Bean
  56. ObjectMapper objectMapper() {
  57. final String ENUMERATED_BASE_PACKAGES = "com.comarch"
  58. //FIXME ObjectMapperFactory
  59. ObjectMapper mapper = new ObjectMapper()
  60. mapper.registerModule(new JavaTimeModule())
  61. mapper.registerModule(new EnumeratedModule(ENUMERATED_BASE_PACKAGES))
  62. mapper.registerModule(new CqrsResultModule())
  63.  
  64.  
  65. mapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
  66. mapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false)
  67. mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false)
  68.  
  69. return mapper
  70. }
  71.  
  72. @Bean
  73. DataSource dataSource() {
  74. DriverManagerDataSource dataSource = new DriverManagerDataSource()
  75. dataSource.setDriverClassName("oracle.jdbc.driver.OracleDriver")
  76. dataSource.setUrl("jdbc:oracle:thin:@10.132.58.233:1524:SIAMDEV")
  77. dataSource.setUsername("scbuser")
  78. dataSource.setPassword("scbuser")
  79. return dataSource
  80. }
  81.  
  82. @Bean
  83. ParameterSourceProvider parameterSourceProvider() {
  84. ContextHolder contextHolder = new ContextHolderImpl()
  85. contextHolder.setContext(new TechnicalContext(Locale.ENGLISH))
  86.  
  87. Clock clock = Clock.systemDefaultZone()
  88. DateTimeProvider dateTimeProvider = new DateTimeProviderImpl(clock)
  89.  
  90. new ParameterSourceProvider(contextHolder, dateTimeProvider)
  91. }
  92.  
  93. @Bean
  94. DataSourceTransactionManager dataSourceTransactionManager(DataSource dataSource) {
  95. new DataSourceTransactionManager(dataSource)
  96. }
  97.  
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement