#!/bin/bash

DBUS_PROPERTIES_INTF_NAME="org.freedesktop.DBus.Properties"

set_host_state()
{
    BUS_NAME="xyz.openbmc_project.State.Host$1"
    OBJ_PATH="/xyz/openbmc_project/state/host$1"
    INTF_NAME="xyz.openbmc_project.State.Host"
    PROPERTY_NAME="CurrentHostState"
    PROPERTY_VAL="xyz.openbmc_project.State.Host.HostState.$2"

    busctl call "$BUS_NAME" "$OBJ_PATH" "$DBUS_PROPERTIES_INTF_NAME" Set ssv "$INTF_NAME" "$PROPERTY_NAME" s "$PROPERTY_VAL"
}

set_chassis_state()
{
    BUS_NAME="xyz.openbmc_project.State.Chassis$1"
    OBJ_PATH="/xyz/openbmc_project/state/chassis$1"
    INTF_NAME="xyz.openbmc_project.State.Chassis"
    PROPERTY_NAME="CurrentPowerState"
    PROPERTY_VAL="xyz.openbmc_project.State.Chassis.PowerState.$2"

    busctl call "$BUS_NAME" "$OBJ_PATH" "$DBUS_PROPERTIES_INTF_NAME" Set ssv "$INTF_NAME" "$PROPERTY_NAME" s "$PROPERTY_VAL"
}

INSTENCE_ID="$1"
HOST_PWR_STATUS=$(/usr/sbin/power-ctrl sled"$1" status)

CHASSIS_STATE_VAL="Off"
HOST_STATE_VAL="Off"

if [ "$HOST_PWR_STATUS" != "AC Off" ]; then
    CHASSIS_STATE_VAL="On"
    if [ "$HOST_PWR_STATUS" != "Off" ]; then
        HOST_STATE_VAL="Running"
    fi
fi

set_chassis_state "$INSTENCE_ID" "$CHASSIS_STATE_VAL"
set_host_state "$INSTENCE_ID" "$HOST_STATE_VAL"