Commit 8f643c72 by Hao-Hsiang Song

fixed socket

parent a79335b9
Showing with 24 additions and 20 deletions
...@@ -17,15 +17,11 @@ package edu.uchicago.mpcs.topics; ...@@ -17,15 +17,11 @@ package edu.uchicago.mpcs.topics;
import edu.uchicago.mpcs.topics.auction.Item; import edu.uchicago.mpcs.topics.auction.Item;
import edu.uchicago.mpcs.topics.auction.ItemCategory; import edu.uchicago.mpcs.topics.auction.ItemCategory;
import edu.uchicago.mpcs.topics.controller.ItemController;
import edu.uchicago.mpcs.topics.db.ItemCategoryRepository; import edu.uchicago.mpcs.topics.db.ItemCategoryRepository;
import edu.uchicago.mpcs.topics.db.ItemRepository; import edu.uchicago.mpcs.topics.db.ItemRepository;
import edu.uchicago.mpcs.topics.db.UserDB;
import edu.uchicago.mpcs.topics.user.User;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
...@@ -75,16 +71,16 @@ public class Application { ...@@ -75,16 +71,16 @@ public class Application {
// @Bean @Bean
// public WebMvcConfigurer corsConfigurer() { public WebMvcConfigurer corsConfigurer() {
// return new WebMvcConfigurer() { return new WebMvcConfigurer() {
// @Override @Override
// public void addCorsMappings(CorsRegistry registry) { public void addCorsMappings(CorsRegistry registry) {
// registry.addMapping("/**") registry.addMapping("/**")
// .allowedOrigins("http://localhost:3000") .allowedOrigins("http://localhost:3000")
// .allowedMethods("GET", "POST","PUT", "DELETE"); .allowedMethods("GET", "POST","PUT", "DELETE");
// } }
// }; };
// } }
} }
// end::code[] // end::code[]
\ No newline at end of file
...@@ -17,14 +17,13 @@ public class WebSocketConfig implements WebSocketMessageBrokerConfigurer ...@@ -17,14 +17,13 @@ public class WebSocketConfig implements WebSocketMessageBrokerConfigurer
@Override @Override
public void configureMessageBroker(MessageBrokerRegistry config) public void configureMessageBroker(MessageBrokerRegistry config)
{ {
config.enableSimpleBroker("/item/list"); config.enableSimpleBroker("/");
// config.setApplicationDestinationPrefixes("/app");
} }
@Override @Override
public void registerStompEndpoints(StompEndpointRegistry registry) public void registerStompEndpoints(StompEndpointRegistry registry)
{ {
registry.addEndpoint("/item/list"); registry.addEndpoint("/add").setAllowedOrigins("*").withSockJS();
} }
} }
\ No newline at end of file
package edu.uchicago.mpcs.topics.controller; package edu.uchicago.mpcs.topics.controller;
import edu.uchicago.mpcs.topics.auction.Item; import edu.uchicago.mpcs.topics.auction.Item;
import edu.uchicago.mpcs.topics.auction.Status;
import edu.uchicago.mpcs.topics.db.ItemRepository; import edu.uchicago.mpcs.topics.db.ItemRepository;
import edu.uchicago.mpcs.topics.db.SearchRepository; import edu.uchicago.mpcs.topics.db.SearchRepository;
import edu.uchicago.mpcs.topics.service.ItemService; import edu.uchicago.mpcs.topics.service.ItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.messaging.handler.annotation.MessageMapping; import org.springframework.messaging.handler.annotation.MessageMapping;
import org.springframework.messaging.handler.annotation.SendTo; import org.springframework.messaging.handler.annotation.SendTo;
import org.springframework.messaging.simp.SimpMessagingTemplate;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
...@@ -20,6 +21,9 @@ import java.util.Optional; ...@@ -20,6 +21,9 @@ import java.util.Optional;
@RequestMapping("/item") @RequestMapping("/item")
public class ItemController public class ItemController
{ {
@Autowired
private SimpMessagingTemplate webSocket;
private ItemService itemService; private ItemService itemService;
private ItemRepository itemRepository; private ItemRepository itemRepository;
private SearchRepository searchRepository; private SearchRepository searchRepository;
...@@ -74,9 +78,11 @@ public class ItemController ...@@ -74,9 +78,11 @@ public class ItemController
return searchRepository.findAllByDescriptionContains(q); return searchRepository.findAllByDescriptionContains(q);
} }
@SendTo("/list") @MessageMapping("/add")
@SendTo("/socket")
public Item webSocketUpdateItem(Item item) public Item webSocketUpdateItem(Item item)
{ {
this.webSocket.convertAndSend("/socket", item);
return item; return item;
} }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment