#!/usr/bin/env bash
# Small wrapper bootstrap that downloads Gradle when it is not already cached.
set -euo pipefail
GRADLE_VERSION="8.9"
GRADLE_USER_HOME="${GRADLE_USER_HOME:-$HOME/.gradle}"
INSTALL_ROOT="$GRADLE_USER_HOME/manual-wrapper/gradle-$GRADLE_VERSION"
GRADLE_BIN="$INSTALL_ROOT/gradle-$GRADLE_VERSION/bin/gradle"
if [[ ! -x "$GRADLE_BIN" ]]; then
  mkdir -p "$INSTALL_ROOT"
  ARCHIVE="$INSTALL_ROOT/gradle-$GRADLE_VERSION-bin.zip"
  URL="https://services.gradle.org/distributions/gradle-$GRADLE_VERSION-bin.zip"
  echo "Gradle $GRADLE_VERSION 尚未安装，正在下载……"
  if command -v curl >/dev/null 2>&1; then
    curl --fail --location --retry 3 "$URL" --output "$ARCHIVE"
  elif command -v wget >/dev/null 2>&1; then
    wget -O "$ARCHIVE" "$URL"
  else
    echo "需要 curl 或 wget 才能下载 Gradle。" >&2
    exit 1
  fi
  unzip -q -o "$ARCHIVE" -d "$INSTALL_ROOT"
  rm -f "$ARCHIVE"
fi
exec "$GRADLE_BIN" "$@"
