Commit e944874e6459b687c6dddc03f6236eb4ef581d66

Authored by xp.Huang
2 parents a351929c f93602c0

Merge branch '20221124' into 'master'

20221124

See merge request huang/thingsboard3.3.2!142
... ... @@ -21,14 +21,11 @@ import com.fasterxml.jackson.databind.node.ObjectNode;
21 21 import lombok.RequiredArgsConstructor;
22 22 import lombok.extern.slf4j.Slf4j;
23 23 import org.apache.commons.lang3.StringUtils;
  24 +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
24 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 28 import org.thingsboard.server.common.data.audit.ActionType;
31   -import org.thingsboard.server.common.data.exception.ThingsboardException;
32 29 import org.thingsboard.server.common.data.id.CustomerId;
33 30 import org.thingsboard.server.common.data.id.EntityId;
34 31 import org.thingsboard.server.common.data.id.TenantId;
... ... @@ -40,14 +37,12 @@ import org.thingsboard.server.common.msg.TbMsg;
40 37 import org.thingsboard.server.common.msg.TbMsgDataType;
41 38 import org.thingsboard.server.common.msg.TbMsgMetaData;
42 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 41 import java.util.List;
47 42 import java.util.Map;
48 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 46 @Service
52 47 @RequiredArgsConstructor
53 48 @Slf4j
... ...
... ... @@ -16,14 +16,11 @@
16 16 package org.thingsboard.server.service.device;
17 17
18 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 20 import lombok.extern.slf4j.Slf4j;
25 21 import org.springframework.beans.factory.annotation.Autowired;
26 22 import org.springframework.beans.factory.annotation.Value;
  23 +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
27 24 import org.springframework.cache.Cache;
28 25 import org.springframework.cache.CacheManager;
29 26 import org.springframework.stereotype.Service;
... ... @@ -49,7 +46,6 @@ import org.thingsboard.server.dao.device.claim.ClaimResponse;
49 46 import org.thingsboard.server.dao.device.claim.ClaimResult;
50 47 import org.thingsboard.server.dao.device.claim.ReclaimResult;
51 48 import org.thingsboard.server.dao.model.ModelConstants;
52   -import org.thingsboard.server.queue.util.TbCoreComponent;
53 49
54 50 import javax.annotation.Nullable;
55 51 import java.io.IOException;
... ... @@ -63,7 +59,7 @@ import static org.thingsboard.server.common.data.CacheConstants.CLAIM_DEVICES_CA
63 59
64 60 @Service
65 61 @Slf4j
66   -@TbCoreComponent
  62 +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'")
67 63 public class ClaimDevicesServiceImpl implements ClaimDevicesService {
68 64
69 65 private static final String CLAIM_ATTRIBUTE_NAME = "claimingAllowed";
... ...
... ... @@ -17,6 +17,7 @@ package org.thingsboard.server.service.rule;
17 17
18 18 import lombok.RequiredArgsConstructor;
19 19 import lombok.extern.slf4j.Slf4j;
  20 +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
20 21 import org.springframework.stereotype.Service;
21 22 import org.thingsboard.common.util.JacksonUtil;
22 23 import org.thingsboard.rule.engine.flow.TbRuleChainInputNode;
... ... @@ -26,29 +27,16 @@ import org.thingsboard.server.common.data.id.RuleChainId;
26 27 import org.thingsboard.server.common.data.id.RuleNodeId;
27 28 import org.thingsboard.server.common.data.id.TenantId;
28 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 31 import org.thingsboard.server.dao.relation.RelationService;
36 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 35 import java.util.stream.Collectors;
48 36
49 37 @RequiredArgsConstructor
50 38 @Service
51   -@TbCoreComponent
  39 +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'")
52 40 @Slf4j
53 41 public class DefaultTbRuleChainService implements TbRuleChainService {
54 42
... ...
... ... @@ -24,6 +24,7 @@ import lombok.Getter;
24 24 import lombok.extern.slf4j.Slf4j;
25 25 import org.springframework.beans.factory.annotation.Autowired;
26 26 import org.springframework.beans.factory.annotation.Value;
  27 +import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
27 28 import org.springframework.stereotype.Service;
28 29 import org.springframework.util.StringUtils;
29 30 import org.thingsboard.common.util.JacksonUtil;
... ... @@ -34,12 +35,7 @@ import org.thingsboard.server.common.data.Device;
34 35 import org.thingsboard.server.common.data.Tenant;
35 36 import org.thingsboard.server.common.data.id.DeviceId;
36 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 39 import org.thingsboard.server.common.data.page.PageData;
44 40 import org.thingsboard.server.common.data.page.PageDataIterable;
45 41 import org.thingsboard.server.common.data.page.PageLink;
... ... @@ -55,7 +51,6 @@ import org.thingsboard.server.dao.tenant.TenantService;
55 51 import org.thingsboard.server.dao.timeseries.TimeseriesService;
56 52 import org.thingsboard.server.gen.transport.TransportProtos;
57 53 import org.thingsboard.server.queue.discovery.PartitionService;
58   -import org.thingsboard.server.queue.util.TbCoreComponent;
59 54 import org.thingsboard.server.service.partition.AbstractPartitionBasedService;
60 55 import org.thingsboard.server.service.telemetry.TelemetrySubscriptionService;
61 56
... ... @@ -63,31 +58,16 @@ import javax.annotation.Nonnull;
63 58 import javax.annotation.Nullable;
64 59 import javax.annotation.PostConstruct;
65 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 67 * Created by ashvayka on 01.05.18.
88 68 */
89 69 @Service
90   -@TbCoreComponent
  70 +@ConditionalOnExpression("'${service.type:null}'=='monolith' || '${service.type:null}'=='tb-core' || '${service.type:null}'=='tb-rule-engine'")
91 71 @Slf4j
92 72 public class DefaultDeviceStateService extends AbstractPartitionBasedService<DeviceId> implements DeviceStateService {
93 73
... ...
... ... @@ -141,7 +141,7 @@
141 141 LEFT JOIN attribute_kv c ON ifd.tb_device_id = c.entity_id::TEXT AND c.entity_type ='DEVICE' AND c.attribute_key='lastDisconnectTime'
142 142 LEFT JOIN attribute_kv e ON ifd.tb_device_id = e.entity_id::TEXT AND e.entity_type ='DEVICE' AND e.attribute_key='lastConnectTime'
143 143 LEFT JOIN device d ON d.id::TEXT = ifd.tb_device_id
144   - LEFT JOIN tk_device idg ON idg.id = ifd.gateway_id
  144 + LEFT JOIN tk_device idg ON idg.tb_device_id = ifd.gateway_id
145 145 <where>
146 146 <if test="tenantId !=null and tenantId !=''">
147 147 AND ifd.tenant_id = #{tenantId}
... ...