Package org.openhab.core.library.types

Examples of org.openhab.core.library.types.DecimalType


    if (valueSelector.getItemClass() == NumberItem.class) {

      if (valueSelector == RFXComValueSelector.SIGNAL_LEVEL) {

        state = new DecimalType(signalLevel);

      } else if (valueSelector == RFXComValueSelector.BATTERY_LEVEL) {

        state = new DecimalType(batteryLevel);

      } else if (valueSelector == RFXComValueSelector.RAIN_RATE) {

        state = new DecimalType(rainRate);
      } else if (valueSelector == RFXComValueSelector.RAIN_TOTAL) {

        state = new DecimalType(rainTotal);
     

      } else {
        throw new RFXComException("Can't convert "
            + valueSelector + " to NumberItem");
View Full Code Here


    if (valueSelector.getItemClass() == NumberItem.class) {

      if (valueSelector == RFXComValueSelector.SIGNAL_LEVEL) {

        state = new DecimalType(signalLevel);

      } else if (valueSelector == RFXComValueSelector.BATTERY_LEVEL) {

        state = new DecimalType(batteryLevel);

      } else if (valueSelector == RFXComValueSelector.TEMPERATURE) {

        state = new DecimalType(temperature);

      } else {
        throw new RFXComException("Can't convert "
            + valueSelector + " to NumberItem");
      }
View Full Code Here

    // example temperature string: '26.4°C'
    // '°' is caused by some different encoding, so cut last 2 chars
    final String temperature = arr[24].substring(0, arr[24].length() - 2);
    if (hasTemperaturChanged(state, temperature)) {
      result.put(AnelCommandType.TEMPERATURE, new DecimalType(temperature));
      state.temperature = temperature;
    }

    // maybe the device's name changed?!
    final String name = arr[1];
View Full Code Here

   *
   * @param config
   * @param value
   */
  private void updateItem(EMBindingConfig config, int value) {
    DecimalType status = new DecimalType(value * config.getCorrectionFactor());
    eventPublisher.postUpdate(config.getItem().getName(), status);
  }
View Full Code Here

               ((SwitchItem) item).setState(status);
             }
             }           
          } else
          if (item instanceof NumberItem) {
            DecimalType value = new DecimalType(current);
            synchronized (item) {
              if (!item.getState().equals(value)) {               
                eventPublisher.postUpdate(itemName, value);
                ((NumberItem) item).setState(value);
              }
View Full Code Here

      Collection<MaxCulBindingConfig> bindingConfigs = provider
          .getCreditMonitorBindings();
      for (MaxCulBindingConfig bc : bindingConfigs) {
        String itemName = provider.getItemNameForConfig(bc);
        eventPublisher
            .postUpdate(itemName, new DecimalType(credit10ms));
      }
    }
  }
View Full Code Here

            if (bc.getFeature() == MaxCulFeature.THERMOSTAT
                && wallThermCtrlMsg.getDesiredTemperature() != null) {
              String itemName = provider.getItemNameForConfig(bc);
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(wallThermCtrlMsg
                      .getDesiredTemperature()));
            } else if (bc.getFeature() == MaxCulFeature.TEMPERATURE
                && wallThermCtrlMsg.getMeasuredTemperature() != null) {
              String itemName = provider.getItemNameForConfig(bc);
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(wallThermCtrlMsg
                      .getMeasuredTemperature()));
            }
            // TODO switch mode between manual/automatic?
          }
        }

        /* reply only if not broadcast */
        if (isBroadcast == false)
          this.messageHandler.sendAck(wallThermCtrlMsg);
        break;
      case SET_TEMPERATURE:
        SetTemperatureMsg setTempMsg = new SetTemperatureMsg(data);
        setTempMsg.printMessage();
        for (MaxCulBindingProvider provider : super.providers) {
          Collection<MaxCulBindingConfig> bindingConfigs = provider
              .getConfigsForRadioAddr(setTempMsg.srcAddrStr);
          for (MaxCulBindingConfig bc : bindingConfigs) {
            if (bc.getFeature() == MaxCulFeature.THERMOSTAT) {
              String itemName = provider.getItemNameForConfig(bc);
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(setTempMsg
                      .getDesiredTemperature()));
            }
            // TODO switch mode between manual/automatic?
          }
        }
        /* respond to device */
        if (isBroadcast == false)
          this.messageHandler.sendAck(setTempMsg);
        break;
      case THERMOSTAT_STATE:
        ThermostatStateMsg thermStateMsg = new ThermostatStateMsg(data);
        thermStateMsg.printMessage();
        for (MaxCulBindingProvider provider : super.providers) {
          Collection<MaxCulBindingConfig> bindingConfigs = provider
              .getConfigsForRadioAddr(thermStateMsg.srcAddrStr);
          for (MaxCulBindingConfig bc : bindingConfigs) {
            String itemName = provider.getItemNameForConfig(bc);
            if (bc.getFeature() == MaxCulFeature.THERMOSTAT
                && thermStateMsg.getDesiredTemperature() != null) {
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(thermStateMsg
                      .getDesiredTemperature()));
            } else if (bc.getFeature() == MaxCulFeature.TEMPERATURE
                && thermStateMsg.getMeasuredTemperature() != null) {
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(thermStateMsg
                      .getMeasuredTemperature()));
            } else if (bc.getFeature() == MaxCulFeature.BATTERY) {
              eventPublisher.postUpdate(itemName, thermStateMsg
                  .getBatteryLow() ? OnOffType.ON
                  : OnOffType.OFF);
            } else if (bc.getFeature() == MaxCulFeature.MODE) {
              eventPublisher.postUpdate(itemName,
                  new DecimalType(thermStateMsg
                      .getControlMode().toInt()));
            } else if (bc.getFeature() == MaxCulFeature.VALVE_POS) {
              eventPublisher
                  .postUpdate(itemName, new DecimalType(
                      thermStateMsg.getValvePos()));
            }
            // TODO switch mode between manual/automatic?
          }
        }
        /* respond to device */
        if (isBroadcast == false)
          this.messageHandler.sendAck(thermStateMsg);
        break;
      case WALL_THERMOSTAT_STATE:
        WallThermostatStateMsg wallThermStateMsg = new WallThermostatStateMsg(
            data);
        wallThermStateMsg.printMessage();
        for (MaxCulBindingProvider provider : super.providers) {
          Collection<MaxCulBindingConfig> bindingConfigs = provider
              .getConfigsForRadioAddr(wallThermStateMsg.srcAddrStr);
          for (MaxCulBindingConfig bc : bindingConfigs) {
            String itemName = provider.getItemNameForConfig(bc);
            if (bc.getFeature() == MaxCulFeature.THERMOSTAT
                && wallThermStateMsg.getDesiredTemperature() != null) {
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(wallThermStateMsg
                      .getDesiredTemperature()));
            } else if (bc.getFeature() == MaxCulFeature.TEMPERATURE
                && wallThermStateMsg.getMeasuredTemperature() != null) {
              eventPublisher.postUpdate(
                  itemName,
                  new DecimalType(wallThermStateMsg
                      .getMeasuredTemperature()));
            } else if (bc.getFeature() == MaxCulFeature.BATTERY) {
              eventPublisher
                  .postUpdate(itemName, wallThermStateMsg
                      .getBatteryLow() ? OnOffType.ON
                      : OnOffType.OFF);
            } else if (bc.getFeature() == MaxCulFeature.MODE) {
              eventPublisher.postUpdate(itemName,
                  new DecimalType(wallThermStateMsg
                      .getControlMode().toInt()));
            }
          }
        }
        /* respond to device */
 
View Full Code Here

          int heatpumpValue = rawvalues.get(item.getTagName());
          if (item.getType() == EcoTouchTags.Type.Analog) {
            // analog value encoded as a scaled integer
            BigDecimal decimal = new BigDecimal(heatpumpValue)
                .divide(new BigDecimal(10));
            handleEventType(new DecimalType(decimal), item);
          } else if (item.getType() == EcoTouchTags.Type.Word) {
            // integer
            handleEventType(new DecimalType(heatpumpValue), item);
          } else {
            // bit field
            heatpumpValue >>= item.getBitNum();
            heatpumpValue &= 1;
            handleEventType(new DecimalType(heatpumpValue), item);
          }
        }
      }

      // store authentication info
View Full Code Here

      } catch (ItemNotFoundException e) {
        logger.warn("Could not find item '{}' in registry", itemName);
      }
    }
    // just return a DecimalType as a fallback
    return new DecimalType(valueStr);
  }
View Full Code Here

          }

          org.openhab.core.types.State state = UnDefType.NULL;

          if (consumptionValue != -1) {
            state = new DecimalType(consumptionValue);
          }

          if (state != null) {
            eventPublisher.postUpdate(itemName, state);
          }
View Full Code Here

TOP

Related Classes of org.openhab.core.library.types.DecimalType

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.