package com.foxx.androidcast;

/*********************************************************************
 * VersionInfo.java
 * Created at: Sat 16 May 2026 13:35:48 +0200
 * Updated at: Wed 20 May 2026 15:17:13 +0200 by Anton Afanasyeu <a.afanasieff@gmail.com>
 * Commit: 5d8e82d2e60a21fff3138d2a394ee4e8b4c6dcb8
 * class VersionInfo
 * Contributors:
 *    - Anton Afanasyeu <a.afanasieff@gmail.com> (3 commits, 40 lines)
 *    - Cursor Agent (project assistant)
 * Digest: SHA256	ddac5c47ccd6ac323acf3b75c252a1482e6c0a260fcffaaad227c2e00ba42538
**********************************************************************/
/**
 * Application and protocol version strings (CI may replace via script).
 * App and proto versions are independent.
 */
public final class VersionInfo {
  /** Human-readable app release (default until CI injects). */
  public static final String APP_VERSION_STRING = "00.00.00.0000";

  /** Human-readable wire protocol / header version. */
  public static final String PROTO_VERSION_STRING = "00.01.00.0001";

  /** Short git commit at build time ({@link com.foxx.androidcast.BuildConfig#GIT_COMMIT_SHORT}). */
  public static final String GIT_COMMIT_SHORT = BuildConfig.GIT_COMMIT_SHORT;

  /** Author of the commit at build time ({@link com.foxx.androidcast.BuildConfig#GIT_COMMIT_AUTHOR}). */
  public static final String GIT_COMMIT_AUTHOR = BuildConfig.GIT_COMMIT_AUTHOR;

  /** Human-readable build timestamp with timezone ({@link BuildConfig#BUILD_TIME_DISPLAY}). */
  public static final String BUILD_TIME_DISPLAY = BuildConfig.BUILD_TIME_DISPLAY;

  /** Build instant (epoch ms) ({@link BuildConfig#BUILD_TIME_EPOCH_MS}). */
  public static final long BUILD_TIME_EPOCH_MS = BuildConfig.BUILD_TIME_EPOCH_MS;

  /** Time zone id used for {@link #BUILD_TIME_DISPLAY} ({@link BuildConfig#BUILD_TIME_ZONE_ID}). */
  public static final String BUILD_TIME_ZONE_ID = BuildConfig.BUILD_TIME_ZONE_ID;

  public static final long APP_VERSION = VersionUtils.parseToInt(APP_VERSION_STRING);
  public static final long PROTO_VERSION = VersionUtils.parseToInt(PROTO_VERSION_STRING);

  private VersionInfo() {}
}
