Skip to content

Commit

Permalink
[pidcontroller] Improve logging (openhab#11312)
Browse files Browse the repository at this point in the history
Signed-off-by: Fabian Wolter <github@fabian-wolter.de>
  • Loading branch information
fwolter authored and thinkingstone committed Nov 7, 2021
1 parent 806aac9 commit 68b821a
Showing 1 changed file with 11 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -72,10 +72,12 @@ public class PIDControllerTriggerHandler extends BaseTriggerModuleHandler implem
private @Nullable String iInspector;
private @Nullable String dInspector;
private @Nullable String eInspector;
private ItemRegistry itemRegistry;

public PIDControllerTriggerHandler(Trigger module, ItemRegistry itemRegistry, EventPublisher eventPublisher,
BundleContext bundleContext) {
super(module);
this.itemRegistry = itemRegistry;
this.eventPublisher = eventPublisher;

Configuration config = module.getConfiguration();
Expand Down Expand Up @@ -154,14 +156,14 @@ private void calculate() {
try {
input = getItemValueAsNumber(inputItem);
} catch (PIDException e) {
logger.warn("Input item: {}", e.getMessage());
logger.warn("Input item: {}: {}", inputItem.getName(), e.getMessage());
return;
}

try {
setpoint = getItemValueAsNumber(setpointItem);
} catch (PIDException e) {
logger.warn("Setpoint item: {}", e.getMessage());
logger.warn("Setpoint item: {}: {}", setpointItem.getName(), e.getMessage());
return;
}

Expand All @@ -180,7 +182,12 @@ private void calculate() {

private void updateItem(@Nullable String itemName, double value) {
if (itemName != null) {
eventPublisher.post(ItemEventFactory.createCommandEvent(itemName, new DecimalType(value)));
try {
itemRegistry.getItem(itemName);
eventPublisher.post(ItemEventFactory.createCommandEvent(itemName, new DecimalType(value)));
} catch (ItemNotFoundException e) {
logger.warn("Item doesn't exist: {}", itemName);
}
}
}

Expand Down Expand Up @@ -209,8 +216,7 @@ private double getItemValueAsNumber(Item item) throws PIDException {
// nothing
}
}
throw new PIDException(
"Item type is not a number: " + setpointState.getClass().getSimpleName() + ": " + setpointState);
throw new PIDException("Not a number: " + setpointState.getClass().getSimpleName() + ": " + setpointState);
}

@Override
Expand Down

0 comments on commit 68b821a

Please sign in to comment.