docs: @Override
      public void setState(RelayState state) {
  
          // apply the new pin state
          switch(state) {
              case OPEN: {
                  if(!isOpen()) {
                      pin.setState(openState);
                  }
                  break;
              }
              case CLOSED: {
                  if(!isClosed()) {
                      pin.setState(closedState);
                  }
                  break;
              }
              default: {
                  throw new UnsupportedOperationException("Cannot set power state: " + state.toString());
              }
          }
      }