vim: Update to latest patch level
[termux-packages] / packages / termux-api / termux-location
CommitLineData
cc1ae02e 1#!/bin/sh
59f0d218
FF
2set -e -u
3
b2d955fc 4SCRIPTNAME=termux-location
59f0d218 5show_usage () {
bea93fbd
FF
6 echo "usage: $SCRIPTNAME [-p provider] [-r request]"
7 echo "Get the device location."
bea93fbd
FF
8 echo " -p provider location provider [gps/network/passive] (default: gps)"
9 echo " -r request kind of request to make [once/last/updates] (default: once)"
bea93fbd 10 exit 0
59f0d218
FF
11}
12
b2d955fc
FF
13validate_provider () {
14 PROVIDER=$1
15 case "$PROVIDER" in
16 gps) ;;
17 network) ;;
18 passive) ;;
19 *) echo "$SCRIPTNAME: Unsupported provider: '$PROVIDER'"; exit 1;;
20 esac
21}
22
23validate_request () {
24 REQUEST=$1
25 case "$REQUEST" in
26 once) ;;
27 last) ;;
28 updates) ;;
29 *) echo "$SCRIPTNAME: Unsupported request: '$REQUEST'"; exit 1;;
30 esac
31}
32
bea93fbd
FF
33PARAMS=""
34
35while getopts :hr:p: option
36do
37 case "$option" in
38 h) show_usage;;
b2d955fc
FF
39 r) validate_request $OPTARG; PARAMS="$PARAMS --es request $OPTARG";;
40 p) validate_provider $OPTARG; PARAMS="$PARAMS --es provider $OPTARG";;
bea93fbd
FF
41 ?) echo "$SCRIPTNAME: illegal option -$OPTARG"; exit 1;
42 esac
59f0d218 43done
bea93fbd 44shift $(($OPTIND-1))
59f0d218 45
bea93fbd 46if [ $# != 0 ]; then echo "$SCRIPTNAME: too many arguments"; exit 1; fi
59f0d218 47
cc1ae02e 48@TERMUX_API@ Location $PARAMS