#!/bin/bash
# SPDX-License-Identifier: MIT
#
# dummy - sample resource script implementation
#
# Copyright IBM Corp. 2023
#
# This script collects the state for dummy resources. It is intended for
# demonstration and testing purpose only.
#
# Usage: dummy [<datafile>]
#
# If a YAML datafile was specified, determine characteristics of all mentioned
# resources. Otherwise list all available resources.
#

DATAFILE="$1"

function get_state() {
	local IFS=$'\n' count=0 id total=0 available=0

	while read -r line ; do
		[[ ! "$line" =~ ^dummy' ' ]] && continue
		(( total++ ))

		# Filter out dummy IDs containing string "does_not_exit" to
		# enable related testing.
		[[ "$line" =~ "does_not_exist" ]] && continue

		(( available++ ))
		echo "$line"
	done
	echo "dummy_count_available: $available"
	echo "dummy_count_total: $count"
}

function list_all() {
	# No default dummy devices
	:
}

if [ -n "$DATAFILE" ] ; then
	# Get state for resources in specified datafile
	get_state <"$DATAFILE"
else
	# Get list of all available resources
	list_all
fi

exit 0
