#!/bin/bash

if [ $# == 0 ]
then
	echo "invalid argument"
	exit -1
fi

# 第二个及之后为数组元素（可能为空）
elements=("${@:2}")
# 格式化数组元素为 "elem1","elem2" 或空字符串
if [ ${#elements[@]} -gt 0 ]; then
    formatted_elements=$(printf '%s,' "${elements[@]}")
    # 去末尾逗号
    formatted_elements="${formatted_elements%,}"
else
    # 空数组时不填充内容
    formatted_elements=""
fi

if [ -e $1 ]; then
	echo "load $1"
        dbus-send --session --print-reply --type=method_call --dest=org.ukui.serviceManager /org/ukui/serviceManager org.ukui.serviceManager.registerServiceByPlugin string:''$1'' "array:string:$formatted_elements"
else
	echo "file doesn't exist"
	exit -2
fi
