#/**
#         ogr McastSendFile [ str_repo | int_ndisk int_npart ] /Relative_path_file  sessionMulticast
#@brief   Envía un fichero por multicast   ORIGEN(fichero) DESTINO(sessionmulticast)
#@param (2 parámetros)  $1 path_aboluto_fichero  $2 sesionMcast
#@param (3 parámetros)  $1 Contenedor REPO|CACHE $2 path_absoluto_fichero $3 sesionMulticast
#@param (4 parámetros)  $1 disk $2 particion $3 path_absoluto_fichero $4 sesionMulticast
#@return  
#@exception OG_ERR_FORMAT     formato incorrecto.
#@note    Requisitos: 
#@version 0.91 - Definición de FileTransfer
#@author  Antonio Doblas Viso, Universidad de Málaga
#@date    2010/05/09
#*/ ##
# Variables locales.
local ARGS SOURCE TARGET COMMAND
#ARGS usado para controlar ubicación de la sesion multicast

# Si se solicita, mostrar ayuda.
if [ "$*" == "help" ]; then
    ogr Help "$FUNCNAME [str_REPOSITORY] [int_ndisk int_npart] /Relative_path_file sesionMcast" \
           "$FUNCNAME  1 1 /aula1/winxp.img sesionMcast" \
           "$FUNCNAME  REPO /aula1/ubuntu.iso sesionMcast" \
           "$FUNCNAME  CACHE /aula1/winxp.img sesionMcast" \
           "$FUNCNAME  /opt/opengnsys/images/aula1/hd500.vmx sesionMcast"
    return
fi

ARGS="$@"
case "$1" in
    /*)     # Camino completo.          */ (Comentrio Doxygen)
        SOURCE=$(ogr GetPath "$1")
		ARG=2
		;;
    [1-9]*) # ndisco npartición.
        SOURCE=$(ogr GetPath "$1" "$2" "$3")
        ARG=4
        ;;
    *)      # Otros: repo, cache, cdrom (no se permiten caminos relativos).
        SOURCE=$(ogr GetPath "$1" "$2")
        ARG=3
        ;;
esac


# Error si no se reciben los argumentos ARG necesarios según la opcion.
[ $# -ne "$ARG" ] && ogr RaiseError $OG_ERR_FORMAT && return $?

# Comprobar fichero origen
[ -n "$SOURCE" ] || ogr RaiseError $OG_ERR_NOTFOUND "${ARGS% $*}" || return $?

#TODO echo Abriendo puerto para pasar parametros de control al cliente.
#TODO opcion netcat, netpipes, o un fichero mcast con la info final.
SESSION=${!ARG}
# llamando a la funcion con param1 session $SESSION y param2 $SOURCE
COMMAND=`ogr GenerateSintaxMcast "SENDFILE" "$SESSION" "$SOURCE"`
echo $COMMAND
eval $COMMAND
