Class DimmerItem

  • All Implemented Interfaces:
    Identifiable<String>, ActiveItem, Item
    Direct Known Subclasses:
    ColorItem

    @NonNullByDefault
    public class DimmerItem
    extends SwitchItem
    A DimmerItem can be used as a switch (ON/OFF), but it also accepts percent values to reflect the dimmed state.
    Author:
    Kai Kreuzer - Initial contribution, Markus Rathgeb - Support more types for getStateAs
    • Constructor Detail

      • DimmerItem

        public DimmerItem​(String name)
    • Method Detail

      • getAcceptedDataTypes

        public List<Class<? extends State>> getAcceptedDataTypes()
        Description copied from interface: Item

        This method provides a list of all data types that can be used to update the item state

        Imagine e.g. a dimmer device: It's status could be 0%, 10%, 50%, 100%, but also OFF or ON and maybe UNDEFINED. So the accepted data types would be in this case PercentType, OnOffType and UnDefType

        The order of data types denotes the order of preference. So in case a state needs to be converted in order to be accepted, it will be attempted to convert it to a type from top to bottom. Therefore the type with the least information loss should be on top of the list - in the example above the PercentType carries more information than the OnOffType, hence it is listed first.

        Specified by:
        getAcceptedDataTypes in interface Item
        Overrides:
        getAcceptedDataTypes in class SwitchItem
        Returns:
        a list of data types that can be used to update the item state
      • getAcceptedCommandTypes

        public List<Class<? extends Command>> getAcceptedCommandTypes()
        Description copied from interface: Item

        This method provides a list of all command types that can be used for this item

        Imagine e.g. a dimmer device: You could ask it to dim to 0%, 10%, 50%, 100%, but also to turn OFF or ON. So the accepted command types would be in this case PercentType, OnOffType

        Specified by:
        getAcceptedCommandTypes in interface Item
        Overrides:
        getAcceptedCommandTypes in class SwitchItem
        Returns:
        a list of all command types that can be used for this item
      • setState

        public void setState​(State state)
        Description copied from class: GenericItem
        Set a new state. Subclasses may override this method in order to do necessary conversions upfront. Afterwards, GenericItem.applyState(State) should be called by classes overriding this method.
        Overrides:
        setState in class SwitchItem
        Parameters:
        state - new state of this item