Browse Source

Merge pull request #9957 from YevhenBondarenko/feature/device-connectivity-improvements

set default device conncectivity params from yml during install
pull/9966/merge
Andrew Shvayka 2 years ago
committed by GitHub
parent
commit
928debe632
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 48
      application/src/main/java/org/thingsboard/server/service/install/DefaultSystemDataLoaderService.java
  2. 3
      dao/src/main/java/org/thingsboard/server/dao/device/DeviceConnectivityConfiguration.java

48
application/src/main/java/org/thingsboard/server/service/install/DefaultSystemDataLoaderService.java

@ -85,6 +85,7 @@ import org.thingsboard.server.common.data.tenant.profile.TenantProfileData;
import org.thingsboard.server.common.data.tenant.profile.TenantProfileQueueConfiguration;
import org.thingsboard.server.dao.attributes.AttributesService;
import org.thingsboard.server.dao.customer.CustomerService;
import org.thingsboard.server.dao.device.DeviceConnectivityConfiguration;
import org.thingsboard.server.dao.device.DeviceCredentialsService;
import org.thingsboard.server.dao.device.DeviceProfileService;
import org.thingsboard.server.dao.device.DeviceService;
@ -169,6 +170,9 @@ public class DefaultSystemDataLoaderService implements SystemDataLoaderService {
@Autowired
private TimeseriesService tsService;
@Autowired
private DeviceConnectivityConfiguration connectivityConfiguration;
@Value("${state.persistToTelemetry:false}")
@Getter
private boolean persistActivityToTelemetry;
@ -260,7 +264,6 @@ public class DefaultSystemDataLoaderService implements SystemDataLoaderService {
ObjectNode node = JacksonUtil.newObjectNode();
node.put("baseUrl", "http://localhost:8080");
node.put("prohibitDifferentUrl", false);
node.set("connectivity", createDeviceConnectivityConfiguration());
generalSettings.setJsonValue(node);
adminSettingsService.saveAdminSettings(TenantId.SYS_TENANT_ID, generalSettings);
@ -285,51 +288,10 @@ public class DefaultSystemDataLoaderService implements SystemDataLoaderService {
AdminSettings connectivitySettings = new AdminSettings();
connectivitySettings.setTenantId(TenantId.SYS_TENANT_ID);
connectivitySettings.setKey("connectivity");
connectivitySettings.setJsonValue(createDeviceConnectivityConfiguration());
connectivitySettings.setJsonValue(JacksonUtil.valueToTree(connectivityConfiguration.getConnectivity()));
adminSettingsService.saveAdminSettings(TenantId.SYS_TENANT_ID, connectivitySettings);
}
private ObjectNode createDeviceConnectivityConfiguration() {
ObjectNode config = JacksonUtil.newObjectNode();
ObjectNode http = JacksonUtil.newObjectNode();
http.put("enabled", true);
http.put("host", "");
http.put("port", 8080);
config.set("http", http);
ObjectNode https = JacksonUtil.newObjectNode();
https.put("enabled", false);
https.put("host", "");
https.put("port", 443);
config.set("https", https);
ObjectNode mqtt = JacksonUtil.newObjectNode();
mqtt.put("enabled", true);
mqtt.put("host", "");
mqtt.put("port", 1883);
config.set("mqtt", mqtt);
ObjectNode mqtts = JacksonUtil.newObjectNode();
mqtts.put("enabled", false);
mqtts.put("host", "");
mqtts.put("port", 8883);
config.set("mqtts", mqtts);
ObjectNode coap = JacksonUtil.newObjectNode();
coap.put("enabled", true);
coap.put("host", "");
coap.put("port", 5683);
config.set("coap", coap);
ObjectNode coaps = JacksonUtil.newObjectNode();
coaps.put("enabled", false);
coaps.put("host", "");
coaps.put("port", 5684);
config.set("coaps", coaps);
return config;
}
@Override
public void createRandomJwtSettings() throws Exception {
jwtSettingsService.createRandomJwtSettings();

3
dao/src/main/java/org/thingsboard/server/dao/device/DeviceConnectivityConfiguration.java

@ -18,14 +18,15 @@ package org.thingsboard.server.dao.device;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Profile;
import java.util.HashMap;
import java.util.Map;
@Profile("install")
@Configuration
@ConfigurationProperties(prefix = "device")
@Data
@Deprecated(since = "3.6.1")
public class DeviceConnectivityConfiguration {
private Map<String, DeviceConnectivityInfo> connectivity = new HashMap<>();

Loading…
Cancel
Save