Merge branch 'develop/3.5' of github.com:thingsboard/thingsboard into develop/3.5

This commit is contained in:
Igor Kulikov 2023-04-13 17:21:18 +03:00
commit fd490f8097
5 changed files with 27 additions and 11 deletions

View File

@ -16,6 +16,7 @@
package org.thingsboard.server.transport.lwm2m.server.store;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.binary.Hex;
import org.springframework.data.redis.connection.RedisClusterConnection;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.Cursor;
@ -48,7 +49,12 @@ public class TbRedisLwM2MClientStore implements TbLwM2MClientStore {
if (data == null) {
return null;
} else {
return deserialize(data);
try {
return deserialize(data);
} catch (Exception e) {
log.warn("[{}] Failed to deserialize client from data: {}", endpoint, Hex.encodeHexString(data), e);
return null;
}
}
}
}
@ -70,7 +76,13 @@ public class TbRedisLwM2MClientStore implements TbLwM2MClientStore {
scans.forEach(scan -> {
scan.forEachRemaining(key -> {
byte[] element = connection.get(key);
clients.add(deserialize(element));
if (element != null) {
try {
clients.add(deserialize(element));
} catch (Exception e) {
log.warn("[{}] Failed to deserialize client from data: {}", Hex.encodeHexString(key), Hex.encodeHexString(element), e);
}
}
});
});
return clients;

View File

@ -15,7 +15,7 @@
limitations under the License.
-->
<div style="min-width: 600px;">
<form style="width: 600px;">
<mat-toolbar color="primary">
<span fxFlex></span>
<button mat-icon-button (click)="close()" type="button">
@ -30,4 +30,4 @@
[alarmActivityOnly]="true">
</tb-alarm-comment>
</div>
</div>
</form>

View File

@ -15,7 +15,7 @@
limitations under the License.
-->
<form [formGroup]="alarmFormGroup" style="min-width: 600px;">
<form [formGroup]="alarmFormGroup" style="width: 600px;">
<mat-toolbar color="primary">
<h2>{{ 'alarm.alarm-details' | translate }}</h2>
<span fxFlex></span>

View File

@ -91,14 +91,18 @@
{{ getUserInitials(alarm) }}
</span>
<span [matTooltip]="getUserDisplayName(alarm)"
matTooltipPosition="above"
style="text-overflow: ellipsis">
matTooltipPosition="above">
{{ getUserDisplayName(alarm) }}
</span>
</span>
<span *ngIf="!alarm.assigneeId" class="unassigned-container" fxLayout="row" fxLayoutAlign="start center">
<span *ngIf="!alarm.assigneeId" class="unassigned-container">
<mat-icon class="material-icons unassigned-icon">account_circle</mat-icon>
<span translate>alarm.unassigned</span>
<span matTooltip="{{ 'alarm.unassigned' | translate }}"
matTooltipPosition="above"
style="vertical-align: middle"
translate>
alarm.unassigned
</span>
</span>
<button *ngIf="allowAssign"
mat-icon-button [disabled]="isLoading$ | async"

View File

@ -28,8 +28,8 @@
}
.mat-mdc-cell {
.assignee-cell {
white-space: nowrap;
.assigned-container {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
.user-avatar {
@ -48,7 +48,6 @@
}
}
.unassigned-container {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
.material-icons.unassigned-icon {
@ -58,6 +57,7 @@
margin-right: 8px;
color: rgba(0, 0, 0, 0.38);
overflow: visible;
vertical-align: middle;
}
}
}