Browse Source

Update resource structure for edge

pull/9542/head
ViacheslavKlimov 3 years ago
parent
commit
3739b12f19
  1. 7
      application/src/main/java/org/thingsboard/server/service/edge/rpc/constructor/ResourceMsgConstructor.java
  2. 3
      application/src/main/java/org/thingsboard/server/service/edge/rpc/processor/resource/BaseResourceProcessor.java
  3. 2
      common/edge-api/src/main/proto/edge.proto

7
application/src/main/java/org/thingsboard/server/service/edge/rpc/constructor/ResourceMsgConstructor.java

@ -15,6 +15,7 @@
*/ */
package org.thingsboard.server.service.edge.rpc.constructor; package org.thingsboard.server.service.edge.rpc.constructor;
import com.google.protobuf.ByteString;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.thingsboard.server.common.data.TbResource; import org.thingsboard.server.common.data.TbResource;
import org.thingsboard.server.common.data.id.TbResourceId; import org.thingsboard.server.common.data.id.TbResourceId;
@ -42,6 +43,12 @@ public class ResourceMsgConstructor {
if (tbResource.getEtag() != null) { if (tbResource.getEtag() != null) {
builder.setEtag(tbResource.getEtag()); builder.setEtag(tbResource.getEtag());
} }
if (tbResource.getDescriptor() != null) {
builder.setDescriptorJson(tbResource.getDescriptor().toString());
}
if (tbResource.getPreview() != null) {
builder.setPreview(ByteString.copyFrom(tbResource.getPreview()));
}
if (tbResource.getTenantId().equals(TenantId.SYS_TENANT_ID)) { if (tbResource.getTenantId().equals(TenantId.SYS_TENANT_ID)) {
builder.setIsSystem(true); builder.setIsSystem(true);
} }

3
application/src/main/java/org/thingsboard/server/service/edge/rpc/processor/resource/BaseResourceProcessor.java

@ -17,6 +17,7 @@ package org.thingsboard.server.service.edge.rpc.processor.resource;
import com.datastax.oss.driver.api.core.uuid.Uuids; import com.datastax.oss.driver.api.core.uuid.Uuids;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.thingsboard.common.util.JacksonUtil;
import org.thingsboard.server.common.data.ResourceType; import org.thingsboard.server.common.data.ResourceType;
import org.thingsboard.server.common.data.StringUtils; import org.thingsboard.server.common.data.StringUtils;
import org.thingsboard.server.common.data.TbResource; import org.thingsboard.server.common.data.TbResource;
@ -61,7 +62,9 @@ public abstract class BaseResourceProcessor extends BaseEdgeProcessor {
resource.setResourceKey(resourceKey); resource.setResourceKey(resourceKey);
resource.setResourceType(resourceType); resource.setResourceType(resourceType);
resource.setFileName(resourceUpdateMsg.getFileName()); resource.setFileName(resourceUpdateMsg.getFileName());
resource.setDescriptor(resourceUpdateMsg.hasDescriptorJson() ? JacksonUtil.toJsonNode(resourceUpdateMsg.getDescriptorJson()) : null);
resource.setEncodedData(resourceUpdateMsg.hasData() ? resourceUpdateMsg.getData() : null); resource.setEncodedData(resourceUpdateMsg.hasData() ? resourceUpdateMsg.getData() : null);
resource.setPreview(resourceUpdateMsg.hasPreview() ? resourceUpdateMsg.getPreview().toByteArray() : null);
resource.setEtag(resourceUpdateMsg.hasEtag() ? resourceUpdateMsg.getEtag() : null); resource.setEtag(resourceUpdateMsg.hasEtag() ? resourceUpdateMsg.getEtag() : null);
resourceValidator.validate(resource, TbResourceInfo::getTenantId); resourceValidator.validate(resource, TbResourceInfo::getTenantId);
if (created) { if (created) {

2
common/edge-api/src/main/proto/edge.proto

@ -436,6 +436,8 @@ message ResourceUpdateMsg {
optional string data = 8; optional string data = 8;
optional string etag = 9; optional string etag = 9;
bool isSystem = 10; bool isSystem = 10;
optional string descriptorJson = 11;
optional bytes preview = 12;
} }
message RuleChainMetadataRequestMsg { message RuleChainMetadataRequestMsg {

Loading…
Cancel
Save