示例#1
0
 @Override
 public void addNumeric(final NumericFx numeric) {
   final String metric_id = numeric.getMetric_id();
   final String udi = numeric.getUnique_device_identifier();
   final String unit_id = numeric.getUnit_id();
   final int instance_id = numeric.getInstance_id();
   for (Vital v : this) {
     if (v != null) {
       for (String x : v.getMetricIds()) {
         // Change to this vital from a source
         if (x.equals(metric_id)) {
           for (Value va : v) {
             if (va.getInstanceId() == instance_id
                 && va.getMetricId().equals(metric_id)
                 && va.getUniqueDeviceIdentifier().equals(udi)) {
               if (!numeric.equals(va.getNumeric())) {
                 log.warn("duplicate numeric added {} {}", va.getNumeric(), numeric);
               }
               return;
             }
           }
           final Value va = new ValueImpl(numeric, v);
           v.add(va);
         }
       }
     }
   }
 }
示例#2
0
 @Override
 public void removeNumeric(NumericFx numeric) {
   final String metric_id = numeric.getMetric_id();
   for (Vital v : this) {
     if (v != null) {
       for (String x : v.getMetricIds()) {
         if (x.equals(metric_id)) {
           ListIterator<Value> li = v.listIterator();
           while (li.hasNext()) {
             if (numeric.equals(li.next().getNumeric())) {
               li.remove();
             }
           }
         }
       }
     }
   }
 }