Rename edgeEventAction and edgeEventType to action and type

This commit is contained in:
Volodymyr Babak 2020-09-18 17:32:04 +03:00
parent 6aa5655e6f
commit 4a71e8e6a4
6 changed files with 110 additions and 110 deletions

View File

@ -747,65 +747,65 @@ public abstract class BaseController {
return null; return null;
} }
protected void sendNotificationMsgToEdgeService(TenantId tenantId, EdgeId edgeId, CustomerId customerId, ActionType edgeEventAction) { protected void sendNotificationMsgToEdgeService(TenantId tenantId, EdgeId edgeId, CustomerId customerId, ActionType action) {
if (!edgesSupportEnabled) { if (!edgesSupportEnabled) {
return; return;
} }
try { try {
sendNotificationMsgToEdgeService(tenantId, edgeId, null, json.writeValueAsString(customerId), EdgeEventType.EDGE, edgeEventAction); sendNotificationMsgToEdgeService(tenantId, edgeId, null, json.writeValueAsString(customerId), EdgeEventType.EDGE, action);
} catch (Exception e) { } catch (Exception e) {
log.warn("Failed to push assign/unassign to/from customer to core: {}", customerId, e); log.warn("Failed to push assign/unassign to/from customer to core: {}", customerId, e);
} }
} }
protected void sendNotificationMsgToEdgeService(TenantId tenantId, EntityId entityId, CustomerId customerId, ActionType edgeEventAction) { protected void sendNotificationMsgToEdgeService(TenantId tenantId, EntityId entityId, CustomerId customerId, ActionType action) {
if (!edgesSupportEnabled) { if (!edgesSupportEnabled) {
return; return;
} }
EdgeEventType edgeEventType = EdgeUtils.getEdgeEventTypeByEntityType(entityId.getEntityType()); EdgeEventType type = EdgeUtils.getEdgeEventTypeByEntityType(entityId.getEntityType());
try { try {
if (edgeEventType != null) { if (type != null) {
sendNotificationMsgToEdgeService(tenantId, null, entityId, json.writeValueAsString(customerId), edgeEventType, edgeEventAction); sendNotificationMsgToEdgeService(tenantId, null, entityId, json.writeValueAsString(customerId), type, action);
} }
} catch (Exception e) { } catch (Exception e) {
log.warn("Failed to push assign/unassign to/from customer to core: {}", customerId, e); log.warn("Failed to push assign/unassign to/from customer to core: {}", customerId, e);
} }
} }
protected void sendNotificationMsgToEdgeService(TenantId tenantId, EntityRelation relation, ActionType edgeEventAction) { protected void sendNotificationMsgToEdgeService(TenantId tenantId, EntityRelation relation, ActionType action) {
if (!edgesSupportEnabled) { if (!edgesSupportEnabled) {
return; return;
} }
try { try {
if (!relation.getFrom().getEntityType().equals(EntityType.EDGE) && if (!relation.getFrom().getEntityType().equals(EntityType.EDGE) &&
!relation.getTo().getEntityType().equals(EntityType.EDGE)) { !relation.getTo().getEntityType().equals(EntityType.EDGE)) {
sendNotificationMsgToEdgeService(tenantId, null, null, json.writeValueAsString(relation), EdgeEventType.RELATION, edgeEventAction); sendNotificationMsgToEdgeService(tenantId, null, null, json.writeValueAsString(relation), EdgeEventType.RELATION, action);
} }
} catch (Exception e) { } catch (Exception e) {
log.warn("Failed to push relation to core: {}", relation, e); log.warn("Failed to push relation to core: {}", relation, e);
} }
} }
protected void sendNotificationMsgToEdgeService(TenantId tenantId, EntityId entityId, ActionType edgeEventAction) { protected void sendNotificationMsgToEdgeService(TenantId tenantId, EntityId entityId, ActionType action) {
sendNotificationMsgToEdgeService(tenantId, null, entityId, edgeEventAction); sendNotificationMsgToEdgeService(tenantId, null, entityId, action);
} }
protected void sendNotificationMsgToEdgeService(TenantId tenantId, EdgeId edgeId, EntityId entityId, ActionType edgeEventAction) { protected void sendNotificationMsgToEdgeService(TenantId tenantId, EdgeId edgeId, EntityId entityId, ActionType action) {
if (!edgesSupportEnabled) { if (!edgesSupportEnabled) {
return; return;
} }
EdgeEventType edgeEventType = EdgeUtils.getEdgeEventTypeByEntityType(entityId.getEntityType()); EdgeEventType type = EdgeUtils.getEdgeEventTypeByEntityType(entityId.getEntityType());
if (edgeEventType != null) { if (type != null) {
sendNotificationMsgToEdgeService(tenantId, edgeId, entityId, null, edgeEventType, edgeEventAction); sendNotificationMsgToEdgeService(tenantId, edgeId, entityId, null, type, action);
} }
} }
private void sendNotificationMsgToEdgeService(TenantId tenantId, EdgeId edgeId, EntityId entityId, String entityBody, EdgeEventType edgeEventType, ActionType edgeEventAction) { private void sendNotificationMsgToEdgeService(TenantId tenantId, EdgeId edgeId, EntityId entityId, String body, EdgeEventType type, ActionType action) {
TransportProtos.EdgeNotificationMsgProto.Builder builder = TransportProtos.EdgeNotificationMsgProto.newBuilder(); TransportProtos.EdgeNotificationMsgProto.Builder builder = TransportProtos.EdgeNotificationMsgProto.newBuilder();
builder.setTenantIdMSB(tenantId.getId().getMostSignificantBits()); builder.setTenantIdMSB(tenantId.getId().getMostSignificantBits());
builder.setTenantIdLSB(tenantId.getId().getLeastSignificantBits()); builder.setTenantIdLSB(tenantId.getId().getLeastSignificantBits());
builder.setEdgeEventType(edgeEventType.name()); builder.setType(type.name());
builder.setEdgeEventAction(edgeEventAction.name()); builder.setAction(action.name());
if (entityId != null) { if (entityId != null) {
builder.setEntityIdMSB(entityId.getId().getMostSignificantBits()); builder.setEntityIdMSB(entityId.getId().getMostSignificantBits());
builder.setEntityIdLSB(entityId.getId().getLeastSignificantBits()); builder.setEntityIdLSB(entityId.getId().getLeastSignificantBits());
@ -815,8 +815,8 @@ public abstract class BaseController {
builder.setEdgeIdMSB(edgeId.getId().getMostSignificantBits()); builder.setEdgeIdMSB(edgeId.getId().getMostSignificantBits());
builder.setEdgeIdLSB(edgeId.getId().getLeastSignificantBits()); builder.setEdgeIdLSB(edgeId.getId().getLeastSignificantBits());
} }
if (entityBody != null) { if (body != null) {
builder.setEntityBody(entityBody); builder.setBody(body);
} }
TransportProtos.EdgeNotificationMsgProto msg = builder.build(); TransportProtos.EdgeNotificationMsgProto msg = builder.build();
tbClusterService.pushMsgToCore(tenantId, entityId != null ? entityId : tenantId, tbClusterService.pushMsgToCore(tenantId, entityId != null ? entityId : tenantId,

View File

@ -122,22 +122,22 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
private void saveEdgeEvent(TenantId tenantId, private void saveEdgeEvent(TenantId tenantId,
EdgeId edgeId, EdgeId edgeId,
EdgeEventType edgeEventType, EdgeEventType type,
ActionType edgeEventAction, ActionType action,
EntityId entityId, EntityId entityId,
JsonNode entityBody) { JsonNode body) {
log.debug("Pushing edge event to edge queue. tenantId [{}], edgeId [{}], edgeEventType [{}], edgeEventAction[{}], entityId [{}], entityBody [{}]", log.debug("Pushing edge event to edge queue. tenantId [{}], edgeId [{}], type [{}], action[{}], entityId [{}], body [{}]",
tenantId, edgeId, edgeEventType, edgeEventAction, entityId, entityBody); tenantId, edgeId, type, action, entityId, body);
EdgeEvent edgeEvent = new EdgeEvent(); EdgeEvent edgeEvent = new EdgeEvent();
edgeEvent.setEdgeId(edgeId); edgeEvent.setEdgeId(edgeId);
edgeEvent.setTenantId(tenantId); edgeEvent.setTenantId(tenantId);
edgeEvent.setType(edgeEventType); edgeEvent.setType(type);
edgeEvent.setAction(edgeEventAction.name()); edgeEvent.setAction(action.name());
if (entityId != null) { if (entityId != null) {
edgeEvent.setEntityId(entityId.getId()); edgeEvent.setEntityId(entityId.getId());
} }
edgeEvent.setBody(entityBody); edgeEvent.setBody(body);
edgeEventService.saveAsync(edgeEvent); edgeEventService.saveAsync(edgeEvent);
} }
@ -145,8 +145,8 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
public void pushNotificationToEdge(TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg, TbCallback callback) { public void pushNotificationToEdge(TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg, TbCallback callback) {
try { try {
TenantId tenantId = new TenantId(new UUID(edgeNotificationMsg.getTenantIdMSB(), edgeNotificationMsg.getTenantIdLSB())); TenantId tenantId = new TenantId(new UUID(edgeNotificationMsg.getTenantIdMSB(), edgeNotificationMsg.getTenantIdLSB()));
EdgeEventType edgeEventType = EdgeEventType.valueOf(edgeNotificationMsg.getEdgeEventType()); EdgeEventType type = EdgeEventType.valueOf(edgeNotificationMsg.getType());
switch (edgeEventType) { switch (type) {
case EDGE: case EDGE:
processEdge(tenantId, edgeNotificationMsg); processEdge(tenantId, edgeNotificationMsg);
break; break;
@ -172,7 +172,7 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
processRelation(tenantId, edgeNotificationMsg); processRelation(tenantId, edgeNotificationMsg);
break; break;
default: default:
log.debug("Edge event type [{}] is not designed to be pushed to edge", edgeEventType); log.debug("Edge event type [{}] is not designed to be pushed to edge", type);
} }
} catch (Exception e) { } catch (Exception e) {
callback.onFailure(e); callback.onFailure(e);
@ -184,12 +184,12 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
private void processEdge(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) { private void processEdge(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) {
try { try {
ActionType edgeEventActionType = ActionType.valueOf(edgeNotificationMsg.getEdgeEventAction()); ActionType actionType = ActionType.valueOf(edgeNotificationMsg.getAction());
EdgeId edgeId = new EdgeId(new UUID(edgeNotificationMsg.getEdgeIdMSB(), edgeNotificationMsg.getEdgeIdLSB())); EdgeId edgeId = new EdgeId(new UUID(edgeNotificationMsg.getEdgeIdMSB(), edgeNotificationMsg.getEdgeIdLSB()));
ListenableFuture<Edge> edgeFuture; ListenableFuture<Edge> edgeFuture;
switch (edgeEventActionType) { switch (actionType) {
case ASSIGNED_TO_CUSTOMER: case ASSIGNED_TO_CUSTOMER:
CustomerId customerId = mapper.readValue(edgeNotificationMsg.getEntityBody(), CustomerId.class); CustomerId customerId = mapper.readValue(edgeNotificationMsg.getBody(), CustomerId.class);
edgeFuture = edgeService.findEdgeByIdAsync(tenantId, edgeId); edgeFuture = edgeService.findEdgeByIdAsync(tenantId, edgeId);
Futures.addCallback(edgeFuture, new FutureCallback<Edge>() { Futures.addCallback(edgeFuture, new FutureCallback<Edge>() {
@Override @Override
@ -213,7 +213,7 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
}, dbCallbackExecutorService); }, dbCallbackExecutorService);
break; break;
case UNASSIGNED_FROM_CUSTOMER: case UNASSIGNED_FROM_CUSTOMER:
CustomerId customerIdToDelete = mapper.readValue(edgeNotificationMsg.getEntityBody(), CustomerId.class); CustomerId customerIdToDelete = mapper.readValue(edgeNotificationMsg.getBody(), CustomerId.class);
edgeFuture = edgeService.findEdgeByIdAsync(tenantId, edgeId); edgeFuture = edgeService.findEdgeByIdAsync(tenantId, edgeId);
Futures.addCallback(edgeFuture, new FutureCallback<Edge>() { Futures.addCallback(edgeFuture, new FutureCallback<Edge>() {
@Override @Override
@ -236,17 +236,17 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
} }
private void processWidgetBundleOrWidgetType(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) { private void processWidgetBundleOrWidgetType(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) {
ActionType edgeEventActionType = ActionType.valueOf(edgeNotificationMsg.getEdgeEventAction()); ActionType actionType = ActionType.valueOf(edgeNotificationMsg.getAction());
EdgeEventType edgeEventType = EdgeEventType.valueOf(edgeNotificationMsg.getEdgeEventType()); EdgeEventType type = EdgeEventType.valueOf(edgeNotificationMsg.getType());
EntityId entityId = EntityIdFactory.getByEdgeEventTypeAndUuid(edgeEventType, new UUID(edgeNotificationMsg.getEntityIdMSB(), edgeNotificationMsg.getEntityIdLSB())); EntityId entityId = EntityIdFactory.getByEdgeEventTypeAndUuid(type, new UUID(edgeNotificationMsg.getEntityIdMSB(), edgeNotificationMsg.getEntityIdLSB()));
switch (edgeEventActionType) { switch (actionType) {
case ADDED: case ADDED:
case UPDATED: case UPDATED:
case DELETED: case DELETED:
TextPageData<Edge> edgesByTenantId = edgeService.findEdgesByTenantId(tenantId, new TextPageLink(Integer.MAX_VALUE)); TextPageData<Edge> edgesByTenantId = edgeService.findEdgesByTenantId(tenantId, new TextPageLink(Integer.MAX_VALUE));
if (edgesByTenantId != null && edgesByTenantId.getData() != null && !edgesByTenantId.getData().isEmpty()) { if (edgesByTenantId != null && edgesByTenantId.getData() != null && !edgesByTenantId.getData().isEmpty()) {
for (Edge edge : edgesByTenantId.getData()) { for (Edge edge : edgesByTenantId.getData()) {
saveEdgeEvent(tenantId, edge.getId(), edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edge.getId(), type, actionType, entityId, null);
} }
} }
break; break;
@ -254,20 +254,20 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
} }
private void processCustomer(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) { private void processCustomer(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) {
ActionType edgeEventActionType = ActionType.valueOf(edgeNotificationMsg.getEdgeEventAction()); ActionType actionType = ActionType.valueOf(edgeNotificationMsg.getAction());
EdgeEventType edgeEventType = EdgeEventType.valueOf(edgeNotificationMsg.getEdgeEventType()); EdgeEventType type = EdgeEventType.valueOf(edgeNotificationMsg.getType());
EntityId entityId = EntityIdFactory.getByEdgeEventTypeAndUuid(edgeEventType, new UUID(edgeNotificationMsg.getEntityIdMSB(), edgeNotificationMsg.getEntityIdLSB())); EntityId entityId = EntityIdFactory.getByEdgeEventTypeAndUuid(type, new UUID(edgeNotificationMsg.getEntityIdMSB(), edgeNotificationMsg.getEntityIdLSB()));
TextPageData<Edge> edgesByTenantId = edgeService.findEdgesByTenantId(tenantId, new TextPageLink(Integer.MAX_VALUE)); TextPageData<Edge> edgesByTenantId = edgeService.findEdgesByTenantId(tenantId, new TextPageLink(Integer.MAX_VALUE));
if (edgesByTenantId != null && edgesByTenantId.getData() != null && !edgesByTenantId.getData().isEmpty()) { if (edgesByTenantId != null && edgesByTenantId.getData() != null && !edgesByTenantId.getData().isEmpty()) {
for (Edge edge : edgesByTenantId.getData()) { for (Edge edge : edgesByTenantId.getData()) {
switch (edgeEventActionType) { switch (actionType) {
case UPDATED: case UPDATED:
if (!edge.getCustomerId().isNullUid() && edge.getCustomerId().equals(entityId)) { if (!edge.getCustomerId().isNullUid() && edge.getCustomerId().equals(entityId)) {
saveEdgeEvent(tenantId, edge.getId(), edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edge.getId(), type, actionType, entityId, null);
} }
break; break;
case DELETED: case DELETED:
saveEdgeEvent(tenantId, edge.getId(), edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edge.getId(), type, actionType, entityId, null);
break; break;
} }
} }
@ -275,12 +275,12 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
} }
private void processEntity(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) { private void processEntity(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) {
ActionType edgeEventActionType = ActionType.valueOf(edgeNotificationMsg.getEdgeEventAction()); ActionType actionType = ActionType.valueOf(edgeNotificationMsg.getAction());
EdgeEventType edgeEventType = EdgeEventType.valueOf(edgeNotificationMsg.getEdgeEventType()); EdgeEventType type = EdgeEventType.valueOf(edgeNotificationMsg.getType());
EntityId entityId = EntityIdFactory.getByEdgeEventTypeAndUuid(edgeEventType, EntityId entityId = EntityIdFactory.getByEdgeEventTypeAndUuid(type,
new UUID(edgeNotificationMsg.getEntityIdMSB(), edgeNotificationMsg.getEntityIdLSB())); new UUID(edgeNotificationMsg.getEntityIdMSB(), edgeNotificationMsg.getEntityIdLSB()));
ListenableFuture<List<EdgeId>> edgeIdsFuture; ListenableFuture<List<EdgeId>> edgeIdsFuture;
switch (edgeEventActionType) { switch (actionType) {
case ADDED: // used only for USER entity case ADDED: // used only for USER entity
case UPDATED: case UPDATED:
case CREDENTIALS_UPDATED: case CREDENTIALS_UPDATED:
@ -290,7 +290,7 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
public void onSuccess(@Nullable List<EdgeId> edgeIds) { public void onSuccess(@Nullable List<EdgeId> edgeIds) {
if (edgeIds != null && !edgeIds.isEmpty()) { if (edgeIds != null && !edgeIds.isEmpty()) {
for (EdgeId edgeId : edgeIds) { for (EdgeId edgeId : edgeIds) {
saveEdgeEvent(tenantId, edgeId, edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edgeId, type, actionType, entityId, null);
} }
} }
} }
@ -309,14 +309,14 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
if (edgeIds != null && !edgeIds.isEmpty()) { if (edgeIds != null && !edgeIds.isEmpty()) {
for (EdgeId edgeId : edgeIds) { for (EdgeId edgeId : edgeIds) {
try { try {
CustomerId customerId = mapper.readValue(edgeNotificationMsg.getEntityBody(), CustomerId.class); CustomerId customerId = mapper.readValue(edgeNotificationMsg.getBody(), CustomerId.class);
ListenableFuture<Edge> future = edgeService.findEdgeByIdAsync(tenantId, edgeId); ListenableFuture<Edge> future = edgeService.findEdgeByIdAsync(tenantId, edgeId);
Futures.addCallback(future, new FutureCallback<Edge>() { Futures.addCallback(future, new FutureCallback<Edge>() {
@Override @Override
public void onSuccess(@Nullable Edge edge) { public void onSuccess(@Nullable Edge edge) {
if (edge != null && edge.getCustomerId() != null && if (edge != null && edge.getCustomerId() != null &&
!edge.getCustomerId().isNullUid() && edge.getCustomerId().equals(customerId)) { !edge.getCustomerId().isNullUid() && edge.getCustomerId().equals(customerId)) {
saveEdgeEvent(tenantId, edgeId, edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edgeId, type, actionType, entityId, null);
} }
} }
@Override @Override
@ -341,15 +341,15 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
TextPageData<Edge> edgesByTenantId = edgeService.findEdgesByTenantId(tenantId, new TextPageLink(Integer.MAX_VALUE)); TextPageData<Edge> edgesByTenantId = edgeService.findEdgesByTenantId(tenantId, new TextPageLink(Integer.MAX_VALUE));
if (edgesByTenantId != null && edgesByTenantId.getData() != null && !edgesByTenantId.getData().isEmpty()) { if (edgesByTenantId != null && edgesByTenantId.getData() != null && !edgesByTenantId.getData().isEmpty()) {
for (Edge edge : edgesByTenantId.getData()) { for (Edge edge : edgesByTenantId.getData()) {
saveEdgeEvent(tenantId, edge.getId(), edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edge.getId(), type, actionType, entityId, null);
} }
} }
break; break;
case ASSIGNED_TO_EDGE: case ASSIGNED_TO_EDGE:
case UNASSIGNED_FROM_EDGE: case UNASSIGNED_FROM_EDGE:
EdgeId edgeId = new EdgeId(new UUID(edgeNotificationMsg.getEdgeIdMSB(), edgeNotificationMsg.getEdgeIdLSB())); EdgeId edgeId = new EdgeId(new UUID(edgeNotificationMsg.getEdgeIdMSB(), edgeNotificationMsg.getEdgeIdLSB()));
saveEdgeEvent(tenantId, edgeId, edgeEventType, edgeEventActionType, entityId, null); saveEdgeEvent(tenantId, edgeId, type, actionType, entityId, null);
if (edgeEventType.equals(EdgeEventType.RULE_CHAIN)) { if (type.equals(EdgeEventType.RULE_CHAIN)) {
updateDependentRuleChains(tenantId, new RuleChainId(entityId.getId()), edgeId); updateDependentRuleChains(tenantId, new RuleChainId(entityId.getId()), edgeId);
} }
break; break;
@ -395,8 +395,8 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
ListenableFuture<Alarm> alarmFuture = alarmService.findAlarmByIdAsync(tenantId, alarmId); ListenableFuture<Alarm> alarmFuture = alarmService.findAlarmByIdAsync(tenantId, alarmId);
Futures.transform(alarmFuture, alarm -> { Futures.transform(alarmFuture, alarm -> {
if (alarm != null) { if (alarm != null) {
EdgeEventType edgeEventType = getEdgeQueueTypeByEntityType(alarm.getOriginator().getEntityType()); EdgeEventType type = getEdgeQueueTypeByEntityType(alarm.getOriginator().getEntityType());
if (edgeEventType != null) { if (type != null) {
ListenableFuture<List<EdgeId>> relatedEdgeIdsByEntityIdFuture = edgeService.findRelatedEdgeIdsByEntityId(tenantId, alarm.getOriginator()); ListenableFuture<List<EdgeId>> relatedEdgeIdsByEntityIdFuture = edgeService.findRelatedEdgeIdsByEntityId(tenantId, alarm.getOriginator());
Futures.transform(relatedEdgeIdsByEntityIdFuture, relatedEdgeIdsByEntityId -> { Futures.transform(relatedEdgeIdsByEntityIdFuture, relatedEdgeIdsByEntityId -> {
if (relatedEdgeIdsByEntityId != null) { if (relatedEdgeIdsByEntityId != null) {
@ -404,7 +404,7 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
saveEdgeEvent(tenantId, saveEdgeEvent(tenantId,
edgeId, edgeId,
EdgeEventType.ALARM, EdgeEventType.ALARM,
ActionType.valueOf(edgeNotificationMsg.getEdgeEventAction()), ActionType.valueOf(edgeNotificationMsg.getAction()),
alarmId, alarmId,
null); null);
} }
@ -418,7 +418,7 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
} }
private void processRelation(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) throws JsonProcessingException { private void processRelation(TenantId tenantId, TransportProtos.EdgeNotificationMsgProto edgeNotificationMsg) throws JsonProcessingException {
EntityRelation relation = mapper.readValue(edgeNotificationMsg.getEntityBody(), EntityRelation.class); EntityRelation relation = mapper.readValue(edgeNotificationMsg.getBody(), EntityRelation.class);
if (!relation.getFrom().getEntityType().equals(EntityType.EDGE) && if (!relation.getFrom().getEntityType().equals(EntityType.EDGE) &&
!relation.getTo().getEntityType().equals(EntityType.EDGE)) { !relation.getTo().getEntityType().equals(EntityType.EDGE)) {
List<ListenableFuture<List<EdgeId>>> futures = new ArrayList<>(); List<ListenableFuture<List<EdgeId>>> futures = new ArrayList<>();
@ -439,7 +439,7 @@ public class DefaultEdgeNotificationService implements EdgeNotificationService {
saveEdgeEvent(tenantId, saveEdgeEvent(tenantId,
edgeId, edgeId,
EdgeEventType.RELATION, EdgeEventType.RELATION,
ActionType.valueOf(edgeNotificationMsg.getEdgeEventAction()), ActionType.valueOf(edgeNotificationMsg.getAction()),
null, null,
mapper.valueToTree(relation)); mapper.valueToTree(relation));
} }

View File

@ -309,8 +309,8 @@ public final class EdgeGrpcSession implements Closeable {
log.trace("Processing edge event [{}]", edgeEvent); log.trace("Processing edge event [{}]", edgeEvent);
try { try {
DownlinkMsg downlinkMsg = null; DownlinkMsg downlinkMsg = null;
ActionType edgeEventAction = ActionType.valueOf(edgeEvent.getAction()); ActionType action = ActionType.valueOf(edgeEvent.getAction());
switch (edgeEventAction) { switch (action) {
case UPDATED: case UPDATED:
case ADDED: case ADDED:
case DELETED: case DELETED:
@ -323,7 +323,7 @@ public final class EdgeGrpcSession implements Closeable {
case RELATION_DELETED: case RELATION_DELETED:
case ASSIGNED_TO_CUSTOMER: case ASSIGNED_TO_CUSTOMER:
case UNASSIGNED_FROM_CUSTOMER: case UNASSIGNED_FROM_CUSTOMER:
downlinkMsg = processEntityMessage(edgeEvent, edgeEventAction); downlinkMsg = processEntityMessage(edgeEvent, action);
break; break;
case ATTRIBUTES_UPDATED: case ATTRIBUTES_UPDATED:
case ATTRIBUTES_DELETED: case ATTRIBUTES_DELETED:
@ -444,37 +444,37 @@ public final class EdgeGrpcSession implements Closeable {
return downlinkMsg; return downlinkMsg;
} }
private DownlinkMsg processEntityMessage(EdgeEvent edgeEvent, ActionType edgeEventAction) { private DownlinkMsg processEntityMessage(EdgeEvent edgeEvent, ActionType action) {
UpdateMsgType msgType = getResponseMsgType(ActionType.valueOf(edgeEvent.getAction())); UpdateMsgType msgType = getResponseMsgType(ActionType.valueOf(edgeEvent.getAction()));
log.trace("Executing processEntityMessage, edgeEvent [{}], edgeEventAction [{}], msgType [{}]", edgeEvent, edgeEventAction, msgType); log.trace("Executing processEntityMessage, edgeEvent [{}], action [{}], msgType [{}]", edgeEvent, action, msgType);
switch (edgeEvent.getType()) { switch (edgeEvent.getType()) {
case EDGE: case EDGE:
// TODO: voba - add edge update logic // TODO: voba - add edge update logic
return null; return null;
case DEVICE: case DEVICE:
return processDevice(edgeEvent, msgType, edgeEventAction); return processDevice(edgeEvent, msgType, action);
case ASSET: case ASSET:
return processAsset(edgeEvent, msgType, edgeEventAction); return processAsset(edgeEvent, msgType, action);
case ENTITY_VIEW: case ENTITY_VIEW:
return processEntityView(edgeEvent, msgType, edgeEventAction); return processEntityView(edgeEvent, msgType, action);
case DASHBOARD: case DASHBOARD:
return processDashboard(edgeEvent, msgType, edgeEventAction); return processDashboard(edgeEvent, msgType, action);
case CUSTOMER: case CUSTOMER:
return processCustomer(edgeEvent, msgType, edgeEventAction); return processCustomer(edgeEvent, msgType, action);
case RULE_CHAIN: case RULE_CHAIN:
return processRuleChain(edgeEvent, msgType, edgeEventAction); return processRuleChain(edgeEvent, msgType, action);
case RULE_CHAIN_METADATA: case RULE_CHAIN_METADATA:
return processRuleChainMetadata(edgeEvent, msgType); return processRuleChainMetadata(edgeEvent, msgType);
case ALARM: case ALARM:
return processAlarm(edgeEvent, msgType); return processAlarm(edgeEvent, msgType);
case USER: case USER:
return processUser(edgeEvent, msgType, edgeEventAction); return processUser(edgeEvent, msgType, action);
case RELATION: case RELATION:
return processRelation(edgeEvent, msgType); return processRelation(edgeEvent, msgType);
case WIDGETS_BUNDLE: case WIDGETS_BUNDLE:
return processWidgetsBundle(edgeEvent, msgType, edgeEventAction); return processWidgetsBundle(edgeEvent, msgType, action);
case WIDGET_TYPE: case WIDGET_TYPE:
return processWidgetType(edgeEvent, msgType, edgeEventAction); return processWidgetType(edgeEvent, msgType, action);
case ADMIN_SETTINGS: case ADMIN_SETTINGS:
return processAdminSettings(edgeEvent); return processAdminSettings(edgeEvent);
default: default:
@ -524,10 +524,10 @@ public final class EdgeGrpcSession implements Closeable {
return downlinkMsg; return downlinkMsg;
} }
private DownlinkMsg processAsset(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType edgeEventAction) { private DownlinkMsg processAsset(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType action) {
AssetId assetId = new AssetId(edgeEvent.getEntityId()); AssetId assetId = new AssetId(edgeEvent.getEntityId());
DownlinkMsg downlinkMsg = null; DownlinkMsg downlinkMsg = null;
switch (edgeEventAction) { switch (action) {
case ADDED: case ADDED:
case UPDATED: case UPDATED:
case ASSIGNED_TO_EDGE: case ASSIGNED_TO_EDGE:
@ -555,10 +555,10 @@ public final class EdgeGrpcSession implements Closeable {
return downlinkMsg; return downlinkMsg;
} }
private DownlinkMsg processEntityView(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType edgeEventAction) { private DownlinkMsg processEntityView(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType action) {
EntityViewId entityViewId = new EntityViewId(edgeEvent.getEntityId()); EntityViewId entityViewId = new EntityViewId(edgeEvent.getEntityId());
DownlinkMsg downlinkMsg = null; DownlinkMsg downlinkMsg = null;
switch (edgeEventAction) { switch (action) {
case ADDED: case ADDED:
case UPDATED: case UPDATED:
case ASSIGNED_TO_EDGE: case ASSIGNED_TO_EDGE:
@ -586,10 +586,10 @@ public final class EdgeGrpcSession implements Closeable {
return downlinkMsg; return downlinkMsg;
} }
private DownlinkMsg processDashboard(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType edgeEventAction) { private DownlinkMsg processDashboard(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType action) {
DashboardId dashboardId = new DashboardId(edgeEvent.getEntityId()); DashboardId dashboardId = new DashboardId(edgeEvent.getEntityId());
DownlinkMsg downlinkMsg = null; DownlinkMsg downlinkMsg = null;
switch (edgeEventAction) { switch (action) {
case ADDED: case ADDED:
case UPDATED: case UPDATED:
case ASSIGNED_TO_EDGE: case ASSIGNED_TO_EDGE:
@ -620,10 +620,10 @@ public final class EdgeGrpcSession implements Closeable {
return downlinkMsg; return downlinkMsg;
} }
private DownlinkMsg processCustomer(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType edgeEventAction) { private DownlinkMsg processCustomer(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType action) {
CustomerId customerId = new CustomerId(edgeEvent.getEntityId()); CustomerId customerId = new CustomerId(edgeEvent.getEntityId());
DownlinkMsg downlinkMsg = null; DownlinkMsg downlinkMsg = null;
switch (edgeEventAction) { switch (action) {
case ADDED: case ADDED:
case UPDATED: case UPDATED:
Customer customer = ctx.getCustomerService().findCustomerById(edgeEvent.getTenantId(), customerId); Customer customer = ctx.getCustomerService().findCustomerById(edgeEvent.getTenantId(), customerId);
@ -646,10 +646,10 @@ public final class EdgeGrpcSession implements Closeable {
return downlinkMsg; return downlinkMsg;
} }
private DownlinkMsg processRuleChain(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType edgeEventAction) { private DownlinkMsg processRuleChain(EdgeEvent edgeEvent, UpdateMsgType msgType, ActionType action) {
RuleChainId ruleChainId = new RuleChainId(edgeEvent.getEntityId()); RuleChainId ruleChainId = new RuleChainId(edgeEvent.getEntityId());
DownlinkMsg downlinkMsg = null; DownlinkMsg downlinkMsg = null;
switch (edgeEventAction) { switch (action) {
case ADDED: case ADDED:
case UPDATED: case UPDATED:
case ASSIGNED_TO_EDGE: case ASSIGNED_TO_EDGE:

View File

@ -412,8 +412,8 @@ public class DefaultSyncEdgeService implements SyncEdgeService {
EntityId entityId = EntityIdFactory.getByTypeAndUuid( EntityId entityId = EntityIdFactory.getByTypeAndUuid(
EntityType.valueOf(attributesRequestMsg.getEntityType()), EntityType.valueOf(attributesRequestMsg.getEntityType()),
new UUID(attributesRequestMsg.getEntityIdMSB(), attributesRequestMsg.getEntityIdLSB())); new UUID(attributesRequestMsg.getEntityIdMSB(), attributesRequestMsg.getEntityIdLSB()));
final EdgeEventType edgeEventType = getEdgeQueueTypeByEntityType(entityId.getEntityType()); final EdgeEventType type = getEdgeQueueTypeByEntityType(entityId.getEntityType());
if (edgeEventType != null) { if (type != null) {
SettableFuture<Void> futureToSet = SettableFuture.create(); SettableFuture<Void> futureToSet = SettableFuture.create();
ListenableFuture<List<AttributeKvEntry>> ssAttrFuture = attributesService.findAll(edge.getTenantId(), entityId, DataConstants.SERVER_SCOPE); ListenableFuture<List<AttributeKvEntry>> ssAttrFuture = attributesService.findAll(edge.getTenantId(), entityId, DataConstants.SERVER_SCOPE);
Futures.addCallback(ssAttrFuture, new FutureCallback<List<AttributeKvEntry>>() { Futures.addCallback(ssAttrFuture, new FutureCallback<List<AttributeKvEntry>>() {
@ -436,14 +436,14 @@ public class DefaultSyncEdgeService implements SyncEdgeService {
} }
entityData.put("kv", attributes); entityData.put("kv", attributes);
entityData.put("scope", DataConstants.SERVER_SCOPE); entityData.put("scope", DataConstants.SERVER_SCOPE);
JsonNode entityBody = mapper.valueToTree(entityData); JsonNode body = mapper.valueToTree(entityData);
log.debug("Sending attributes data msg, entityId [{}], attributes [{}]", entityId, entityBody); log.debug("Sending attributes data msg, entityId [{}], attributes [{}]", entityId, body);
saveEdgeEvent(edge.getTenantId(), saveEdgeEvent(edge.getTenantId(),
edge.getId(), edge.getId(),
edgeEventType, type,
ActionType.ATTRIBUTES_UPDATED, ActionType.ATTRIBUTES_UPDATED,
entityId, entityId,
entityBody); body);
} catch (Exception e) { } catch (Exception e) {
log.error("[{}] Failed to send attribute updates to the edge", edge.getName(), e); log.error("[{}] Failed to send attribute updates to the edge", edge.getName(), e);
throw new RuntimeException("[" + edge.getName() + "] Failed to send attribute updates to the edge", e); throw new RuntimeException("[" + edge.getName() + "] Failed to send attribute updates to the edge", e);
@ -572,22 +572,22 @@ public class DefaultSyncEdgeService implements SyncEdgeService {
private ListenableFuture<EdgeEvent> saveEdgeEvent(TenantId tenantId, private ListenableFuture<EdgeEvent> saveEdgeEvent(TenantId tenantId,
EdgeId edgeId, EdgeId edgeId,
EdgeEventType edgeEventType, EdgeEventType type,
ActionType edgeEventAction, ActionType action,
EntityId entityId, EntityId entityId,
JsonNode entityBody) { JsonNode body) {
log.debug("Pushing edge event to edge queue. tenantId [{}], edgeId [{}], edgeEventType [{}], edgeEventAction[{}], entityId [{}], entityBody [{}]", log.debug("Pushing edge event to edge queue. tenantId [{}], edgeId [{}], type [{}], action[{}], entityId [{}], body [{}]",
tenantId, edgeId, edgeEventType, edgeEventAction, entityId, entityBody); tenantId, edgeId, type, action, entityId, body);
EdgeEvent edgeEvent = new EdgeEvent(); EdgeEvent edgeEvent = new EdgeEvent();
edgeEvent.setTenantId(tenantId); edgeEvent.setTenantId(tenantId);
edgeEvent.setEdgeId(edgeId); edgeEvent.setEdgeId(edgeId);
edgeEvent.setType(edgeEventType); edgeEvent.setType(type);
edgeEvent.setAction(edgeEventAction.name()); edgeEvent.setAction(action.name());
if (entityId != null) { if (entityId != null) {
edgeEvent.setEntityId(entityId.getId()); edgeEvent.setEntityId(entityId.getId());
} }
edgeEvent.setBody(entityBody); edgeEvent.setBody(body);
return edgeEventService.saveAsync(edgeEvent); return edgeEventService.saveAsync(edgeEvent);
} }
} }

View File

@ -91,23 +91,23 @@ public abstract class BaseProcessor {
protected ListenableFuture<EdgeEvent> saveEdgeEvent(TenantId tenantId, protected ListenableFuture<EdgeEvent> saveEdgeEvent(TenantId tenantId,
EdgeId edgeId, EdgeId edgeId,
EdgeEventType edgeEventType, EdgeEventType type,
ActionType edgeEventAction, ActionType action,
EntityId entityId, EntityId entityId,
JsonNode entityBody) { JsonNode body) {
log.debug("Pushing event to edge queue. tenantId [{}], edgeId [{}], edgeEventType[{}], " + log.debug("Pushing event to edge queue. tenantId [{}], edgeId [{}], type[{}], " +
"edgeEventAction [{}], entityId [{}], entityBody [{}]", "action [{}], entityId [{}], body [{}]",
tenantId, edgeId, edgeEventType, edgeEventAction, entityId, entityBody); tenantId, edgeId, type, action, entityId, body);
EdgeEvent edgeEvent = new EdgeEvent(); EdgeEvent edgeEvent = new EdgeEvent();
edgeEvent.setTenantId(tenantId); edgeEvent.setTenantId(tenantId);
edgeEvent.setEdgeId(edgeId); edgeEvent.setEdgeId(edgeId);
edgeEvent.setType(edgeEventType); edgeEvent.setType(type);
edgeEvent.setAction(edgeEventAction.name()); edgeEvent.setAction(action.name());
if (entityId != null) { if (entityId != null) {
edgeEvent.setEntityId(entityId.getId()); edgeEvent.setEntityId(entityId.getId());
} }
edgeEvent.setBody(entityBody); edgeEvent.setBody(body);
return edgeEventService.saveAsync(edgeEvent); return edgeEventService.saveAsync(edgeEvent);
} }
} }

View File

@ -357,12 +357,12 @@ message EdgeNotificationMsgProto {
int64 tenantIdLSB = 2; int64 tenantIdLSB = 2;
int64 edgeIdMSB = 3; int64 edgeIdMSB = 3;
int64 edgeIdLSB = 4; int64 edgeIdLSB = 4;
string edgeEventType = 5; string type = 5;
string edgeEventAction = 6; string action = 6;
int64 entityIdMSB = 7; int64 entityIdMSB = 7;
int64 entityIdLSB = 8; int64 entityIdLSB = 8;
string entityType = 9; string entityType = 9;
string entityBody = 10; string body = 10;
PostTelemetryMsg postTelemetryMsg = 11; PostTelemetryMsg postTelemetryMsg = 11;
PostAttributeMsg postAttributesMsg = 12; PostAttributeMsg postAttributesMsg = 12;
} }