Commit 1706fcbec746f959abe1c84d7c9288fbb7fc74ed
Committed by
GitHub
1 parent
a9e55cae
Create Alarm Node add originator and status when using message data (#1503)
Showing
2 changed files
with
15 additions
and
2 deletions
... | ... | @@ -103,6 +103,7 @@ public class AlarmController extends BaseController { |
103 | 103 | checkParameter(ALARM_ID, strAlarmId); |
104 | 104 | try { |
105 | 105 | AlarmId alarmId = new AlarmId(toUUID(strAlarmId)); |
106 | + checkAlarmId(alarmId, Operation.WRITE); | |
106 | 107 | return alarmService.deleteAlarm(getTenantId(), alarmId); |
107 | 108 | } catch (Exception e) { |
108 | 109 | throw handleException(e); | ... | ... |
... | ... | @@ -69,8 +69,7 @@ public class TbCreateAlarmNode extends TbAbstractAlarmNode<TbCreateAlarmNodeConf |
69 | 69 | msgAlarm = null; |
70 | 70 | } else { |
71 | 71 | try { |
72 | - msgAlarm = mapper.readValue(msg.getData(), Alarm.class); | |
73 | - msgAlarm.setTenantId(ctx.getTenantId()); | |
72 | + msgAlarm = getAlarmFromMessage(ctx, msg); | |
74 | 73 | alarmType = msgAlarm.getType(); |
75 | 74 | } catch (IOException e) { |
76 | 75 | ctx.tellFailure(msg, e); |
... | ... | @@ -89,6 +88,19 @@ public class TbCreateAlarmNode extends TbAbstractAlarmNode<TbCreateAlarmNodeConf |
89 | 88 | |
90 | 89 | } |
91 | 90 | |
91 | + private Alarm getAlarmFromMessage(TbContext ctx, TbMsg msg) throws IOException { | |
92 | + Alarm msgAlarm; | |
93 | + msgAlarm = mapper.readValue(msg.getData(), Alarm.class); | |
94 | + msgAlarm.setTenantId(ctx.getTenantId()); | |
95 | + if (msgAlarm.getOriginator() == null) { | |
96 | + msgAlarm.setOriginator(msg.getOriginator()); | |
97 | + } | |
98 | + if (msgAlarm.getStatus() == null) { | |
99 | + msgAlarm.setStatus(AlarmStatus.ACTIVE_UNACK); | |
100 | + } | |
101 | + return msgAlarm; | |
102 | + } | |
103 | + | |
92 | 104 | private ListenableFuture<AlarmResult> createNewAlarm(TbContext ctx, TbMsg msg, Alarm msgAlarm) { |
93 | 105 | ListenableFuture<Alarm> asyncAlarm; |
94 | 106 | if (msgAlarm != null ) { | ... | ... |