From 0bc44cf04e9d1b8d48ae963799230aa4a5ee9980 Mon Sep 17 00:00:00 2001 From: lukasgol Date: Thu, 12 Feb 2015 00:08:24 +0100 Subject: [PATCH] some events --- src/main/java/application/Config.java | 5 +---- .../controllers/EventController.java | 4 ++-- .../java/application/events/EventManager.java | 20 ++++++++++++------- .../events/impl/MainDoorEntryEvent.java | 16 +++++++++++++++ 4 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/main/java/application/Config.java b/src/main/java/application/Config.java index 4116782..e73d229 100644 --- a/src/main/java/application/Config.java +++ b/src/main/java/application/Config.java @@ -46,10 +46,7 @@ public class Config extends SpringBootServletInitializer { EntryEventRepository entryEventRepository = context.getBean(EntryEventRepository.class); HistoryEntryRepository historyEntryRepository = context.getBean(HistoryEntryRepository.class); new Initializer(roleRepository, userRepository, doorRepository, historyEntryRepository).init(); - User user =new User("aa","bb","cc","dd"); - entryEventRepository.save(new EntryEvent(1,1,2)); - entryEventRepository.save(new EntryEvent(1,2,2)); - entryEventRepository.save(new EntryEvent(2,1,2)); + } diff --git a/src/main/java/application/controllers/EventController.java b/src/main/java/application/controllers/EventController.java index 6efa83b..aacaa50 100644 --- a/src/main/java/application/controllers/EventController.java +++ b/src/main/java/application/controllers/EventController.java @@ -79,8 +79,8 @@ public class EventController { @RequestMapping(value = "/MainDoorEntry/add") @ResponseBody - public BaseResponse addMainDoorEntry(@RequestParam long who ) throws JSONException { - mainDoorEntryEventRepository.save(new MainDoorEntryEvent(who)); + public BaseResponse addMainDoorEntry(@RequestParam long who,@RequestParam long userId ) throws JSONException { + mainDoorEntryEventRepository.save(new MainDoorEntryEvent(who,userId)); return new BaseResponse().init(Constants.SUCCESS_TRUE); } diff --git a/src/main/java/application/events/EventManager.java b/src/main/java/application/events/EventManager.java index 75d3c01..a5273c2 100644 --- a/src/main/java/application/events/EventManager.java +++ b/src/main/java/application/events/EventManager.java @@ -3,11 +3,13 @@ package application.events; import application.events.impl.DoorLockedEvent; import application.events.impl.EntryEvent; import application.events.impl.MainDoorEntryEvent; +import application.model.User; import application.repositories.*; import org.reflections.Reflections; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.client.RestTemplate; import java.util.HashSet; import java.util.Set; @@ -74,31 +76,35 @@ public class EventManager { } } - public void sendNotification(EventObject eventObject){ - System.out.print(eventObject.createMessage()); + public void sendNotification(EventObject eventObject,User user){ + String uri = "https://android.googleapis.com/gcm/send"; + System.out.print(eventObject.createMessage() + user); + RestTemplate restTemplate = new RestTemplate(); + restTemplate.getForObject(uri, + String.class); } public void processEvent(long userId , long doorId){ if(doorId==1){ for(MainDoorEntryEvent e: mainDoorEntryEventRepository.findAll()){ if(e.getWho()==userId){ - sendNotification(e); + sendNotification(e,userRepository.findOne(e.getUser())); } } }else { for (EntryEvent e : entryEventRepository.findAll()) { if (e.getWho() == userId && e.getDoor() == doorId) - sendNotification(e); + sendNotification(e,userRepository.findOne(e.getUser())); } } } public void doorLockedEvent(DoorLockedEvent doorLockedEvent){ - System.out.print("lala"); - + for(User user:userRepository.findAll()){ + sendNotification(doorLockedEvent,user); + } } public void doorUnlockedEvent(DoorLockedEvent doorLockedEvent){ - System.out.print("lala"); } } diff --git a/src/main/java/application/events/impl/MainDoorEntryEvent.java b/src/main/java/application/events/impl/MainDoorEntryEvent.java index cb8a365..3831192 100644 --- a/src/main/java/application/events/impl/MainDoorEntryEvent.java +++ b/src/main/java/application/events/impl/MainDoorEntryEvent.java @@ -14,6 +14,9 @@ public class MainDoorEntryEvent implements EventObject { @Basic private Long who; + @Basic + private Long user; + @Override public void validEvent() { @@ -61,5 +64,18 @@ public class MainDoorEntryEvent implements EventObject { public void setId(Long id) { this.id = id; } + + public MainDoorEntryEvent(Long who, Long user) { + this.who = who; + this.user = user; + } + + public Long getUser() { + return user; + } + + public void setUser(Long user) { + this.user = user; + } }