diff options
author | Alexander Alexeev | 2016-11-12 01:34:07 +0700 |
---|---|---|
committer | Vitaly Takmazov | 2016-11-12 11:14:56 +0300 |
commit | 194a9a763c6b11d207e682b2f93de94475c473b4 (patch) | |
tree | 196317662017b716066eadfa413ecbdc7532c52d /juick-notifications/src/main/java/com/juick/components/configuration/NotificationsAppConfiguration.java | |
parent | 7d86347a351aa5263c19cd03aa0bda4650c8bfca (diff) |
extracted application configuration from Mvc configuration with application specific beans;
extracted bean initialization from constructor;
force using properties;
Diffstat (limited to 'juick-notifications/src/main/java/com/juick/components/configuration/NotificationsAppConfiguration.java')
-rw-r--r-- | juick-notifications/src/main/java/com/juick/components/configuration/NotificationsAppConfiguration.java | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/juick-notifications/src/main/java/com/juick/components/configuration/NotificationsAppConfiguration.java b/juick-notifications/src/main/java/com/juick/components/configuration/NotificationsAppConfiguration.java new file mode 100644 index 00000000..1974830a --- /dev/null +++ b/juick-notifications/src/main/java/com/juick/components/configuration/NotificationsAppConfiguration.java @@ -0,0 +1,40 @@ +package com.juick.components.configuration; + +import com.juick.components.Notifications; +import com.juick.configuration.DataConfiguration; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Import; +import org.springframework.context.annotation.PropertySource; +import org.springframework.core.env.Environment; +import org.springframework.web.client.RestTemplate; + +import javax.inject.Inject; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; + +/** + * Created by aalexeev on 11/12/16. + */ +@Configuration +@PropertySource("classpath:juick.conf") +@Import(DataConfiguration.class) +public class NotificationsAppConfiguration { + @Inject + private Environment env; + + @Bean + public RestTemplate rest() { + return new RestTemplate(); + } + + @Bean + public Notifications push() { + return new Notifications(env, service(), rest()); + } + + @Bean + public ExecutorService service() { + return Executors.newCachedThreadPool(); + } +} |