From f012608bb22b07b518969d99e6779999f91f14aa Mon Sep 17 00:00:00 2001 From: AllanCapistrano Date: Sun, 24 Mar 2024 09:09:59 -0300 Subject: [PATCH] feat: allowing the system to use or not use reputation to choose the device --- .../java/reputation/node/models/Node.java | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/src/main/java/reputation/node/models/Node.java b/src/main/java/reputation/node/models/Node.java index f4c7d5b..79ae756 100644 --- a/src/main/java/reputation/node/models/Node.java +++ b/src/main/java/reputation/node/models/Node.java @@ -427,6 +427,8 @@ private String getNodeIdWithHighestReputation() { /** * Obtém os IDs do dispositivo e do sensor, com a maior reputação. + * Obs: Se o sistema não estiver utilizando reputação, então será escolhido + * um dispositivo de maneira aleatória. * * @param deviceSensorIdList List - Lista com os IDs do * dispositivo e sensor que se deseja obter o maior. @@ -479,13 +481,20 @@ private DeviceSensorId getDeviceWithHighestReputation( final Double innerHighestReputation = Double.valueOf(highestReputation); - /** - * Verificando quais dispositivos possuem a maior reputação. - */ - List temp = devicesReputations - .stream() - .filter(nr -> nr.getReputation().equals(innerHighestReputation)) - .collect(Collectors.toList()); + List temp; + + if (this.useCredibility) { + /** + * Verificando quais dispositivos possuem a maior reputação. + */ + temp = + devicesReputations + .stream() + .filter(nr -> nr.getReputation().equals(innerHighestReputation)) + .collect(Collectors.toList()); + } else { + temp = devicesReputations; + } int index = -1;