diff --git a/src/main/java/com/palnet/comn/collection/AuthCollection.java b/src/main/java/com/palnet/comn/collection/AuthCollection.java index 83864fa..8cd4363 100644 --- a/src/main/java/com/palnet/comn/collection/AuthCollection.java +++ b/src/main/java/com/palnet/comn/collection/AuthCollection.java @@ -11,7 +11,7 @@ public class AuthCollection { private Logger logger = LoggerFactory.getLogger(getClass()); - private static Set authkeyList = new HashSet<>() {}; + private static Set authkeyList = new HashSet<>(); public void reloadAuthkey() { // 인증키 하드코딩 처리 @@ -24,8 +24,6 @@ public class AuthCollection { public boolean checkAuthkey(String authKey) { boolean result = false; -// Iterator keys = authkeyList.iterator(); - for (Iterator iterator = authkeyList.iterator(); iterator.hasNext();) { String item = iterator.next(); diff --git a/src/main/java/com/palnet/process/message/Receiver.java b/src/main/java/com/palnet/process/message/Receiver.java new file mode 100644 index 0000000..aa61a67 --- /dev/null +++ b/src/main/java/com/palnet/process/message/Receiver.java @@ -0,0 +1,22 @@ +package com.palnet.process.message; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.util.concurrent.CountDownLatch; + +@Component +@Slf4j +public class Receiver { + + private CountDownLatch latch = new CountDownLatch(1); + + public void receiveMessage(String message) { + log.info("Received <" + message); + latch.countDown(); + } + + public CountDownLatch getLatch() { + return latch; + } +} diff --git a/src/main/java/com/palnet/process/message/config/MessageConfig.java b/src/main/java/com/palnet/process/message/config/MessageConfig.java index 1ca9b6f..e7c30d8 100644 --- a/src/main/java/com/palnet/process/message/config/MessageConfig.java +++ b/src/main/java/com/palnet/process/message/config/MessageConfig.java @@ -1,11 +1,14 @@ package com.palnet.process.message.config; +import com.palnet.process.message.Receiver; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.core.*; import org.springframework.amqp.rabbit.connection.CachingConnectionFactory; import org.springframework.amqp.rabbit.connection.ConnectionFactory; import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer; +import org.springframework.amqp.rabbit.listener.adapter.MessageListenerAdapter; import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -21,18 +24,6 @@ public class MessageConfig { this.env = env; } - @Bean - public CachingConnectionFactory cachingConnectionFactory() { - CachingConnectionFactory connectionFactory = new CachingConnectionFactory(); - - connectionFactory.setHost(env.getProperty("spring.rabbitmq.host")); - connectionFactory.setPort(Integer.parseInt(env.getProperty("spring.rabbitmq.port"))); - connectionFactory.setUsername(env.getProperty("spring.rabbitmq.username")); - connectionFactory.setPassword(env.getProperty("spring.rabbitmq.password")); - - return connectionFactory; - } - @Bean public Jackson2JsonMessageConverter converter() { return new Jackson2JsonMessageConverter(); @@ -72,6 +63,18 @@ public class MessageConfig { .with(env.getProperty("message.websocket.routing-key")); } + @Bean + public CachingConnectionFactory cachingConnectionFactory() { + CachingConnectionFactory connectionFactory = new CachingConnectionFactory(); + + connectionFactory.setHost(env.getProperty("spring.rabbitmq.host")); + connectionFactory.setPort(Integer.parseInt(env.getProperty("spring.rabbitmq.port"))); + connectionFactory.setUsername(env.getProperty("spring.rabbitmq.username")); + connectionFactory.setPassword(env.getProperty("spring.rabbitmq.password")); + + return connectionFactory; + } + @Bean public RabbitTemplate rabbitTemplate(CachingConnectionFactory connectionFactory, Jackson2JsonMessageConverter converter) { RabbitTemplate rabbitTemplate = new RabbitTemplate(); diff --git a/src/main/java/com/palnet/process/message/producer/MessageProducer.java b/src/main/java/com/palnet/process/message/producer/MessageProducer.java index 794e085..ebfd6e9 100644 --- a/src/main/java/com/palnet/process/message/producer/MessageProducer.java +++ b/src/main/java/com/palnet/process/message/producer/MessageProducer.java @@ -3,14 +3,15 @@ package com.palnet.process.message.producer; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -import com.palnet.comn.model.GPDatabaseModel; import com.palnet.comn.model.GPModel; +import com.palnet.process.message.Receiver; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.core.env.Environment; import org.springframework.stereotype.Component; import java.util.Objects; +import java.util.concurrent.TimeUnit; @Component @Slf4j @@ -19,14 +20,19 @@ public class MessageProducer { private final RabbitTemplate rabbitTemplate; private final Environment env; private final ObjectMapper objectMapper; + private final Receiver receiver; - public MessageProducer(RabbitTemplate rabbitTemplate, Environment env, ObjectMapper objectMapper) { + public MessageProducer(RabbitTemplate rabbitTemplate, + Environment env, + ObjectMapper objectMapper, + Receiver receiver) { this.rabbitTemplate = rabbitTemplate; this.env = env; this.objectMapper = objectMapper; + this.receiver = receiver; } - public void sendToAppServerMessage(GPModel model){ + public void sendToAppServerMessage(GPModel model) { String json = ""; try { @@ -35,17 +41,14 @@ public class MessageProducer { e.printStackTrace(); } + log.info("send to model : {}" ,model); + rabbitTemplate.convertAndSend( - Objects.requireNonNull(env.getProperty("message.app.queue-name")), + Objects.requireNonNull(env.getProperty("message.app.exchange-name")), + Objects.requireNonNull(env.getProperty("message.app.routing-key")), json ); - } - public void sendToClientMessage(GPModel model) { - rabbitTemplate.convertAndSend( - Objects.requireNonNull(env.getProperty("message.websocket.exchange-name")), - Objects.requireNonNull(env.getProperty("message.websocket.routing-key")), - model - ); +// receiver.getLatch().await(1000, TimeUnit.MILLISECONDS); } } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 6359403..5a6bb59 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -7,6 +7,7 @@ spring: port: 5672 username: guest password: guest + virtual-host: / netty: task: