# shellcheck shell=dash

# OSSInsight API communication layer
# Base URL: https://api.ossinsight.io/v1
# No authentication required for beta public API

___x_cmd_ossinsight_api(){
    local op="$1"; [ -n "$op" ] || return 1

    local _curl_endpoint="${___X_CMD_OSSINSIGHT_ENDPOINT:-$___X_CMD_OSSINSIGHT_API_ENDPOINT}"

    local _curl_header="-H \"Accept:application/json\""

    case "${op}" in
        get)
            local _curl_url="${_curl_endpoint}$2" ; shift 2
            ___x_cmd_ossinsight_api_get "$@"
            ;;
        *)
            local _curl_url="${_curl_endpoint}$op"; shift 1
            ___x_cmd_ossinsight_api_get "$@"
            ;;
    esac
}

___x_cmd_ossinsight_api_get(){
    ossinsight:debug 'x curl -sS -L -X GET '"$_curl_header"' "'"$_curl_url"'"'
    eval x curl -sS -L -X GET "$_curl_header" "\"$_curl_url\""
}