本文整理汇总了Java中org.openhab.core.items.Item.getClass方法的典型用法代码示例。如果您正苦于以下问题:Java Item.getClass方法的具体用法?Java Item.getClass怎么用?Java Item.getClass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.openhab.core.items.Item
的用法示例。
在下文中一共展示了Item.getClass方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig)
throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
if (bindingConfig != null) {
MegaDeviceBindingConfig config = new MegaDeviceBindingConfig();
config.itemType = item.getClass();
String[] configParts = bindingConfig.trim().split(":");
// if(item instanceof SwitchItem){
config.password = configParts.length > 0 ? configParts[0] : "NO_Pass";
config.ip = configParts.length > 1 ? configParts[1] : "NO_IP";
config.port = configParts.length > 2 ? configParts[2] : "NO_PORT";
config.pollinterval = configParts.length > 3 ? Integer.parseInt(configParts[3]) : 0;
// logger.debug("binding item:" + item +". It has " + config.itemType.getName()+ " class and " +
// config.password + " password " +config.ip+ " ip " +config.port+ "port");
// } //else if (item instanceof NumberItem) {
addBindingConfig(item, config);
} else {
logger.warn("bindingConfig is NULL (item=" + item + ") -> process bindingConfig aborted!");
}
}
示例2: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig)
throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
final String[] configParts = bindingConfig.trim().split(":");
if (configParts.length != 2) {
throw new BindingConfigParseException(
"FrontierSiliconRadio configuration must contain of two parts separated by a ':'");
}
final String deviceId = configParts[0];
final String property = configParts[1];
final Class<? extends Item> itemType = item.getClass();
final FrontierSiliconRadioBindingConfig config = new FrontierSiliconRadioBindingConfig(deviceId, property,
itemType);
addBindingConfig(item, config);
}
示例3: createOneWireDeviceProperty
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* @param pvItem
* @param pvBindingConfig
* @return a new BindingConfig, corresponding to the given <code><pvItem/code> and <code><pvBindingConfig/code>
* @throws BindingConfigParseException
*/
public static OneWireBindingConfig createOneWireDeviceProperty(Item pvItem, String pvBindingConfig) throws BindingConfigParseException {
logger.debug("createOneWireDeviceProperty: " + pvItem.getName() + " - bindingConfig:" + pvBindingConfig);
OneWireBindingConfig lvNewBindingConfig = null;
if (OneWireClearCacheControlBindingConfig.isBindingConfigToCreate(pvItem, pvBindingConfig)) {
lvNewBindingConfig = new OneWireClearCacheControlBindingConfig(pvBindingConfig);
} else if (OneWireDevicePropertySwitchMinMaxNumberWarningBindingConfig.isBindingConfigToCreate(pvItem, pvBindingConfig)) {
lvNewBindingConfig = new OneWireDevicePropertySwitchMinMaxNumberWarningBindingConfig(pvBindingConfig);
} else if (pvItem instanceof NumberItem) {
lvNewBindingConfig = new OneWireDevicePropertyNumberBindingConfig(pvBindingConfig);
} else if (pvItem instanceof ContactItem) {
lvNewBindingConfig = new OneWireDevicePropertyContactBindingConfig(pvBindingConfig);
} else if (pvItem instanceof SwitchItem) {
lvNewBindingConfig = new OneWireDevicePropertySwitchBindingConfig(pvBindingConfig);
} else if (pvItem instanceof StringItem) {
lvNewBindingConfig = new OneWireDevicePropertyStringBindingConfig(pvBindingConfig);
} else {
throw new UnsupportedOperationException("the item-type " + pvItem.getClass() + " cannot be a onewire device");
}
logger.debug("created newBindingConfig: " + lvNewBindingConfig.toString());
return lvNewBindingConfig;
}
示例4: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig) throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
EHealthBindingConfig config = new EHealthBindingConfig();
EHealthSensorPropertyName propertyName;
try {
propertyName = EHealthSensorPropertyName.getPropertyName(bindingConfig.trim());
} catch (Exception e) {
throw new BindingConfigParseException("Invalid sensor property name '" + bindingConfig + "' > please fix your *.items accordingly!");
}
config.itemType = item.getClass();
config.sensorPropertyName = propertyName;
addBindingConfig(item, config);
}
示例5: resolveDataTypeFromItemType
import org.openhab.core.items.Item; //导入方法依赖的package包/类
SimaticTypes resolveDataTypeFromItemType(Item item, String address) throws BindingConfigParseException {
Class<? extends Item> itemType = item.getClass();
if (itemType.isAssignableFrom(NumberItem.class)) {
switch (SimaticPLCAddress.create(address).dataType) {
case DWORD:
return SimaticTypes.DWORD;
case WORD:
return SimaticTypes.WORD;
default:
return SimaticTypes.BYTE;
}
} else if (itemType.isAssignableFrom(SwitchItem.class)) {
return SimaticTypes.BYTE;
} else if (itemType.isAssignableFrom(DimmerItem.class)) {
return SimaticTypes.BYTE;
} else if (itemType.isAssignableFrom(ColorItem.class)) {
logger.warn("Item %s has not specified datatype. Setted to RGB.", item.getName());
return SimaticTypes.RGB;
} else if (itemType.isAssignableFrom(StringItem.class)) {
logger.warn("Item %s has not specified datatype with length. Setted to ARRAY with length 32.",
item.getName());
return SimaticTypes.ARRAY;
} else if (itemType.isAssignableFrom(ContactItem.class)) {
return SimaticTypes.BYTE;
} else if (itemType.isAssignableFrom(RollershutterItem.class)) {
return SimaticTypes.WORD;
} else {
throw new BindingConfigParseException("Unsupported item type: " + item);
}
}
示例6: validateItemType
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* @{inheritDoc}
*/
@Override
public void validateItemType(Item item, String bindingConfig) throws BindingConfigParseException {
DaikinBindingConfig config = new DaikinBindingConfig(item.getName(), bindingConfig);
if (item.getClass() != config.getCommandType().getSupportedItemType()) {
throw new BindingConfigParseException("Item '" + item.getName()
+ "' is of type '" + item.getClass().getSimpleName()
+ "', only '" + config.getCommandType().getSupportedItemType().getSimpleName()
+ "' are allowed for command '" + config.getCommandType().toString()
+ "' - please check your *.items configuration");
}
}
示例7: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig) throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
String[] configParts = bindingConfig.trim().split(":", 2);
String command = configParts[0];
String argument = null;
if(configParts.length > 1)
argument = configParts[1];
FreeswitchBindingType type = FreeswitchBindingType.fromString(command);
if(type == null)
throw new BindingConfigParseException("Unknown item type " + configParts[0] );
FreeswitchBindingConfig config = new FreeswitchBindingConfig(item.getName(),item.getClass(), type, argument);
addBindingConfig(item, config);
Set<Item> items = contextMap.get(context);
if (items == null) {
items = new HashSet<Item>();
contextMap.put(context, items);
}
items.add(item);
}
示例8: validateItemType
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* @{inheritDoc}
*/
@Override
public void validateItemType(Item item, String bindingConfig) throws BindingConfigParseException {
if (item.getClass() == SwitchItem.class)
return;
if (item.getClass() == ContactItem.class)
return;
if (item.getClass() == NumberItem.class)
return;
throw new BindingConfigParseException("item '" + item.getName()
+ "' is of type '" + item.getClass().getSimpleName()
+ "', only Switch, Contact or Number are allowed - please check your *.items configuration");
}
示例9: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
@Override
public void processBindingConfiguration(String context, Item item,
String bindingConfig) throws BindingConfigParseException {
String bindingConfigLc = bindingConfig.toLowerCase();
super.processBindingConfiguration(context, item, bindingConfigLc);
if (bindingConfigLc != null) {
String address = getAddress(bindingConfigLc);
String transmitMethod = getTransmitMethod(bindingConfigLc);
String dimMethod = getDimMethod(bindingConfigLc);
if (address != null) {
if (transmitMethod == null) transmitMethod = "pl";
if (dimMethod == null) dimMethod = "xdim";
BindingConfig mochadX10BindingConfig = (BindingConfig) new MochadX10BindingConfig(item.getName(), item.getClass(), transmitMethod, dimMethod, address);
addBindingConfig(item, mochadX10BindingConfig);
}
else {
throw new BindingConfigParseException("No address specified, bindingConfig is invalid (item=" + item
+ ") -> processing bindingConfig aborted!");
}
} else {
throw new BindingConfigParseException("No binding config specified (item=" + item
+ ") -> processing bindingConfig aborted!");
}
}
示例10: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item,
String bindingConfig) throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
EKeyBindingConfig config = new EKeyBindingConfig();
if(bindingConfig==null)
throw new BindingConfigParseException(
"Your binding configuration is illegal!\n"
+ "Possible values are: ACTION, USERNAME, USERID, TERMINALID, TERMINALNAME, "
+ "FINGERID, KEYID, INPUTID, RELAISID, MODE\nExample: {ekey=\"ACTION\"}");
config.itemType = item.getClass();
// format the passed config parameter
String value = bindingConfig.trim().toUpperCase();
try { // try to convert the parameter to one of the predefined enum
// types
config.interestedIn = EKeyBindingConfig.InterestType.getType(value);
} catch (Exception e) { // throw exception - parameter was illegal
throw new BindingConfigParseException(
"eKey does not know the configuration value "
+ "'"
+ value
+ "' that you passed in the item binding configuration!\n"
+ "Possible values are: ACTION, USERNAME, USERID, TERMINALID, TERMINALNAME, "
+ "FINGERID, KEYID, INPUTID, RELAISID, MODE\nExample: {ekey=\"ACTION\"}");
}
addBindingConfig(item, config);
}
示例11: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig) throws BindingConfigParseException {
PulseaudioBindingConfig config = new PulseaudioBindingConfig();
String[] configParts = bindingConfig.split(":");
if (item instanceof StringItem) {
if (configParts.length != 1 && configParts.length!=3) {
throw new BindingConfigParseException(
"Pulseaudio binding configuration for StringItems must consist of one or three part [config="
+ configParts + "]");
}
config.serverId = StringUtils.trim(configParts[0]);
config.itemType = item.getClass();
addBindingConfig(item, config);
return;
}
else if (configParts.length < 2 || configParts.length>3) {
throw new BindingConfigParseException(
"Pulseaudio binding configuration must consist of two or three parts [config="
+ configParts + "]");
}
config.serverId = StringUtils.trim(configParts[0]);
config.itemName = StringUtils.trim(configParts[1]);
if (configParts.length==3) {
config.command = StringUtils.trim(configParts[2]);
}
config.itemType = item.getClass();
addBindingConfig(item, config);
}
示例12: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig)
throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
LgtvBindingConfig config = new LgtvBindingConfig();
config.itemType = item.getClass();
parseBindingConfig(bindingConfig, config);
addBindingConfig(item, config);
}
示例13: processBindingConfiguration
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public void processBindingConfiguration(String context, Item item, String bindingConfig) throws BindingConfigParseException {
super.processBindingConfiguration(context, item, bindingConfig);
PioneerAvrBindingConfig config = new PioneerAvrBindingConfig();
config.itemType = item.getClass();
parseBindingConfig(bindingConfig, config);
addBindingConfig(item, config);
}
示例14: parseBindingConfig
import org.openhab.core.items.Item; //导入方法依赖的package包/类
/**
* Delegates parsing the <code>bindingConfig</code> with respect to the
* first character (<code><</code> or <code>></code>) to the
* specialized parsing methods
*
* @param item
* @param bindingConfig
*
* @throws BindingConfigParseException
*/
protected OWServerBindingConfig parseBindingConfig(Item item, String bindingConfig) throws BindingConfigParseException {
OWServerBindingConfig config = new OWServerBindingConfig();
config.itemType = item.getClass();
Matcher matcher = BASE_CONFIG_PATTERN.matcher(bindingConfig);
if (!matcher.matches()) {
throw new BindingConfigParseException("bindingConfig '" + bindingConfig + "' doesn't contain a valid binding configuration");
}
matcher.reset();
while (matcher.find()) {
String direction = matcher.group(1);
String bindingConfigPart = matcher.group(2);
if (direction.equals("<")) {
config = parseInBindingConfig(item, bindingConfigPart, config);
}
else if (direction.equals(">")) {
// for future use
}
else {
throw new BindingConfigParseException("Unknown command given! Configuration must start with '<' or '>' ");
}
}
return config;
}
示例15: getItemType
import org.openhab.core.items.Item; //导入方法依赖的package包/类
private Class<? extends Item> getItemType(String itemName) {
try {
Item item = itemRegistry.getItem(itemName);
return item.getClass();
} catch (ItemNotFoundException e) {
return null;
}
}