Commit a3d728f03e24a8c7bec08356506b9d7ba7e76673

Authored by Volodymyr Babak
1 parent 2c826c12

Changed signature of edge fetch method

... ... @@ -87,7 +87,6 @@ import java.util.List;
87 87 import java.util.Optional;
88 88 import java.util.UUID;
89 89 import java.util.concurrent.CountDownLatch;
90   -import java.util.concurrent.ExecutionException;
91 90 import java.util.concurrent.ExecutorService;
92 91 import java.util.concurrent.TimeUnit;
93 92 import java.util.concurrent.locks.ReentrantLock;
... ... @@ -307,7 +306,7 @@ public final class EdgeGrpcSession implements Closeable {
307 306 UUID ifOffset = null;
308 307 boolean success;
309 308 do {
310   - pageData = fetcher.fetchEdgeEvents(edge.getTenantId(), edge.getId(), pageLink);
  309 + pageData = fetcher.fetchEdgeEvents(edge.getTenantId(), edge, pageLink);
311 310 if (isConnected() && !pageData.getData().isEmpty()) {
312 311 log.trace("[{}] [{}] event(s) are going to be processed.", this.sessionId, pageData.getData().size());
313 312 List<DownlinkMsg> downlinkMsgsPack = convertToDownlinkMsgsPack(pageData.getData());
... ... @@ -479,7 +478,6 @@ public final class EdgeGrpcSession implements Closeable {
479 478 }
480 479 }
481 480
482   -
483 481 private ListenableFuture<List<Void>> processUplinkMsg(UplinkMsg uplinkMsg) {
484 482 List<ListenableFuture<Void>> result = new ArrayList<>();
485 483 try {
... ...
... ... @@ -25,11 +25,11 @@ import org.apache.commons.lang3.StringUtils;
25 25 import org.apache.commons.lang3.text.WordUtils;
26 26 import org.springframework.core.io.DefaultResourceLoader;
27 27 import org.thingsboard.server.common.data.AdminSettings;
  28 +import org.thingsboard.server.common.data.edge.Edge;
28 29 import org.thingsboard.server.common.data.edge.EdgeEvent;
29 30 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
30 31 import org.thingsboard.server.common.data.edge.EdgeEventType;
31 32 import org.thingsboard.server.common.data.id.AdminSettingsId;
32   -import org.thingsboard.server.common.data.id.EdgeId;
33 33 import org.thingsboard.server.common.data.id.TenantId;
34 34 import org.thingsboard.server.common.data.page.PageData;
35 35 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -52,23 +52,23 @@ public class AdminSettingsEdgeEventFetcher extends BasePageableEdgeEventFetcher
52 52 private final AdminSettingsService adminSettingsService;
53 53
54 54 @Override
55   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) throws Exception {
  55 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) throws Exception {
56 56 List<EdgeEvent> result = new ArrayList<>();
57 57
58 58 AdminSettings systemMailSettings = adminSettingsService.findAdminSettingsByKey(TenantId.SYS_TENANT_ID, "mail");
59   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.ADMIN_SETTINGS,
  59 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.ADMIN_SETTINGS,
60 60 EdgeEventActionType.UPDATED, null, mapper.valueToTree(systemMailSettings)));
61 61
62 62 AdminSettings tenantMailSettings = convertToTenantAdminSettings(systemMailSettings.getKey(), (ObjectNode) systemMailSettings.getJsonValue());
63   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.ADMIN_SETTINGS,
  63 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.ADMIN_SETTINGS,
64 64 EdgeEventActionType.UPDATED, null, mapper.valueToTree(tenantMailSettings)));
65 65
66 66 AdminSettings systemMailTemplates = loadMailTemplates();
67   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.ADMIN_SETTINGS,
  67 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.ADMIN_SETTINGS,
68 68 EdgeEventActionType.UPDATED, null, mapper.valueToTree(systemMailTemplates)));
69 69
70 70 AdminSettings tenantMailTemplates = convertToTenantAdminSettings(systemMailTemplates.getKey(), (ObjectNode) systemMailTemplates.getJsonValue());
71   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.ADMIN_SETTINGS,
  71 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.ADMIN_SETTINGS,
72 72 EdgeEventActionType.UPDATED, null, mapper.valueToTree(tenantMailTemplates)));
73 73
74 74 // @voba - returns PageData object to be in sync with other fetchers
... ...
... ... @@ -18,10 +18,10 @@ package org.thingsboard.server.service.edge.rpc.fetch;
18 18 import lombok.AllArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
20 20 import org.thingsboard.server.common.data.asset.Asset;
  21 +import org.thingsboard.server.common.data.edge.Edge;
21 22 import org.thingsboard.server.common.data.edge.EdgeEvent;
22 23 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
23 24 import org.thingsboard.server.common.data.edge.EdgeEventType;
24   -import org.thingsboard.server.common.data.id.EdgeId;
25 25 import org.thingsboard.server.common.data.id.TenantId;
26 26 import org.thingsboard.server.common.data.page.PageData;
27 27 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -38,13 +38,13 @@ public class AssetsEdgeEventFetcher extends BasePageableEdgeEventFetcher {
38 38 private final AssetService assetService;
39 39
40 40 @Override
41   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
42   - log.trace("[{}] start fetching edge events [{}]", tenantId, edgeId);
43   - PageData<Asset> pageData = assetService.findAssetsByTenantIdAndEdgeId(tenantId, edgeId, pageLink);
  41 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  42 + log.trace("[{}] start fetching edge events [{}]", tenantId, edge.getId());
  43 + PageData<Asset> pageData = assetService.findAssetsByTenantIdAndEdgeId(tenantId, edge.getId(), pageLink);
44 44 List<EdgeEvent> result = new ArrayList<>();
45 45 if (!pageData.getData().isEmpty()) {
46 46 for (Asset asset : pageData.getData()) {
47   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.ASSET,
  47 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.ASSET,
48 48 EdgeEventActionType.ADDED, asset.getId(), null));
49 49 }
50 50 }
... ...
... ... @@ -18,10 +18,10 @@ package org.thingsboard.server.service.edge.rpc.fetch;
18 18 import lombok.AllArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
20 20 import org.thingsboard.server.common.data.User;
  21 +import org.thingsboard.server.common.data.edge.Edge;
21 22 import org.thingsboard.server.common.data.edge.EdgeEvent;
22 23 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
23 24 import org.thingsboard.server.common.data.edge.EdgeEventType;
24   -import org.thingsboard.server.common.data.id.EdgeId;
25 25 import org.thingsboard.server.common.data.id.TenantId;
26 26 import org.thingsboard.server.common.data.page.PageData;
27 27 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -38,13 +38,13 @@ public abstract class BaseUsersEdgeEventFetcher extends BasePageableEdgeEventFet
38 38 protected final UserService userService;
39 39
40 40 @Override
41   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
42   - log.trace("[{}] start fetching edge events [{}]", tenantId, edgeId);
  41 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  42 + log.trace("[{}] start fetching edge events [{}]", tenantId, edge.getId());
43 43 PageData<User> pageData = findUsers(tenantId, pageLink);
44 44 List<EdgeEvent> result = new ArrayList<>();
45 45 if (!pageData.getData().isEmpty()) {
46 46 for (User user : pageData.getData()) {
47   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.USER,
  47 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.USER,
48 48 EdgeEventActionType.ADDED, user.getId(), null));
49 49 }
50 50 }
... ...
... ... @@ -17,10 +17,10 @@ package org.thingsboard.server.service.edge.rpc.fetch;
17 17
18 18 import lombok.AllArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
  20 +import org.thingsboard.server.common.data.edge.Edge;
20 21 import org.thingsboard.server.common.data.edge.EdgeEvent;
21 22 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
22 23 import org.thingsboard.server.common.data.edge.EdgeEventType;
23   -import org.thingsboard.server.common.data.id.EdgeId;
24 24 import org.thingsboard.server.common.data.id.TenantId;
25 25 import org.thingsboard.server.common.data.page.PageData;
26 26 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -38,13 +38,13 @@ public abstract class BaseWidgetsBundlesEdgeEventFetcher extends BasePageableEdg
38 38 protected final WidgetsBundleService widgetsBundleService;
39 39
40 40 @Override
41   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
42   - log.trace("[{}] start fetching edge events [{}]", tenantId, edgeId);
  41 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  42 + log.trace("[{}] start fetching edge events [{}]", tenantId, edge.getId());
43 43 PageData<WidgetsBundle> pageData = findWidgetsBundles(tenantId, pageLink);
44 44 List<EdgeEvent> result = new ArrayList<>();
45 45 if (!pageData.getData().isEmpty()) {
46 46 for (WidgetsBundle widgetsBundle : pageData.getData()) {
47   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.WIDGETS_BUNDLE,
  47 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.WIDGETS_BUNDLE,
48 48 EdgeEventActionType.ADDED, widgetsBundle.getId(), null));
49 49 }
50 50 }
... ...
... ... @@ -18,10 +18,10 @@ package org.thingsboard.server.service.edge.rpc.fetch;
18 18 import lombok.AllArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
20 20 import org.thingsboard.server.common.data.DashboardInfo;
  21 +import org.thingsboard.server.common.data.edge.Edge;
21 22 import org.thingsboard.server.common.data.edge.EdgeEvent;
22 23 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
23 24 import org.thingsboard.server.common.data.edge.EdgeEventType;
24   -import org.thingsboard.server.common.data.id.EdgeId;
25 25 import org.thingsboard.server.common.data.id.TenantId;
26 26 import org.thingsboard.server.common.data.page.PageData;
27 27 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -38,13 +38,13 @@ public class DashboardsEdgeEventFetcher extends BasePageableEdgeEventFetcher {
38 38 private final DashboardService dashboardService;
39 39
40 40 @Override
41   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
42   - log.trace("[{}] start fetching edge events [{}]", tenantId, edgeId);
43   - PageData<DashboardInfo> pageData = dashboardService.findDashboardsByTenantIdAndEdgeId(tenantId, edgeId, pageLink);
  41 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  42 + log.trace("[{}] start fetching edge events [{}]", tenantId, edge.getId());
  43 + PageData<DashboardInfo> pageData = dashboardService.findDashboardsByTenantIdAndEdgeId(tenantId, edge.getId(), pageLink);
44 44 List<EdgeEvent> result = new ArrayList<>();
45 45 if (!pageData.getData().isEmpty()) {
46 46 for (DashboardInfo dashboardInfo : pageData.getData()) {
47   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.DASHBOARD,
  47 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.DASHBOARD,
48 48 EdgeEventActionType.ADDED, dashboardInfo.getId(), null));
49 49 }
50 50 }
... ...
... ... @@ -18,10 +18,10 @@ package org.thingsboard.server.service.edge.rpc.fetch;
18 18 import lombok.AllArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
20 20 import org.thingsboard.server.common.data.DeviceProfile;
  21 +import org.thingsboard.server.common.data.edge.Edge;
21 22 import org.thingsboard.server.common.data.edge.EdgeEvent;
22 23 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
23 24 import org.thingsboard.server.common.data.edge.EdgeEventType;
24   -import org.thingsboard.server.common.data.id.EdgeId;
25 25 import org.thingsboard.server.common.data.id.TenantId;
26 26 import org.thingsboard.server.common.data.page.PageData;
27 27 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -38,13 +38,13 @@ public class DeviceProfilesEdgeEventFetcher extends BasePageableEdgeEventFetcher
38 38 private final DeviceProfileService deviceProfileService;
39 39
40 40 @Override
41   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
42   - log.trace("[{}] start fetching edge events [{}]", tenantId, edgeId);
  41 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  42 + log.trace("[{}] start fetching edge events [{}]", tenantId, edge.getId());
43 43 PageData<DeviceProfile> pageData = deviceProfileService.findDeviceProfiles(tenantId, pageLink);
44 44 List<EdgeEvent> result = new ArrayList<>();
45 45 if (!pageData.getData().isEmpty()) {
46 46 for (DeviceProfile deviceProfile : pageData.getData()) {
47   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.DEVICE_PROFILE,
  47 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.DEVICE_PROFILE,
48 48 EdgeEventActionType.ADDED, deviceProfile.getId(), null));
49 49 }
50 50 }
... ...
... ... @@ -15,8 +15,8 @@
15 15 */
16 16 package org.thingsboard.server.service.edge.rpc.fetch;
17 17
  18 +import org.thingsboard.server.common.data.edge.Edge;
18 19 import org.thingsboard.server.common.data.edge.EdgeEvent;
19   -import org.thingsboard.server.common.data.id.EdgeId;
20 20 import org.thingsboard.server.common.data.id.TenantId;
21 21 import org.thingsboard.server.common.data.page.PageData;
22 22 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -25,5 +25,5 @@ public interface EdgeEventFetcher {
25 25
26 26 PageLink getPageLink(int pageSize);
27 27
28   - PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) throws Exception;
  28 + PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) throws Exception;
29 29 }
... ...
... ... @@ -16,8 +16,8 @@
16 16 package org.thingsboard.server.service.edge.rpc.fetch;
17 17
18 18 import lombok.AllArgsConstructor;
  19 +import org.thingsboard.server.common.data.edge.Edge;
19 20 import org.thingsboard.server.common.data.edge.EdgeEvent;
20   -import org.thingsboard.server.common.data.id.EdgeId;
21 21 import org.thingsboard.server.common.data.id.TenantId;
22 22 import org.thingsboard.server.common.data.page.PageData;
23 23 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -43,7 +43,7 @@ public class GeneralEdgeEventFetcher implements EdgeEventFetcher {
43 43 }
44 44
45 45 @Override
46   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
47   - return edgeEventService.findEdgeEvents(tenantId, edgeId, (TimePageLink) pageLink, true);
  46 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  47 + return edgeEventService.findEdgeEvents(tenantId, edge.getId(), (TimePageLink) pageLink, true);
48 48 }
49 49 }
... ...
... ... @@ -17,10 +17,10 @@ package org.thingsboard.server.service.edge.rpc.fetch;
17 17
18 18 import lombok.AllArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
  20 +import org.thingsboard.server.common.data.edge.Edge;
20 21 import org.thingsboard.server.common.data.edge.EdgeEvent;
21 22 import org.thingsboard.server.common.data.edge.EdgeEventActionType;
22 23 import org.thingsboard.server.common.data.edge.EdgeEventType;
23   -import org.thingsboard.server.common.data.id.EdgeId;
24 24 import org.thingsboard.server.common.data.id.TenantId;
25 25 import org.thingsboard.server.common.data.page.PageData;
26 26 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -38,13 +38,13 @@ public class RuleChainsEdgeEventFetcher extends BasePageableEdgeEventFetcher {
38 38 private final RuleChainService ruleChainService;
39 39
40 40 @Override
41   - public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, EdgeId edgeId, PageLink pageLink) {
42   - log.trace("[{}] start fetching edge events [{}]", tenantId, edgeId);
43   - PageData<RuleChain> pageData = ruleChainService.findRuleChainsByTenantIdAndEdgeId(tenantId, edgeId, pageLink);
  41 + public PageData<EdgeEvent> fetchEdgeEvents(TenantId tenantId, Edge edge, PageLink pageLink) {
  42 + log.trace("[{}] start fetching edge events [{}]", tenantId, edge.getId());
  43 + PageData<RuleChain> pageData = ruleChainService.findRuleChainsByTenantIdAndEdgeId(tenantId, edge.getId(), pageLink);
44 44 List<EdgeEvent> result = new ArrayList<>();
45 45 if (!pageData.getData().isEmpty()) {
46 46 for (RuleChain ruleChain : pageData.getData()) {
47   - result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edgeId, EdgeEventType.RULE_CHAIN,
  47 + result.add(EdgeEventUtils.constructEdgeEvent(tenantId, edge.getId(), EdgeEventType.RULE_CHAIN,
48 48 EdgeEventActionType.ADDED, ruleChain.getId(), null));
49 49 }
50 50 }
... ...