Skip to content

Commit

Permalink
[DSL] Expose ColorUtil methods to DSL rules
Browse files Browse the repository at this point in the history
Fix #3743

Signed-off-by: Laurent Garnier <[email protected]>
  • Loading branch information
lolodomo committed Aug 11, 2023
1 parent b3cc326 commit 52f354c
Show file tree
Hide file tree
Showing 3 changed files with 56 additions and 0 deletions.
1 change: 1 addition & 0 deletions bundles/org.openhab.core.model.script/bnd.bnd
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ Import-Package: \
org.openhab.core.transform,\
org.openhab.core.transform.actions,\
org.openhab.core.types,\
org.openhab.core.util,\
org.openhab.core.voice,\
org.openhab.core.voice.text,\
org.openhab.core.io.console,\
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
/**
* Copyright (c) 2010-2023 Contributors to the openHAB project
*
* See the NOTICE file(s) distributed with this work for additional
* information.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0
*
* SPDX-License-Identifier: EPL-2.0
*/
package org.openhab.core.model.script.actions;

import org.openhab.core.library.types.HSBType;
import org.openhab.core.library.types.PercentType;
import org.openhab.core.util.ColorUtil;

/**
* This class provides static methods mapping methods from package org.openhab.core.util
*
* @author Laurent Garnier - Initial contribution
*/
public class CoreUtil {

public static int[] hsbToRgb(HSBType hsb) {
return ColorUtil.hsbToRgb(hsb);
}

public static PercentType[] hsbToRgbPercent(HSBType hsb) {
return ColorUtil.hsbToRgbPercent(hsb);
}

public static int hsbTosRgb(HSBType hsb) {
return ColorUtil.hsbTosRgb(hsb);
}

public static double[] hsbToXY(HSBType hsb) {
return ColorUtil.hsbToXY(hsb);
}

public static HSBType rgbToHsb(int[] rgb) throws IllegalArgumentException {
return ColorUtil.rgbToHsb(rgb);
}

public static HSBType rgbToHsb(PercentType[] rgb) throws IllegalArgumentException {
return ColorUtil.rgbToHsb(rgb);
}

public static HSBType xyToHsb(double[] xy) throws IllegalArgumentException {
return ColorUtil.xyToHsb(xy);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
import org.openhab.core.model.script.actions.Ping;
import org.openhab.core.model.script.actions.ScriptExecution;
import org.openhab.core.model.script.actions.Transformation;
import org.openhab.core.model.script.actions.CoreUtil;
import org.openhab.core.model.script.engine.IActionServiceProvider;
import org.openhab.core.model.script.engine.IThingActionsProvider;
import org.openhab.core.model.script.engine.action.ActionService;
Expand Down Expand Up @@ -100,6 +101,7 @@ protected List<Class<?>> getStaticImportClasses() {
result.add(Transformation.class);
result.add(ScriptExecution.class);
result.add(URLEncoder.class);
result.add(CoreUtil.class);

result.add(ImperialUnits.class);
result.add(MetricPrefix.class);
Expand Down

0 comments on commit 52f354c

Please sign in to comment.