Browse Source

added refresh ctx action type

pull/14253/head
IrynaMatveieva 11 months ago
parent
commit
0a6079f4ce
  1. 10
      application/src/main/java/org/thingsboard/server/actors/calculatedField/CalculatedFieldEntityMessageProcessor.java
  2. 2
      application/src/main/java/org/thingsboard/server/actors/calculatedField/CalculatedFieldManagerMessageProcessor.java
  3. 3
      application/src/main/java/org/thingsboard/server/actors/calculatedField/EntityInitCalculatedFieldMsg.java

10
application/src/main/java/org/thingsboard/server/actors/calculatedField/CalculatedFieldEntityMessageProcessor.java

@ -159,10 +159,12 @@ public class CalculatedFieldEntityMessageProcessor extends AbstractContextAwareM
} else { } else {
state.setCtx(ctx, actorCtx); state.setCtx(ctx, actorCtx);
} }
if (state.isSizeOk()) { if (msg.getStateAction() != StateAction.REFRESH_CTX) {
processStateIfReady(state, Collections.emptyMap(), ctx, Collections.singletonList(ctx.getCfId()), null, null, msg.getCallback()); if (state.isSizeOk()) {
} else { processStateIfReady(state, Collections.emptyMap(), ctx, Collections.singletonList(ctx.getCfId()), null, null, msg.getCallback());
throw new RuntimeException(ctx.getSizeExceedsLimitMessage()); } else {
throw new RuntimeException(ctx.getSizeExceedsLimitMessage());
}
} }
} catch (Exception e) { } catch (Exception e) {
log.debug("[{}][{}] Failed to initialize CF state", entityId, ctx.getCfId(), e); log.debug("[{}][{}] Failed to initialize CF state", entityId, ctx.getCfId(), e);

2
application/src/main/java/org/thingsboard/server/actors/calculatedField/CalculatedFieldManagerMessageProcessor.java

@ -262,7 +262,7 @@ public class CalculatedFieldManagerMessageProcessor extends AbstractContextAware
).forEach(CalculatedFieldCtx::updateTenantProfileProperties); ).forEach(CalculatedFieldCtx::updateTenantProfileProperties);
calculatedFields.values().forEach(ctx -> { calculatedFields.values().forEach(ctx -> {
applyToTargetCfEntityActors(ctx, callback, (id, cb) -> initCfForEntity(id, ctx, StateAction.REPROCESS, cb)); applyToTargetCfEntityActors(ctx, callback, (id, cb) -> initCfForEntity(id, ctx, StateAction.REFRESH_CTX, cb));
}); });
} }

3
application/src/main/java/org/thingsboard/server/actors/calculatedField/EntityInitCalculatedFieldMsg.java

@ -39,6 +39,7 @@ public class EntityInitCalculatedFieldMsg implements ToCalculatedFieldSystemMsg
INIT, INIT,
REINIT, REINIT,
RECREATE, RECREATE,
REPROCESS REPROCESS,
REFRESH_CTX
} }
} }

Loading…
Cancel
Save