Commit a3d728f03e24a8c7bec08356506b9d7ba7e76673
1 parent
2c826c12
Changed signature of edge fetch method
Showing
10 changed files
with
39 additions
and
41 deletions
... | ... | @@ -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 | } | ... | ... |
application/src/main/java/org/thingsboard/server/service/edge/rpc/fetch/GeneralEdgeEventFetcher.java
... | ... | @@ -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 | } | ... | ... |