Fix issue on LWM2M Security Store
This commit is contained in:
parent
015443d35b
commit
209c93064a
@ -134,8 +134,8 @@ public class OtaPackageTransportResource extends AbstractCoapTransportResource {
|
|||||||
response.setPayload(data);
|
response.setPayload(data);
|
||||||
if (exchange.getRequestOptions().getBlock2() != null) {
|
if (exchange.getRequestOptions().getBlock2() != null) {
|
||||||
int chunkSize = exchange.getRequestOptions().getBlock2().getSzx();
|
int chunkSize = exchange.getRequestOptions().getBlock2().getSzx();
|
||||||
boolean moreFlag = data.length > chunkSize;
|
boolean lastFlag = data.length > chunkSize;
|
||||||
response.getOptions().setBlock2(chunkSize, moreFlag, 0);
|
response.getOptions().setBlock2(chunkSize, lastFlag, 0);
|
||||||
}
|
}
|
||||||
exchange.respond(response);
|
exchange.respond(response);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -143,9 +143,9 @@ public class LwM2mTransportCoapResource extends AbstractLwM2mTransportResource {
|
|||||||
response.setPayload(fwData);
|
response.setPayload(fwData);
|
||||||
if (exchange.getRequestOptions().getBlock2() != null) {
|
if (exchange.getRequestOptions().getBlock2() != null) {
|
||||||
int chunkSize = exchange.getRequestOptions().getBlock2().getSzx();
|
int chunkSize = exchange.getRequestOptions().getBlock2().getSzx();
|
||||||
boolean moreFlag = fwData.length > chunkSize;
|
boolean lastFlag = fwData.length > chunkSize;
|
||||||
response.getOptions().setBlock2(chunkSize, moreFlag, 0);
|
response.getOptions().setBlock2(chunkSize, lastFlag, 0);
|
||||||
log.warn("92) with blokc2 Send currentId: [{}], length: [{}], chunkSize [{}], moreFlag [{}]", currentId.toString(), fwData.length, chunkSize, moreFlag);
|
log.warn("92) with blokc2 Send currentId: [{}], length: [{}], chunkSize [{}], moreFlag [{}]", currentId.toString(), fwData.length, chunkSize, lastFlag);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
log.warn("92) with block1 Send currentId: [{}], length: [{}], ", currentId.toString(), fwData.length);
|
log.warn("92) with block1 Send currentId: [{}], length: [{}], ", currentId.toString(), fwData.length);
|
||||||
|
|||||||
@ -76,32 +76,11 @@ public class LwM2mTransportServerHelper {
|
|||||||
return TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis()) * 1000L + (atomicTs.getAndIncrement() % 1000);
|
return TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis()) * 1000L + (atomicTs.getAndIncrement() % 1000);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* send to Thingsboard Attribute || Telemetry
|
|
||||||
*
|
|
||||||
* @param msg - JsonObject: [{name: value}]
|
|
||||||
* @return - dummyWriteReplace {\"targetIdVer\":\"/19_1.0/0/0\",\"value\":0082}
|
|
||||||
*/
|
|
||||||
private <T> TransportServiceCallback<Void> getPubAckCallbackSendAttrTelemetry(final T msg) {
|
|
||||||
return new TransportServiceCallback<>() {
|
|
||||||
@Override
|
|
||||||
public void onSuccess(Void dummy) {
|
|
||||||
log.trace("Success to publish msg: {}, dummy: {}", msg, dummy);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onError(Throwable e) {
|
|
||||||
log.trace("[{}] Failed to publish msg: {}", msg, e);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
public void sendParametersOnThingsboardAttribute(List<TransportProtos.KeyValueProto> result, SessionInfoProto sessionInfo) {
|
public void sendParametersOnThingsboardAttribute(List<TransportProtos.KeyValueProto> result, SessionInfoProto sessionInfo) {
|
||||||
PostAttributeMsg.Builder request = PostAttributeMsg.newBuilder();
|
PostAttributeMsg.Builder request = PostAttributeMsg.newBuilder();
|
||||||
request.addAllKv(result);
|
request.addAllKv(result);
|
||||||
PostAttributeMsg postAttributeMsg = request.build();
|
PostAttributeMsg postAttributeMsg = request.build();
|
||||||
TransportServiceCallback call = this.getPubAckCallbackSendAttrTelemetry(postAttributeMsg);
|
context.getTransportService().process(sessionInfo, postAttributeMsg, TransportServiceCallback.EMPTY);
|
||||||
context.getTransportService().process(sessionInfo, postAttributeMsg, this.getPubAckCallbackSendAttrTelemetry(call));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void sendParametersOnThingsboardTelemetry(List<TransportProtos.KeyValueProto> result, SessionInfoProto sessionInfo) {
|
public void sendParametersOnThingsboardTelemetry(List<TransportProtos.KeyValueProto> result, SessionInfoProto sessionInfo) {
|
||||||
@ -111,8 +90,7 @@ public class LwM2mTransportServerHelper {
|
|||||||
builder.addAllKv(result);
|
builder.addAllKv(result);
|
||||||
request.addTsKvList(builder.build());
|
request.addTsKvList(builder.build());
|
||||||
PostTelemetryMsg postTelemetryMsg = request.build();
|
PostTelemetryMsg postTelemetryMsg = request.build();
|
||||||
TransportServiceCallback call = this.getPubAckCallbackSendAttrTelemetry(postTelemetryMsg);
|
context.getTransportService().process(sessionInfo, postTelemetryMsg, TransportServiceCallback.EMPTY);
|
||||||
context.getTransportService().process(sessionInfo, postTelemetryMsg, this.getPubAckCallbackSendAttrTelemetry(call));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -85,6 +85,7 @@ public class TbLwM2mSecurityStore implements TbEditableSecurityStore {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void remove(String endpoint) {
|
public void remove(String endpoint) {
|
||||||
securityStore.remove(endpoint);
|
//TODO: Make sure we delay removal of security store from endpoint due to reg/unreg race condition.
|
||||||
|
// securityStore.remove(endpoint);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user