#*******************************************************************************
# University of Illinois/NCSA
# Open Source License
#
# Copyright (c) 2010 , NCSA.  All rights reserved.
#
# Developed by:
# Cyberenvironments and Technologies (CET)
# http://cet.ncsa.illinois.edu/
#
# National Center for Supercomputing Applications (NCSA)
# http://www.ncsa.illinois.edu/
#
# Permission is hereby granted, free of charge, to any person obtaining
# a copy of this software and associated documentation files (the
# "Software"), to deal with the Software without restriction, including
# without limitation the rights to use, copy, modify, merge, publish,
# distribute, sublicense, and/or sell copies of the Software, and to
# permit persons to whom the Software is furnished to do so, subject to
# the following conditions:
#
# - Redistributions of source code must retain the above copyright
#   notice, this list of conditions and the following disclaimers.
# - Redistributions in binary form must reproduce the above copyright
#   notice, this list of conditions and the following disclaimers in the
#   documentation and/or other materials provided with the distribution.
# - Neither the names of CET, University of Illinois/NCSA, nor the names
#   of its contributors may be used to endorse or promote products
#   derived from this Software without specific prior written permission.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
# IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR
# ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
# CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE.
#*******************************************************************************
#!/bin/sh
LOCAL_DIRECTORY=$1
PREFIX=$2
# PREFIX is for instance, "http://foo.bar:8080/mmdb"
NS="${PREFIX}/api"

upload_image() {
    filename=`basename $1`
    curl -k -s -X POST "${NS}/image" -F "file=@$1;filename=$filename"
}

upload_directory() {
    COLLECTION_DATA="<ul>";
    for image in $1/*; do
	echo -n uploading $image ... 1>&2
	IMAGE_URL=`upload_image $image`
	if [ $IMAGE_URL ]; then
	    echo " $IMAGE_URL" 1>&2
	else
	    echo " failed" 1>&2
	    exit 1
	fi
	COLLECTION_DATA="${COLLECTION_DATA}<li>${IMAGE_URL}</li>"
    done
    COLLECTION_DATA="${COLLECTION_DATA}</ul>"
    
    echo -n creating collection ... 1>&2
    COLLECTION=`echo $COLLECTION_DATA | curl -s -X POST "${NS}/collection" --data-binary @-`
    echo " $COLLECTION" 1>&2
    echo $COLLECTION
}

upload_directory $LOCAL_DIRECTORY
