Commit f93602c09bedee40e2ae4ac0e5348cff99dfbff7
1 parent
462642fd
fix(microservice): Application服务类型为规则链时。找不到服务的问题修复
Showing
4 changed files
with
19 additions
and
60 deletions
@@ -21,14 +21,11 @@ import com.fasterxml.jackson.databind.node.ObjectNode; | @@ -21,14 +21,11 @@ import com.fasterxml.jackson.databind.node.ObjectNode; | ||
21 | import lombok.RequiredArgsConstructor; | 21 | import lombok.RequiredArgsConstructor; |
22 | import lombok.extern.slf4j.Slf4j; | 22 | import lombok.extern.slf4j.Slf4j; |
23 | import org.apache.commons.lang3.StringUtils; | 23 | import org.apache.commons.lang3.StringUtils; |
24 | +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; | ||
24 | import org.springframework.stereotype.Service; | 25 | import org.springframework.stereotype.Service; |
25 | -import org.thingsboard.server.common.data.DataConstants; | ||
26 | -import org.thingsboard.server.common.data.EntityType; | ||
27 | -import org.thingsboard.server.common.data.HasName; | ||
28 | -import org.thingsboard.server.common.data.HasTenantId; | ||
29 | -import org.thingsboard.server.common.data.User; | 26 | +import org.thingsboard.server.cluster.TbClusterService; |
27 | +import org.thingsboard.server.common.data.*; | ||
30 | import org.thingsboard.server.common.data.audit.ActionType; | 28 | import org.thingsboard.server.common.data.audit.ActionType; |
31 | -import org.thingsboard.server.common.data.exception.ThingsboardException; | ||
32 | import org.thingsboard.server.common.data.id.CustomerId; | 29 | import org.thingsboard.server.common.data.id.CustomerId; |
33 | import org.thingsboard.server.common.data.id.EntityId; | 30 | import org.thingsboard.server.common.data.id.EntityId; |
34 | import org.thingsboard.server.common.data.id.TenantId; | 31 | import org.thingsboard.server.common.data.id.TenantId; |
@@ -40,14 +37,12 @@ import org.thingsboard.server.common.msg.TbMsg; | @@ -40,14 +37,12 @@ import org.thingsboard.server.common.msg.TbMsg; | ||
40 | import org.thingsboard.server.common.msg.TbMsgDataType; | 37 | import org.thingsboard.server.common.msg.TbMsgDataType; |
41 | import org.thingsboard.server.common.msg.TbMsgMetaData; | 38 | import org.thingsboard.server.common.msg.TbMsgMetaData; |
42 | import org.thingsboard.server.dao.audit.AuditLogService; | 39 | import org.thingsboard.server.dao.audit.AuditLogService; |
43 | -import org.thingsboard.server.queue.util.TbCoreComponent; | ||
44 | -import org.thingsboard.server.cluster.TbClusterService; | ||
45 | 40 | ||
46 | import java.util.List; | 41 | import java.util.List; |
47 | import java.util.Map; | 42 | import java.util.Map; |
48 | import java.util.stream.Collectors; | 43 | import java.util.stream.Collectors; |
49 | 44 | ||
50 | -@TbCoreComponent | 45 | +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'") |
51 | @Service | 46 | @Service |
52 | @RequiredArgsConstructor | 47 | @RequiredArgsConstructor |
53 | @Slf4j | 48 | @Slf4j |
@@ -16,14 +16,11 @@ | @@ -16,14 +16,11 @@ | ||
16 | package org.thingsboard.server.service.device; | 16 | package org.thingsboard.server.service.device; |
17 | 17 | ||
18 | import com.fasterxml.jackson.databind.ObjectMapper; | 18 | import com.fasterxml.jackson.databind.ObjectMapper; |
19 | -import com.google.common.util.concurrent.FutureCallback; | ||
20 | -import com.google.common.util.concurrent.Futures; | ||
21 | -import com.google.common.util.concurrent.ListenableFuture; | ||
22 | -import com.google.common.util.concurrent.MoreExecutors; | ||
23 | -import com.google.common.util.concurrent.SettableFuture; | 19 | +import com.google.common.util.concurrent.*; |
24 | import lombok.extern.slf4j.Slf4j; | 20 | import lombok.extern.slf4j.Slf4j; |
25 | import org.springframework.beans.factory.annotation.Autowired; | 21 | import org.springframework.beans.factory.annotation.Autowired; |
26 | import org.springframework.beans.factory.annotation.Value; | 22 | import org.springframework.beans.factory.annotation.Value; |
23 | +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; | ||
27 | import org.springframework.cache.Cache; | 24 | import org.springframework.cache.Cache; |
28 | import org.springframework.cache.CacheManager; | 25 | import org.springframework.cache.CacheManager; |
29 | import org.springframework.stereotype.Service; | 26 | import org.springframework.stereotype.Service; |
@@ -49,7 +46,6 @@ import org.thingsboard.server.dao.device.claim.ClaimResponse; | @@ -49,7 +46,6 @@ import org.thingsboard.server.dao.device.claim.ClaimResponse; | ||
49 | import org.thingsboard.server.dao.device.claim.ClaimResult; | 46 | import org.thingsboard.server.dao.device.claim.ClaimResult; |
50 | import org.thingsboard.server.dao.device.claim.ReclaimResult; | 47 | import org.thingsboard.server.dao.device.claim.ReclaimResult; |
51 | import org.thingsboard.server.dao.model.ModelConstants; | 48 | import org.thingsboard.server.dao.model.ModelConstants; |
52 | -import org.thingsboard.server.queue.util.TbCoreComponent; | ||
53 | 49 | ||
54 | import javax.annotation.Nullable; | 50 | import javax.annotation.Nullable; |
55 | import java.io.IOException; | 51 | import java.io.IOException; |
@@ -63,7 +59,7 @@ import static org.thingsboard.server.common.data.CacheConstants.CLAIM_DEVICES_CA | @@ -63,7 +59,7 @@ import static org.thingsboard.server.common.data.CacheConstants.CLAIM_DEVICES_CA | ||
63 | 59 | ||
64 | @Service | 60 | @Service |
65 | @Slf4j | 61 | @Slf4j |
66 | -@TbCoreComponent | 62 | +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'") |
67 | public class ClaimDevicesServiceImpl implements ClaimDevicesService { | 63 | public class ClaimDevicesServiceImpl implements ClaimDevicesService { |
68 | 64 | ||
69 | private static final String CLAIM_ATTRIBUTE_NAME = "claimingAllowed"; | 65 | private static final String CLAIM_ATTRIBUTE_NAME = "claimingAllowed"; |
@@ -17,6 +17,7 @@ package org.thingsboard.server.service.rule; | @@ -17,6 +17,7 @@ package org.thingsboard.server.service.rule; | ||
17 | 17 | ||
18 | import lombok.RequiredArgsConstructor; | 18 | import lombok.RequiredArgsConstructor; |
19 | import lombok.extern.slf4j.Slf4j; | 19 | import lombok.extern.slf4j.Slf4j; |
20 | +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; | ||
20 | import org.springframework.stereotype.Service; | 21 | import org.springframework.stereotype.Service; |
21 | import org.thingsboard.common.util.JacksonUtil; | 22 | import org.thingsboard.common.util.JacksonUtil; |
22 | import org.thingsboard.rule.engine.flow.TbRuleChainInputNode; | 23 | import org.thingsboard.rule.engine.flow.TbRuleChainInputNode; |
@@ -26,29 +27,16 @@ import org.thingsboard.server.common.data.id.RuleChainId; | @@ -26,29 +27,16 @@ import org.thingsboard.server.common.data.id.RuleChainId; | ||
26 | import org.thingsboard.server.common.data.id.RuleNodeId; | 27 | import org.thingsboard.server.common.data.id.RuleNodeId; |
27 | import org.thingsboard.server.common.data.id.TenantId; | 28 | import org.thingsboard.server.common.data.id.TenantId; |
28 | import org.thingsboard.server.common.data.relation.EntityRelation; | 29 | import org.thingsboard.server.common.data.relation.EntityRelation; |
29 | -import org.thingsboard.server.common.data.rule.RuleChain; | ||
30 | -import org.thingsboard.server.common.data.rule.RuleChainMetaData; | ||
31 | -import org.thingsboard.server.common.data.rule.RuleChainOutputLabelsUsage; | ||
32 | -import org.thingsboard.server.common.data.rule.RuleChainUpdateResult; | ||
33 | -import org.thingsboard.server.common.data.rule.RuleNode; | ||
34 | -import org.thingsboard.server.common.data.rule.RuleNodeUpdateResult; | 30 | +import org.thingsboard.server.common.data.rule.*; |
35 | import org.thingsboard.server.dao.relation.RelationService; | 31 | import org.thingsboard.server.dao.relation.RelationService; |
36 | import org.thingsboard.server.dao.rule.RuleChainService; | 32 | import org.thingsboard.server.dao.rule.RuleChainService; |
37 | -import org.thingsboard.server.queue.util.TbCoreComponent; | ||
38 | - | ||
39 | -import java.util.Collections; | ||
40 | -import java.util.Comparator; | ||
41 | -import java.util.HashMap; | ||
42 | -import java.util.HashSet; | ||
43 | -import java.util.List; | ||
44 | -import java.util.Map; | ||
45 | -import java.util.Set; | ||
46 | -import java.util.TreeSet; | 33 | + |
34 | +import java.util.*; | ||
47 | import java.util.stream.Collectors; | 35 | import java.util.stream.Collectors; |
48 | 36 | ||
49 | @RequiredArgsConstructor | 37 | @RequiredArgsConstructor |
50 | @Service | 38 | @Service |
51 | -@TbCoreComponent | 39 | +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'") |
52 | @Slf4j | 40 | @Slf4j |
53 | public class DefaultTbRuleChainService implements TbRuleChainService { | 41 | public class DefaultTbRuleChainService implements TbRuleChainService { |
54 | 42 |
@@ -24,6 +24,7 @@ import lombok.Getter; | @@ -24,6 +24,7 @@ import lombok.Getter; | ||
24 | import lombok.extern.slf4j.Slf4j; | 24 | import lombok.extern.slf4j.Slf4j; |
25 | import org.springframework.beans.factory.annotation.Autowired; | 25 | import org.springframework.beans.factory.annotation.Autowired; |
26 | import org.springframework.beans.factory.annotation.Value; | 26 | import org.springframework.beans.factory.annotation.Value; |
27 | +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; | ||
27 | import org.springframework.stereotype.Service; | 28 | import org.springframework.stereotype.Service; |
28 | import org.springframework.util.StringUtils; | 29 | import org.springframework.util.StringUtils; |
29 | import org.thingsboard.common.util.JacksonUtil; | 30 | import org.thingsboard.common.util.JacksonUtil; |
@@ -34,12 +35,7 @@ import org.thingsboard.server.common.data.Device; | @@ -34,12 +35,7 @@ import org.thingsboard.server.common.data.Device; | ||
34 | import org.thingsboard.server.common.data.Tenant; | 35 | import org.thingsboard.server.common.data.Tenant; |
35 | import org.thingsboard.server.common.data.id.DeviceId; | 36 | import org.thingsboard.server.common.data.id.DeviceId; |
36 | import org.thingsboard.server.common.data.id.TenantId; | 37 | import org.thingsboard.server.common.data.id.TenantId; |
37 | -import org.thingsboard.server.common.data.kv.AttributeKvEntry; | ||
38 | -import org.thingsboard.server.common.data.kv.BasicTsKvEntry; | ||
39 | -import org.thingsboard.server.common.data.kv.BooleanDataEntry; | ||
40 | -import org.thingsboard.server.common.data.kv.KvEntry; | ||
41 | -import org.thingsboard.server.common.data.kv.LongDataEntry; | ||
42 | -import org.thingsboard.server.common.data.kv.TsKvEntry; | 38 | +import org.thingsboard.server.common.data.kv.*; |
43 | import org.thingsboard.server.common.data.page.PageData; | 39 | import org.thingsboard.server.common.data.page.PageData; |
44 | import org.thingsboard.server.common.data.page.PageDataIterable; | 40 | import org.thingsboard.server.common.data.page.PageDataIterable; |
45 | import org.thingsboard.server.common.data.page.PageLink; | 41 | import org.thingsboard.server.common.data.page.PageLink; |
@@ -55,7 +51,6 @@ import org.thingsboard.server.dao.tenant.TenantService; | @@ -55,7 +51,6 @@ import org.thingsboard.server.dao.tenant.TenantService; | ||
55 | import org.thingsboard.server.dao.timeseries.TimeseriesService; | 51 | import org.thingsboard.server.dao.timeseries.TimeseriesService; |
56 | import org.thingsboard.server.gen.transport.TransportProtos; | 52 | import org.thingsboard.server.gen.transport.TransportProtos; |
57 | import org.thingsboard.server.queue.discovery.PartitionService; | 53 | import org.thingsboard.server.queue.discovery.PartitionService; |
58 | -import org.thingsboard.server.queue.util.TbCoreComponent; | ||
59 | import org.thingsboard.server.service.partition.AbstractPartitionBasedService; | 54 | import org.thingsboard.server.service.partition.AbstractPartitionBasedService; |
60 | import org.thingsboard.server.service.telemetry.TelemetrySubscriptionService; | 55 | import org.thingsboard.server.service.telemetry.TelemetrySubscriptionService; |
61 | 56 | ||
@@ -63,31 +58,16 @@ import javax.annotation.Nonnull; | @@ -63,31 +58,16 @@ import javax.annotation.Nonnull; | ||
63 | import javax.annotation.Nullable; | 58 | import javax.annotation.Nullable; |
64 | import javax.annotation.PostConstruct; | 59 | import javax.annotation.PostConstruct; |
65 | import javax.annotation.PreDestroy; | 60 | import javax.annotation.PreDestroy; |
66 | -import java.util.ArrayList; | ||
67 | -import java.util.Arrays; | ||
68 | -import java.util.Collections; | ||
69 | -import java.util.List; | ||
70 | -import java.util.Random; | ||
71 | -import java.util.Set; | ||
72 | -import java.util.UUID; | ||
73 | -import java.util.concurrent.ConcurrentHashMap; | ||
74 | -import java.util.concurrent.ConcurrentMap; | ||
75 | -import java.util.concurrent.ExecutionException; | ||
76 | -import java.util.concurrent.ExecutorService; | ||
77 | -import java.util.concurrent.Executors; | ||
78 | -import java.util.concurrent.TimeUnit; | ||
79 | - | ||
80 | -import static org.thingsboard.server.common.data.DataConstants.ACTIVITY_EVENT; | ||
81 | -import static org.thingsboard.server.common.data.DataConstants.CONNECT_EVENT; | ||
82 | -import static org.thingsboard.server.common.data.DataConstants.DISCONNECT_EVENT; | ||
83 | -import static org.thingsboard.server.common.data.DataConstants.INACTIVITY_EVENT; | ||
84 | -import static org.thingsboard.server.common.data.DataConstants.SERVER_SCOPE; | 61 | +import java.util.*; |
62 | +import java.util.concurrent.*; | ||
63 | + | ||
64 | +import static org.thingsboard.server.common.data.DataConstants.*; | ||
85 | 65 | ||
86 | /** | 66 | /** |
87 | * Created by ashvayka on 01.05.18. | 67 | * Created by ashvayka on 01.05.18. |
88 | */ | 68 | */ |
89 | @Service | 69 | @Service |
90 | -@TbCoreComponent | 70 | +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'") |
91 | @Slf4j | 71 | @Slf4j |
92 | public class DefaultDeviceStateService extends AbstractPartitionBasedService<DeviceId> implements DeviceStateService { | 72 | public class DefaultDeviceStateService extends AbstractPartitionBasedService<DeviceId> implements DeviceStateService { |
93 | 73 |