private DecimalType qtyToCanonical(Quantity q) { if (!"http://unitsofmeasure.org".equals(q.getSystem())) return null; try { Pair p = new Pair(new Decimal(q.getValue().toPlainString()), q.getCode()); Pair c = worker.getUcumService().getCanonicalForm(p); return new DecimalType(c.getValue().asDecimal()); } catch (UcumException e) { return null; } }
private Pair qtyToPair(Quantity q) { if (!"http://unitsofmeasure.org".equals(q.getSystem())) return null; try { return new Pair(new Decimal(q.getValue().toPlainString()), q.getCode()); } catch (UcumException e) { return null; } }
private DecimalType qtyToCanonical(Quantity q) { if (!"http://unitsofmeasure.org".equals(q.getSystem())) return null; try { Pair p = new Pair(new Decimal(q.getValue().toPlainString()), q.getCode()); Pair c = worker.getUcumService().getCanonicalForm(p); return new DecimalType(c.getValue().asDecimal()); } catch (UcumException e) { return null; } }
private Pair qtyToPair(Quantity q) { if (!"http://unitsofmeasure.org".equals(q.getSystem())) return null; try { return new Pair(new Decimal(q.getValue().toPlainString()), q.getCode()); } catch (UcumException e) { return null; } }
@Override public Pair getCanonicalForm(Pair value) throws UcumException { assert value != null : paramError("getCanonicalForm", "value", "must not be null"); assert checkStringParam(value.getCode()) : paramError("getCanonicalForm", "value.code", "must not be null or empty"); Term term = new ExpressionParser(model).parse(value.getCode()); Canonical c = new Converter(model, handlers).convert(term); if (value.getValue() == null) return new Pair(null, new ExpressionComposer().compose(c, false)); else return new Pair(value.getValue().multiply(c.getValue()), new ExpressionComposer().compose(c, false)); }
@Override public Pair getCanonicalForm(Pair value) throws UcumException { assert value != null : paramError("getCanonicalForm", "value", "must not be null"); assert checkStringParam(value.getCode()) : paramError("getCanonicalForm", "value.code", "must not be null or empty"); Term term = new ExpressionParser(model).parse(value.getCode()); Canonical c = new Converter(model, handlers).convert(term); if (value.getValue() == null) return new Pair(null, new ExpressionComposer().compose(c, false)); else return new Pair(value.getValue().multiply(c.getValue()), new ExpressionComposer().compose(c, false)); }