@Override public String getCategory(String itemName) { for (ItemUIProvider provider : itemUIProviders) { String currentCategory = provider.getCategory(itemName); if (currentCategory != null) { return currentCategory; } } // use the category, if defined String category = getItemCategory(itemName); if (category != null) { return category.toLowerCase(); } // do some reasonable default // try to get the item type from the item name Class<? extends Item> itemType = getItemType(itemName); if (itemType == null) { return null; } // we handle items here that have no specific widget, // e.g. the default widget of a rollerblind is "Switch". // We want to provide a dedicated default category for it // like "rollerblind". if (itemType.equals(NumberItem.class) || itemType.equals(ContactItem.class) || itemType.equals(RollershutterItem.class)) { return itemType.getSimpleName().replace("Item", "").toLowerCase(); } return null; }
@Override public String getCategory(String itemName) { for (ItemUIProvider provider : itemUIProviders) { String currentCategory = provider.getCategory(itemName); if (currentCategory != null) { return currentCategory; } } // use the category, if defined String category = getItemCategory(itemName); if (category != null) { return category.toLowerCase(); } // do some reasonable default // try to get the item type from the item name Class<? extends Item> itemType = getItemType(itemName); if (itemType == null) { return null; } // we handle items here that have no specific widget, // e.g. the default widget of a rollerblind is "Switch". // We want to provide a dedicated default category for it // like "rollerblind". if (itemType.equals(NumberItem.class) || itemType.equals(ContactItem.class) || itemType.equals(RollershutterItem.class)) { return itemType.getSimpleName().replace("Item", "").toLowerCase(); } return null; }