#! /bin/bash

###
# ============LICENSE_START=======================================================
# policy-management
# ================================================================================
# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# 
#      http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ============LICENSE_END=========================================================
###

function usage() {
	echo -n "Usage: $(basename $0) "
	echo -n "[(-d|--debug)] "
	echo -n "(-h|--host) <bus-host> "
	echo -n "[(-p|--port) <bus-port>] "
	echo    "(-e|--email) <email>"
}

BUS_PORT=3904

# command line options parsing
until [[ -z "$1" ]]; do
	case $1 in
		-d|--debug) 	set -x
						;;
		-h|--host) 		shift
						BUS_HOST=$1
						;;						
		-p|--port) 		shift
						BUS_PORT=$1
						;;
		-e|--email) 	shift
						EMAIL=$1
						;;						
		*)				usage
						exit 1
						;;
	esac
	shift
done

if [[ -z ${BUS_HOST} ]]; then
	echo "An UEB/DMAAP server must be provided."
	echo
	usage
	exit 1
fi

if [[ -z ${EMAIL} ]]; then
	echo "An email address must be provided."
	usage
	exit 2
fi

REQUEST_API_KEY_BODY=$(< <(cat <<EOF
{
  "email": "${EMAIL}",
  "description": "Generated by PDP-D $(hostname -f)"
}
EOF
))

unset http_proxy
curl -s -X POST --data "${REQUEST_API_KEY_BODY}" --header "Content-Type: application/json" http://${BUS_HOST}:${BUS_PORT}/v1/apiKeys/create