Update TamagotchiService.java

This commit is contained in:
Steinwagner 2019-12-10 16:41:04 +01:00
parent de04d31825
commit 1a058ca1e8

View file

@ -1,20 +1,24 @@
package com.sap.tamagotchi.service;
import com.sap.tamagotchi.model.Device;
import com.sap.tamagotchi.publisher.PublisherService;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import com.sap.tamagotchi.model.Device;
import com.sap.tamagotchi.model.IoTMessage;
import com.sap.tamagotchi.publisher.PublisherService;
@Service
public class TamagotchiService {
private final PublisherService publisherService;
private final Map<String, Device> deviceRegistry = new HashMap<>();
private final Map<String, Device> deviceRegistry = Collections.synchronizedMap(new HashMap<>());
@Autowired
public TamagotchiService(PublisherService publisherService) {
@ -28,4 +32,23 @@ public class TamagotchiService {
public Collection<Device> getDevices() {
return deviceRegistry.values();
}
public Set<String> getDeviceIds() {
return deviceRegistry.keySet();
}
public void createDevice(Device device) {
deviceRegistry.put(device.getDeviceId(), device);
}
private void processDeviceEvents() {
deviceRegistry
.values()
.parallelStream()
.filter(d -> d.hasMessages())
.forEach(d -> {
Collection<IoTMessage> messages = d.getMessages();
});
}
}