2 * Copyright (c) 2010-2021 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.velux.internal.action;
15 import org.eclipse.jdt.annotation.NonNullByDefault;
18 * The {@link IVeluxActions} defines rule action interface for rebooting the bridge
20 * @author Andrew Fiddian-Green - Initial contribution
23 public interface IVeluxActions {
26 * Action to send a reboot command to a Velux Bridge
28 * @return true if the command was sent
29 * @throws IllegalStateException if something is wrong
31 Boolean rebootBridge() throws IllegalStateException;
34 * Action to send a relative move command to a Velux actuator
36 * @param nodeId the node Id in the bridge
37 * @param relativePercent the target position relative to its current position (-100% <= relativePercent <= +100%)
38 * @return true if the command was sent
39 * @throws NumberFormatException if either of the arguments is not an integer, or out of range
40 * @throws IllegalStateException if anything else is wrong
42 Boolean moveRelative(String nodeId, String relativePercent) throws NumberFormatException, IllegalStateException;