本文整理汇总了Java中org.openhab.core.types.State.toString方法的典型用法代码示例。如果您正苦于以下问题:Java State.toString方法的具体用法?Java State.toString怎么用?Java State.toString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.openhab.core.types.State
的用法示例。
在下文中一共展示了State.toString方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: stateToObject
import org.openhab.core.types.State; //导入方法依赖的package包/类
/**
* Converts {@link State} to objects fitting into influxdb values.
*
* @param state to be converted
* @return integer or double value for DecimalType,
* 0 or 1 for OnOffType and OpenClosedType,
* integer for DateTimeType,
* String for all others
*/
private Object stateToObject(State state) {
Object value;
if (state instanceof DecimalType) {
value = convertBigDecimalToNum(((DecimalType) state).toBigDecimal());
} else if (state instanceof OnOffType) {
value = (OnOffType) state == OnOffType.ON ? 1 : 0;
} else if (state instanceof OpenClosedType) {
value = (OpenClosedType) state == OpenClosedType.OPEN ? 1 : 0;
} else if (state instanceof HSBType) {
value = ((HSBType) state).toString();
} else if (state instanceof DateTimeType) {
value = ((DateTimeType) state).getCalendar().getTime().getTime();
} else {
value = state.toString();
}
return value;
}
示例2: stateToString
import org.openhab.core.types.State; //导入方法依赖的package包/类
/**
* Converts {@link State} to a String suitable for influxdb queries.
*
* @param state to be converted
* @return {@link String} equivalent of the {@link State}
*/
private String stateToString(State state) {
String value;
if (state instanceof DecimalType) {
value = ((DecimalType) state).toBigDecimal().toString();
} else if (state instanceof OnOffType) {
value = ((OnOffType) state) == OnOffType.ON ? DIGITAL_VALUE_ON : DIGITAL_VALUE_OFF;
} else if (state instanceof OpenClosedType) {
value = ((OpenClosedType) state) == OpenClosedType.OPEN ? DIGITAL_VALUE_ON : DIGITAL_VALUE_OFF;
} else if (state instanceof HSBType) {
value = ((HSBType) state).toString();
} else if (state instanceof DateTimeType) {
value = String.valueOf(((DateTimeType) state).getCalendar().getTime().getTime());
} else {
value = state.toString();
}
return value;
}
示例3: convertValue
import org.openhab.core.types.State; //导入方法依赖的package包/类
private Object convertValue(State state) {
Object value;
if (state instanceof PercentType) {
value = ((PercentType) state).toBigDecimal().doubleValue();
} else if (state instanceof DateTimeType) {
value = ((DateTimeType) state).getCalendar().getTime();
} else if (state instanceof DecimalType) {
value = ((DecimalType) state).toBigDecimal().doubleValue();
} else {
value = state.toString();
}
return value;
}
示例4: toString
import org.openhab.core.types.State; //导入方法依赖的package包/类
/**
* Converts the given State to a string that can be persisted in db
* @param state the state of the item to be persisted
* @return state converted as string
* @throws Exception
*/
static public String toString(State state) throws Exception {
if(state instanceof DateTimeType) {
return String.valueOf(((DateTimeType)state).getCalendar().getTime().getTime());
}
if(state instanceof DecimalType) {
return String.valueOf(((DecimalType)state).doubleValue());
}
return state.toString();
}
示例5: renderWidget
import org.openhab.core.types.State; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
public EList<Widget> renderWidget(Widget w, StringBuilder sb) throws RenderException {
Setpoint sp = (Setpoint) w;
State state = itemUIRegistry.getState(w);
String newLowerState = state.toString();
String newHigherState = state.toString();
// set defaults for min, max and step
BigDecimal step = sp.getStep();
if(step==null) {
step = BigDecimal.ONE;
}
BigDecimal minValue = sp.getMinValue();
if(minValue==null) {
minValue = BigDecimal.ZERO;
}
BigDecimal maxValue = sp.getMaxValue();
if(maxValue==null) {
maxValue = BigDecimal.valueOf(100);
}
// if the current state is a valid value, we calculate the up and down step values
if(state instanceof DecimalType) {
DecimalType actState = (DecimalType) state;
BigDecimal newLower = actState.toBigDecimal().subtract(step);
BigDecimal newHigher = actState.toBigDecimal().add(step);
if(newLower.compareTo(minValue) < 0) {
newLower = minValue;
}
if(newHigher.compareTo(maxValue) > 0) {
newHigher = maxValue;
}
newLowerState = newLower.toString();
newHigherState = newHigher.toString();
}
String snippetName = "setpoint";
String snippet = getSnippet(snippetName);
snippet = StringUtils.replace(snippet, "%id%", itemUIRegistry.getWidgetId(w));
snippet = StringUtils.replace(snippet, "%icon%", escapeURLPath(itemUIRegistry.getIcon(w)));
snippet = StringUtils.replace(snippet, "%item%", w.getItem());
snippet = StringUtils.replace(snippet, "%state%", state.toString());
snippet = StringUtils.replace(snippet, "%newlowerstate%", newLowerState);
snippet = StringUtils.replace(snippet, "%newhigherstate%", newHigherState);
snippet = StringUtils.replace(snippet, "%label%", getLabel(w));
snippet = StringUtils.replace(snippet, "%servletname%", WebAppServlet.SERVLET_NAME);
snippet = StringUtils.replace(snippet, "%minValue%", minValue.toString());
snippet = StringUtils.replace(snippet, "%maxValue%", maxValue.toString());
snippet = StringUtils.replace(snippet, "%step%", step.toString());
// Process the color tags
snippet = processColor(w, snippet);
sb.append(snippet);
return null;
}