Skip to content

Commit 327b960

Browse files
committed
Call createTranslator directly with DptId
1 parent f6366d9 commit 327b960

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

src/io/calimero/gui/PropertyEditorTab.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -685,7 +685,7 @@ private void writeValues(final int objectIndex, final int pid, final String valu
685685
}
686686

687687
private static Optional<Integer> dptSize(DptId dpt) {
688-
return createTranslator(0, dpt.toString()).map(DPTXlator::getTypeSize).map(size -> Math.max(1, size));
688+
return createTranslator(dpt).map(DPTXlator::getTypeSize).map(size -> Math.max(1, size));
689689
}
690690

691691
private static Optional<Integer> dptSize(final int main, final String dpt) {
@@ -701,6 +701,15 @@ private static Optional<DPTXlator> createTranslator(final int main, final String
701701
}
702702
}
703703

704+
private static Optional<DPTXlator> createTranslator(final DptId dptId) {
705+
try {
706+
return Optional.of(TranslatorTypes.createTranslator(dptId));
707+
}
708+
catch (final KNXException ignore) {
709+
return Optional.empty();
710+
}
711+
}
712+
704713
private static Optional<DPTXlator> createTranslator(final int pdt) {
705714
try {
706715
return Optional.of(PropertyTypes.createTranslator(pdt));
@@ -857,7 +866,7 @@ private void updateDptBounds(final String objType, final String pid)
857866
final var optProp = getDefinition(Integer.parseUnsignedInt(objType), Integer.parseUnsignedInt(pid));
858867
if (optProp.isPresent()) {
859868
final PropertyClient.Property p = optProp.get();
860-
p.dpt().flatMap(dpt -> createTranslator(0, dpt.toString())).or(() -> createTranslator(p.pdt()))
869+
p.dpt().flatMap(dpt -> createTranslator(dpt)).or(() -> createTranslator(p.pdt()))
861870
.ifPresentOrElse(t -> {
862871
final DPT dpt = t.getType();
863872
bounds.add(dpt.getLowerValue());

0 commit comments

Comments
 (0)