diff --git a/bin/createHubTarball.sh b/bin/createHubTarball.sh index 0e9a6e055..76121857d 100755 --- a/bin/createHubTarball.sh +++ b/bin/createHubTarball.sh @@ -168,7 +168,7 @@ mkdir -p $etc_tmpdir/apache # Copy the modules and tools #------------------------------------------------------------------------------- #cp -pPR $modules_dir/* $modules_tmpdir -for it in alib getid3 storageServer storageAdmin archiveServer; do +for it in alib getid3 storageServer storageAdmin; do cp -pPR $modules_dir/$it $modules_tmpdir done for it in pear; do diff --git a/bin/hubSetup.sh b/bin/hubSetup.sh index c448a3abe..714d3f770 100755 --- a/bin/hubSetup.sh +++ b/bin/hubSetup.sh @@ -182,7 +182,7 @@ fi www_port=80 -echo "Installing Campcaster network hub (archiveServer)."; +echo "Installing Campcaster network hub."; echo ""; echo "Using the following installation parameters:"; echo ""; @@ -386,15 +386,6 @@ echo "Configuring modules ..."; cd $tools_dir/pear && ./configure --prefix=$installdir cd $modules_dir/alib && ./configure --prefix=$installdir -cd $modules_dir/archiveServer && \ - ./configure --prefix=$installdir \ - --with-hostname=$hostname \ - --with-www-port=$www_port \ - --with-database-server=$dbserver \ - --with-database=$database \ - --with-database-user=$dbuser \ - --with-database-password=$dbpassword \ - --with-url-prefix=$url_prefix cd $modules_dir/getid3 && ./configure --prefix=$installdir #cd $modules_dir/htmlUI && ./configure --prefix=$installdir \ # --with-apache-group=$apache_group \ @@ -429,7 +420,6 @@ make -C $modules_dir/alib install make -C $modules_dir/getid3 install make -C $modules_dir/storageServer install make -C $modules_dir/storageAdmin install -make -C $modules_dir/archiveServer install mkdir -p $install_var_ls/storageServer/var/tests for it in ex1.mp3 ex2.wav; do @@ -453,25 +443,15 @@ ln -vs $install_var_ls $webentry #------------------------------------------------------------------------------- echo "Setting up directory permissions..." -chgrp $apache_group $install_var_ls/archiveServer/var/stor -chgrp $apache_group $install_var_ls/archiveServer/var/access -chgrp $apache_group $install_var_ls/archiveServer/var/trans -chgrp $apache_group $install_var_ls/archiveServer/var/stor/buffer +chgrp $apache_group $install_var_ls/storageServer/var/stor +chgrp $apache_group $install_var_ls/storageServer/var/access +chgrp $apache_group $install_var_ls/storageServer/var/trans +chgrp $apache_group $install_var_ls/storageServer/var/stor/buffer -chmod g+sw $install_var_ls/archiveServer/var/stor -chmod g+sw $install_var_ls/archiveServer/var/access -chmod g+sw $install_var_ls/archiveServer/var/trans -chmod g+sw $install_var_ls/archiveServer/var/stor/buffer - -#chgrp $apache_group $install_var_ls/storageServer/var/stor -#chgrp $apache_group $install_var_ls/storageServer/var/access -#chgrp $apache_group $install_var_ls/storageServer/var/trans -#chgrp $apache_group $install_var_ls/storageServer/var/stor/buffer - -#chmod g+sw $install_var_ls/storageServer/var/stor -#chmod g+sw $install_var_ls/storageServer/var/access -#chmod g+sw $install_var_ls/storageServer/var/trans -#chmod g+sw $install_var_ls/storageServer/var/stor/buffer +chmod g+sw $install_var_ls/storageServer/var/stor +chmod g+sw $install_var_ls/storageServer/var/access +chmod g+sw $install_var_ls/storageServer/var/trans +chmod g+sw $install_var_ls/storageServer/var/stor/buffer #chgrp $apache_group $install_var_ls/htmlUI/var/templates_c #chgrp $apache_group $install_var_ls/htmlUI/var/html/img @@ -486,7 +466,7 @@ chmod g+sw $install_var_ls/archiveServer/var/stor/buffer echo "Initializing database..."; # create PHP-related database tables -cd $install_var_ls/archiveServer/var/install +cd $install_var_ls/storageServer/var/install php -q install.php || exit 1; cd - diff --git a/bin/postInstallStation.sh b/bin/postInstallStation.sh index 9b7c36297..0539ec713 100755 --- a/bin/postInstallStation.sh +++ b/bin/postInstallStation.sh @@ -293,16 +293,6 @@ fi #------------------------------------------------------------------------------- echo "Setting up directory permissions..." -chgrp $apache_group $install_var_ls/archiveServer/var/stor -chgrp $apache_group $install_var_ls/archiveServer/var/access -chgrp $apache_group $install_var_ls/archiveServer/var/trans -chgrp $apache_group $install_var_ls/archiveServer/var/stor/buffer - -chmod g+sw $install_var_ls/archiveServer/var/stor -chmod g+sw $install_var_ls/archiveServer/var/access -chmod g+sw $install_var_ls/archiveServer/var/trans -chmod g+sw $install_var_ls/archiveServer/var/stor/buffer - if [ "$storage_is_local" = "yes" ]; then chgrp $apache_group $install_var_ls/storageServer/var/stor chgrp $apache_group $install_var_ls/storageServer/var/access @@ -396,8 +386,6 @@ if [ "$storage_is_local" = "yes" ]; then cd - fi -# create PHP-related database tables -cd $install_var_ls/archiveServer/var/install # workaround for ticket #2059; restore to "exit 1" after the ticket is closed php -q install.php || exit 1; #php -q install.php || true diff --git a/bin/postUninstall.sh b/bin/postUninstall.sh index 9840e613f..0a2f60a4b 100755 --- a/bin/postUninstall.sh +++ b/bin/postUninstall.sh @@ -217,10 +217,6 @@ if [ "$storage_is_local" = "yes" ]; then rm -rf $installdir/var/storageServer/var/access/* rm -rf $installdir/var/storageServer/var/trans/* fi -rm -rf $installdir/var/archiveServer/var/stor/* -rm -rf $installdir/var/archiveServer/var/access/* -rm -rf $installdir/var/archiveServer/var/trans/* - #------------------------------------------------------------------------------- # Remove the ODBC data source and driver diff --git a/bin/user_setup.sh b/bin/user_setup.sh index 2cb5e7da8..9db992565 100755 --- a/bin/user_setup.sh +++ b/bin/user_setup.sh @@ -200,7 +200,6 @@ replace_sed_string="s/ls_install_dir/$installdir_s/; \ s/ls_alib_xmlRpcPrefix/$ls_alib_xmlRpcPrefix_s/; \ s/ls_php_host/$ls_php_host/; \ s/ls_php_port/$ls_php_port/; \ - s/ls_archiveUrlPath/\/$ls_php_urlPrefix_s\/archiveServer\/var/; \ s/ls_scheduler_urlPrefix/$ls_scheduler_urlPrefix_s/; \ s/ls_scheduler_xmlRpcPrefix/$ls_scheduler_xmlRpcPrefix_s/; \ s/ls_scheduler_host/$ls_scheduler_host/; \ @@ -252,10 +251,6 @@ cat $modules_dir/storageServer/var/conf_only.php.template \ | sed -e "$replace_sed_string" \ > $configdir/storageServer.conf.php -cat $modules_dir/archiveServer/var/conf_only.php.template \ - | sed -e "$replace_sed_string" \ - > $configdir/archiveServer.conf.php - cat $modules_dir/authentication/etc/webAuthentication.xml.template \ | sed -e "$replace_sed_string" \ > $configdir/webAuthentication.xml @@ -319,7 +314,6 @@ ln -s $modules_dir $htmldir/campcaster echo "Setting up storageServer..." make -C $modules_dir/storageServer storage || exit 1 -make -C $modules_dir/archiveServer storage || exit 1 #------------------------------------------------------------------------------- @@ -343,16 +337,6 @@ php $modules_dir/storageServer/var/install/campcaster-user.php --addupdate sched #------------------------------------------------------------------------------- echo "Setting up directory permissions..." -chgrp $apache_group $modules_dir/archiveServer/var/stor -chgrp $apache_group $modules_dir/archiveServer/var/access -chgrp $apache_group $modules_dir/archiveServer/var/trans -chgrp $apache_group $modules_dir/archiveServer/var/stor/buffer - -chmod g+sw $modules_dir/archiveServer/var/stor -chmod g+sw $modules_dir/archiveServer/var/access -chmod g+sw $modules_dir/archiveServer/var/trans -chmod g+sw $modules_dir/archiveServer/var/stor/buffer - chgrp $apache_group $modules_dir/storageServer/var/stor chgrp $apache_group $modules_dir/storageServer/var/access chgrp $apache_group $modules_dir/storageServer/var/trans diff --git a/etc/Makefile.in b/etc/Makefile.in index 6a066b00a..66f60d6a7 100644 --- a/etc/Makefile.in +++ b/etc/Makefile.in @@ -115,7 +115,6 @@ EVENT_SCHEDULER_DIR = ${MODULES_DIR}/eventScheduler SCHEDULER_CLIENT_DIR = ${MODULES_DIR}/schedulerClient WIDGETS_DIR = ${MODULES_DIR}/widgets ALIB_DIR = ${MODULES_DIR}/alib -ARCHIVE_SERVER_DIR = ${MODULES_DIR}/archiveServer GETID3_DIR = ${MODULES_DIR}/getid3 HTML_UI_DIR = ${MODULES_DIR}/htmlUI STORAGE_ADMIN_DIR = ${MODULES_DIR}/storageAdmin @@ -222,15 +221,6 @@ modules_setup: ${TMP_DIR}/modules_setup.stamp ${TMP_DIR}/modules_setup.stamp: cd ${ALIB_DIR} && ./configure --prefix=${prefix} \ PACKAGE_VERSION=${PACKAGE_VERSION} - cd ${ARCHIVE_SERVER_DIR} && \ - ./configure --prefix=${prefix} \ - --with-hostname=${HOSTNAME} \ - --with-www-port=${WWW_PORT} \ - --with-database-server=${DB_SERVER} \ - --with-database=${DATABASE} \ - --with-database-user=${DB_USER} \ - --with-database-password=${DB_PASSWORD} \ - PACKAGE_VERSION=${PACKAGE_VERSION} cd ${GETID3_DIR} && ./configure --prefix=${prefix} \ PACKAGE_VERSION=${PACKAGE_VERSION} cd ${HTML_UI_DIR} && ./configure --prefix=${prefix} \ @@ -341,7 +331,6 @@ depclean: ${MAKE} -C ${WIDGETS_DIR} depclean ${MAKE} -C ${SCHEDULER_DIR} depclean ${MAKE} -C ${GLIVESUPPORT_DIR} depclean - -${MAKE} -C ${ARCHIVE_SERVER_DIR} depclean -${MAKE} -C ${STORAGE_SERVER_DIR} depclean compile: ${TMP_DIR}/compile.stamp @@ -369,7 +358,6 @@ check: # -${MAKE} -C ${WIDGETS_DIR} check # no tests defined # -${MAKE} -C ${SCHEDULER_DIR} check # has database issues # -${MAKE} -C ${GLIVESUPPORT_DIR} check # has database issues -# -${MAKE} -C ${ARCHIVE_SERVER_DIR} check # no tests defined # -${MAKE} -C ${STORAGE_SERVER_DIR} check # has database issues @@ -417,7 +405,6 @@ setup_install_dirs: install_modules: ${MAKE} -C ${ALIB_DIR} install - ${MAKE} -C ${ARCHIVE_SERVER_DIR} install ${MAKE} -C ${GETID3_DIR} install ${MAKE} -C ${HTML_UI_DIR} install ${MAKE} -C ${STORAGE_ADMIN_DIR} install diff --git a/etc/configure.ac b/etc/configure.ac index 3dc35f246..ce17f4fd8 100644 --- a/etc/configure.ac +++ b/etc/configure.ac @@ -282,10 +282,6 @@ dnl set up the alib module AC_CONFIG_COMMANDS([../src/modules/alib/tmp/configure], [../src/modules/alib/bin/autogen.sh]) -dnl set up the archive server module -AC_CONFIG_COMMANDS([../src/modules/archiveServer/tmp/configure], - [../src/modules/archiveServer/bin/autogen.sh]) - dnl set up the getid3 module AC_CONFIG_COMMANDS([../src/modules/getid3/tmp/configure], [../src/modules/getid3/bin/autogen.sh]) diff --git a/etc/doxygen.config b/etc/doxygen.config index 782f4a4ad..494e4f8a7 100644 --- a/etc/doxygen.config +++ b/etc/doxygen.config @@ -433,7 +433,6 @@ INPUT = src/modules/core/include src/modules/core/src \ # src/modules/alib/var \ # src/modules/alib/var/xmlrpc \ # src/modules/getid3/var \ -# src/modules/archiveServer/var \ # src/modules/storageServer/var \ # src/modules/storageServer/var/xmlrpc \ # src/modules/storageAdmin/var diff --git a/etc/xmlrpc-doxygen.config b/etc/xmlrpc-doxygen.config index e9b861044..23ea50327 100644 --- a/etc/xmlrpc-doxygen.config +++ b/etc/xmlrpc-doxygen.config @@ -415,7 +415,6 @@ WARN_LOGFILE = # with spaces. INPUT = src/products/scheduler/src \ - src/modules/archiveServer/var/xmlrpc/XR_Archive.php \ src/modules/storageServer/var/xmlrpc/XR_LocStor.php # If the value of the INPUT tag contains directories, you can use the diff --git a/src/modules/archiveServer/.htaccess b/src/modules/archiveServer/.htaccess deleted file mode 100644 index ba3404cb8..000000000 --- a/src/modules/archiveServer/.htaccess +++ /dev/null @@ -1,12 +0,0 @@ -DirectoryIndex index.php -Options +FollowSymLinks -Indexes - - - - AddType application/x-httpd-php .php - - php_flag magic_quotes_gpc On - php_flag register_globals Off - - - diff --git a/src/modules/archiveServer/bin/autogen.sh b/src/modules/archiveServer/bin/autogen.sh deleted file mode 100755 index 8ef36da76..000000000 --- a/src/modules/archiveServer/bin/autogen.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -#------------------------------------------------------------------------------- -# Copyright (c) 2010 Sourcefabric O.P.S. -# -# This file is part of the Campcaster project. -# http://campcaster.sourcefabric.org/ -# -# Campcaster is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# Campcaster is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Campcaster; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -#------------------------------------------------------------------------------- - -#------------------------------------------------------------------------------- -# Run this to set up the build system: configure, makefiles, etc. -# (based on the version in enlightenment's cvs) -#------------------------------------------------------------------------------- - -package="ArchiveServer" - -# assume we're in $basedir/bin -reldir=`dirname $0`/.. -basedir=`cd $reldir; pwd;` -test -z "$basedir" && basedir=. - -bindir=$basedir/bin -etcdir=$basedir/etc -tmpdir=$basedir/tmp - -cd "$tmpdir" -DIE=0 - -(autoheader --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have autoconf installed to compile $package." - echo "Download the appropriate package for your distribution," - echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/" - DIE=1 -} - -(autoconf --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have autoconf installed to compile $package." - echo "Download the appropriate package for your distribution," - echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/" - DIE=1 -} - -if test "$DIE" -eq 1; then - exit 1 -fi - -if test -z "$*"; then - echo "I am going to run ./configure with no arguments - if you wish " - echo "to pass any to it, please specify them on the $0 command line." -fi - -echo "Generating configuration files for $package, please wait...." - -configure_ac=${etcdir}/configure.ac -configure=${tmpdir}/configure -aclocal_m4=${tmpdir}/aclocal.m4 - -# copy over configure.ac and acinlclude.m4 from etc to tmp, -# as aclocal >= 1.8 is sooo unbelivably stupid that it will simply try to -# look for configure.ac in the current directory, and include acinclude.m4 -# in aclocal.m4 it without a directory path in front -#ACLOCAL_FLAGS="-I ${tmpdir} --acdir=${tmpdir} --output=${aclocal_m4}" -#echo " aclocal $ACLOCAL_FLAGS" -#cp -f ${configure_ac} ${tmpdir} -#cp -f ${etcdir}/acinclude.m4 ${tmpdir} -#aclocal $ACLOCAL_FLAGS - -#echo " autoheader ${configure_ac}" -#autoheader ${configure_ac} - -echo " autoconf -I ${tmpdir} -o ${configure} ${configure_ac}" -autoconf -I ${tmpdir} -o ${configure} ${configure_ac} - diff --git a/src/modules/archiveServer/bin/getUrl.sh b/src/modules/archiveServer/bin/getUrl.sh deleted file mode 100755 index 708edc390..000000000 --- a/src/modules/archiveServer/bin/getUrl.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -#------------------------------------------------------------------------------- -# Copyright (c) 2010 Sourcefabric O.P.S. -# -# This file is part of the Campcaster project. -# http://campcaster.sourcefabric.org/ -# -# Campcaster is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# Campcaster is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Campcaster; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -#------------------------------------------------------------------------------- - -#------------------------------------------------------------------------------- -# This script grabs string at suplied URL -#------------------------------------------------------------------------------- - -URL=$1 -RES=`curl -sf ${URL}` || \ - { - ERN=$?; - if [ $ERN == 22 ] ; then - echo "ERROR: curl: 22 - wrong URL ($URL)"; - else - echo "ERROR: $ERN - unknown"; - fi; - exit 1; - } -echo $RES diff --git a/src/modules/archiveServer/bin/setupDirs.sh b/src/modules/archiveServer/bin/setupDirs.sh deleted file mode 100755 index d30cc81c2..000000000 --- a/src/modules/archiveServer/bin/setupDirs.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash -#------------------------------------------------------------------------------- -# Copyright (c) 2010 Sourcefabric O.P.S. -# -# This file is part of the Campcaster project. -# http://campcaster.sourcefabric.org/ -# To report bugs, send an e-mail to bugs@campware.org -# -# Campcaster is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# Campcaster is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Campcaster; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -#------------------------------------------------------------------------------- - -#------------------------------------------------------------------------------- -# This script does httpd writeable directories setup -#------------------------------------------------------------------------------- - -WWW_ROOT=`cd var/install; php -q getWwwRoot.php` || exit $? -echo "# archiveServer root URL: $WWW_ROOT" - -HTTP_GROUP=`bin/getUrl.sh $WWW_ROOT/install/getGname.php` || \ - { - ERN=$?; - echo $HTTP_GROUP; - echo " -> Probably wrong setting in var/conf.php: URL configuration"; - exit $ERN; - } -echo "# group running http daemon: $HTTP_GROUP" - -for i in $* -do - echo "mkdir $i" - mkdir -p $i || exit $? - chown :$HTTP_GROUP $i || \ - { - ERN=$?; - echo " -> You should have permissions to set group owner to group $HTTP_GROUP"; - exit $ERN; - } - chmod g+sw $i || exit $? -done - -echo "# Directories setup finished OK" -exit 0 diff --git a/src/modules/archiveServer/configure b/src/modules/archiveServer/configure deleted file mode 100755 index 30c0822dd..000000000 --- a/src/modules/archiveServer/configure +++ /dev/null @@ -1,47 +0,0 @@ -#!/bin/sh -#------------------------------------------------------------------------------- -# Copyright (c) 2010 Sourcefabric O.P.S. -# -# This file is part of the Campcaster project. -# http://campcaster.sourcefabric.org/ -# -# Campcaster is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# Campcaster is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Campcaster; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -#------------------------------------------------------------------------------- - -#------------------------------------------------------------------------------- -# Run this script to configure the environment. -# -# This script in effect calls the real automake / autoconf configure script -#------------------------------------------------------------------------------- - -# assume we're in $basedir -reldir=`dirname $0` -basedir=`cd $reldir; pwd;` -test -z "$basedir" && basedir=. - -bindir=$basedir/bin -tmpdir=$basedir/tmp - - -autogen=$bindir/autogen.sh -configure=$tmpdir/configure - -if [ ! -x $configure ]; then - (cd $basedir && $autogen $*) -fi - -(cd $tmpdir && $configure $*) - diff --git a/src/modules/archiveServer/etc/Makefile.in b/src/modules/archiveServer/etc/Makefile.in deleted file mode 100644 index cffd2d340..000000000 --- a/src/modules/archiveServer/etc/Makefile.in +++ /dev/null @@ -1,197 +0,0 @@ -#------------------------------------------------------------------------------- -# ArchiveServer - central archive component -# Copyright (c) 2010 Sourcefabric O.P.S. -# -# This file is part of the Campcaster project. -# -# Campcaster is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# Campcaster is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Campcaster; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# @configure_input@ -#------------------------------------------------------------------------------- - -#------------------------------------------------------------------------------- -# General command definitions -#------------------------------------------------------------------------------- -SHELL = /bin/bash -MKDIR = mkdir -p -RM = rm -f -RMDIR = rm -rf -DOXYGEN = doxygen -CP = cp -f -SED = sed -ECHO = echo -CAT = cat - - -#------------------------------------------------------------------------------- -# Misc -#------------------------------------------------------------------------------- - -MODULE_NAME = archiveServer -TAR_C = tar -cj --exclude .svn --exclude '*~' -C ${BASE_DIR} -f -DIST_EXT = .tgz -DATE = `date +%y%m%d` - -#------------------------------------------------------------------------------- -# Basic directory and file definitions -#------------------------------------------------------------------------------- -#BASE_DIR = @builddir@ -BASE_DIR = . -DOC_DIR = ${BASE_DIR}/doc -DOXYGEN_DIR = ${DOC_DIR}/doxygen -ETC_DIR = ${BASE_DIR}/etc -INCLUDE_DIR = ${BASE_DIR}/include -LIB_DIR = ${BASE_DIR}/lib -SRC_DIR = ${BASE_DIR}/src -TMP_DIR = ${BASE_DIR}/tmp -VAR_DIR = ${BASE_DIR}/var - -prefix = @prefix@ - -USR_DIR = ${prefix} -USR_INCLUDE_DIR = ${USR_DIR}/include -USR_LIB_DIR = ${USR_DIR}/lib -USR_VAR_DIR = ${USR_DIR}/var - -DOXYGEN_CONFIG = ${ETC_DIR}/doxygen.config - -PHP_DIR = ${VAR_DIR} -INSTALL_DIR = ${PHP_DIR}/install -STOR_DIR = ${PHP_DIR}/stor -ACCESS_DIR = ${PHP_DIR}/access -TRANS_DIR = ${PHP_DIR}/trans -BUFF_DIR = ${STOR_DIR}/buffer -TEST_RUNNER = ${PHP_DIR}/xmlrpc/testRunner.sh - -DEST_DIR = ${USR_VAR_DIR}/Campcaster/archiveServer/var - -HOSTNAME = @HOSTNAME@ -WWW_PORT = @WWW_PORT@ -DB_SERVER = @DB_SERVER@ -DATABASE = @DATABASE@ -DB_USER = @DB_USER@ -DB_PASSWORD = @DB_PASSWORD@ -PHP_URL_PREFIX = @URL_PREFIX@ - - -USR_LIB_DIR_S=$(shell ${ECHO} ${USR_LIB_DIR} | ${SED} -e "s/\//\\\\\\\\\//g") -PHP_URL_PREFIX_S=$(shell ${ECHO} ${PHP_URL_PREFIX} | ${SED} -e "s/\//\\\\\\\\\//g") - -REPLACE_SED_STRING="s/ls_lib_dir/${USR_LIB_DIR_S}/; \ - s/ls_dbuser/${DB_USER}/; \ - s/ls_dbpassword/${DB_PASSWORD}/; \ - s/ls_dbserver/${DB_SERVER}/; \ - s/ls_database/${DATABASE}/; \ - s/ls_storageUrlPath/\/${PHP_URL_PREFIX_S}\/archiveServer\/var/; \ - s/ls_php_host/${HOSTNAME}/; \ - s/ls_php_port/${WWW_PORT}/; \ - s/ls_archiveUrlPath/\/${PHP_URL_PREFIX_S}\/archiveServer\/var/;" -# explanation: on archive side, archive have the storage role => -# ls_storageUrlPath shouldn't be replaced by string ending with -# 'storageServer/var' - -#------------------------------------------------------------------------------- -# Configuration parameters -#------------------------------------------------------------------------------- -#CPPFLAGS = @CPPFLAGS@ -#CXXFLAGS = @CXXFLAGS@ @DEFS@ -I${USR_INCLUDE_DIR} -I${INCLUDE_DIR} -I${TMP_DIR}\ -# -pedantic -Wall -#LDFLAGS = @LDFLAGS@ -L${USR_LIB_DIR} -L${LIB_DIR} - - -#------------------------------------------------------------------------------- -# Dependencies -#------------------------------------------------------------------------------- -#HELLO_LIB_OBJS = ${TMP_DIR}/Hello.o -#TEST_RUNNER_OBJS = ${TMP_DIR}/HelloTest.o ${TMP_DIR}/TestRunner.o - - -#------------------------------------------------------------------------------- -# Targets -#------------------------------------------------------------------------------- -.PHONY: all dir_setup doc clean docclean depclean distclean dist install -.PHONY: db_init db_clean testonly - -all: - -doc: - ${DOXYGEN} ${DOXYGEN_CONFIG} - -clean: db_clean - ${RMDIR} ${STOR_DIR} - ${RMDIR} ${ACCESS_DIR} - ${RMDIR} ${TRANS_DIR} - -docclean: - ${RMDIR} ${DOXYGEN_DIR}/html - -depclean: clean - -dist: - ${TAR_C} ${MODULE_NAME}${DATE}${DIST_EXT} * - -distclean: clean docclean - -testonly: ${TEST_RUNNER} - ${TEST_RUNNER} - -check: all -#testonly - -recheck: clean check - -install: - ${MKDIR} ${DEST_DIR} - ${MKDIR} ${DEST_DIR}/access - ${MKDIR} ${DEST_DIR}/install - ${MKDIR} ${DEST_DIR}/stor - ${MKDIR} ${DEST_DIR}/stor/buffer - ${MKDIR} ${DEST_DIR}/trans - ${MKDIR} ${DEST_DIR}/xmlrpc - ${CP} ${VAR_DIR}/*.{php,template} ${DEST_DIR} - ${CP} ${VAR_DIR}/install/*.php ${DEST_DIR}/install - ${CP} ${VAR_DIR}/xmlrpc/*.php ${DEST_DIR}/xmlrpc - ${CAT} ${VAR_DIR}/conf.php.template | ${SED} -e ${REPLACE_SED_STRING} \ - > ${DEST_DIR}/conf.php - - -#------------------------------------------------------------------------------- -# Specific targets -#------------------------------------------------------------------------------- -storage: dir_setup db_init - -dir_setup: ${DOXYGEN_DIR} - bin/setupDirs.sh ${STOR_DIR} ${ACCESS_DIR} ${TRANS_DIR} ${BUFF_DIR} - -db_init: - -cd var/install && php -q install.php - -db_clean: - -cd var/install && php -q uninstall.php - -${TMP_DIR}: - ${MKDIR} ${TMP_DIR} - -${DOXYGEN_DIR}: - ${MKDIR} ${DOXYGEN_DIR} - -${TEST_RUNNER}: - -#------------------------------------------------------------------------------- -# Pattern rules -#------------------------------------------------------------------------------- -#${TMP_DIR}/%.o : ${SRC_DIR}/%.cxx -# ${CXX} ${CPPFLAGS} ${CXXFLAGS} -c -o $@ $< - diff --git a/src/modules/archiveServer/etc/configure.ac b/src/modules/archiveServer/etc/configure.ac deleted file mode 100644 index 66f3b8f13..000000000 --- a/src/modules/archiveServer/etc/configure.ac +++ /dev/null @@ -1,147 +0,0 @@ -dnl----------------------------------------------------------------------------- -dnl Copyright (c) 2010 Sourcefabric O.P.S. -dnl -dnl This file is part of the Campcaster project. -dnl http://campcaster.sourcefabric.org/ -dnl -dnl Campcaster is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2 of the License, or -dnl (at your option) any later version. -dnl -dnl Campcaster is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -dnl GNU General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with Campcaster; if not, write to the Free Software -dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -dnl -dnl----------------------------------------------------------------------------- - -dnl----------------------------------------------------------------------------- -dnl NOTE: Run all configure related scripts from the tmp directory of the -dnl project. -dnl This is due to the fact that configure spreads a lot of trash around, -dnl like atom4te cache directories, config.* files, etc. into the directory -dnl it is being run from. We clearly don't want these in our base directory. -dnl----------------------------------------------------------------------------- -AC_INIT(ArchiveServer, 0.0, support@sourcefabric.org) -AC_PREREQ(2.59) -AC_COPYRIGHT([Copyright (c) 2010 Sourcefabric O.P.S. under the GNU GPL]) -AC_REVISION($Revision$) - -AC_CONFIG_SRCDIR(../var/Archive.php) - - -dnl----------------------------------------------------------------------------- -dnl specify the FQDN -dnl----------------------------------------------------------------------------- -AC_SUBST(HOSTNAME) - -AC_ARG_WITH([hostname], - AC_HELP_STRING([--with-hostname], - [use the specified hostname (guess)]), - [HOSTNAME=${withval}], [HOSTNAME=`hostname -f`]) - -AC_MSG_RESULT([using hostname: ${HOSTNAME}]) - - -dnl----------------------------------------------------------------------------- -dnl specify the web server port -dnl----------------------------------------------------------------------------- -AC_SUBST(WWW_PORT) - -AC_ARG_WITH([www-port], - AC_HELP_STRING([--with-www-port], - [use the specified www port (80)]), - [WWW_PORT=${withval}], [WWW_PORT=80]) - -AC_MSG_RESULT([using www port: ${WWW_PORT}]) - - -dnl----------------------------------------------------------------------------- -dnl specify the database server name -dnl----------------------------------------------------------------------------- -AC_SUBST(DB_SERVER) - -AC_ARG_WITH([database-server], - AC_HELP_STRING([--with-database-server], - [use the specified database server (localhost)]), - [DB_SERVER=${withval}], [DB_SERVER=localhost]) - -AC_MSG_RESULT([using database server: ${DB_SERVER}]) - - -dnl----------------------------------------------------------------------------- -dnl get the name of the Campcaster database -dnl----------------------------------------------------------------------------- -AC_SUBST(DATABASE) - -AC_ARG_WITH([database], - AC_HELP_STRING([--with-database], - [the name of the postgresql database to use (Campcaster)]), - [DATABASE=${withval}], [DATABASE=Campcaster]) - -AC_MSG_RESULT([using database: ${DATABASE}]) - - -dnl----------------------------------------------------------------------------- -dnl specify the database server user -dnl----------------------------------------------------------------------------- -AC_SUBST(DB_USER) - -AC_ARG_WITH([database-user], - AC_HELP_STRING([--with-database-user], - [use the specified database server user (campcaster)]), - [DB_USER=${withval}], [DB_USER=campcaster]) - -AC_MSG_RESULT([using database server user: ${DB_USER}]) - - -dnl----------------------------------------------------------------------------- -dnl specify the database server user password -dnl----------------------------------------------------------------------------- -AC_SUBST(DB_PASSWORD) - -AC_ARG_WITH([database-password], - AC_HELP_STRING([--with-database-password], - [use the specified database server user password (campcaster)]), - [DB_PASSWORD=${withval}], [DB_PASSWORD=campcaster]) - -AC_MSG_RESULT([using database server user password: ${DB_PASSWORD}]) - - -dnl----------------------------------------------------------------------------- -dnl specify url prefix -dnl----------------------------------------------------------------------------- -AC_SUBST(URL_PREFIX) - -AC_ARG_WITH([url-prefix], - AC_HELP_STRING([--with-url-prefix], - [use the specified url prefix (campcaster)]), - [URL_PREFIX=${withval}], [URL_PREFIX=campcaster]) - -AC_MSG_RESULT([using url prefix: ${URL_PREFIX}]) - - -dnl display status info on what libraries will get compiled - -AC_MSG_NOTICE( -[using the following configuration settings: - - hostname: ${HOSTNAME} - www port: ${WWW_PORT} - database server: ${DB_SERVER} - database name: ${DATABASE} - database user: ${DB_USER} - database user password: ${DB_PASSWORD} - url prefix: ${URL_PREFIX} - -]) - - -AC_CONFIG_FILES(../Makefile:../etc/Makefile.in) - -AC_OUTPUT() diff --git a/src/modules/archiveServer/etc/doxygen.config b/src/modules/archiveServer/etc/doxygen.config deleted file mode 100644 index a4d3f19d2..000000000 --- a/src/modules/archiveServer/etc/doxygen.config +++ /dev/null @@ -1,1140 +0,0 @@ -#------------------------------------------------------------------------------- -# doxygen.config -# Copyright (c) 2010 Sourcefabric O.P.S. -# -# This file is part of the Campcaster project. -# -# Campcaster is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# Campcaster is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with Campcaster; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -#------------------------------------------------------------------------------- - -# Doxyfile 1.3.6 - -# This file describes the settings to be used by the documentation system -# doxygen (www.doxygen.org) for a project -# -# All text after a hash (#) is considered a comment and will be ignored -# The format is: -# TAG = value [value, ...] -# For lists items can also be appended using: -# TAG += value [value, ...] -# Values that contain spaces should be placed between quotes (" ") - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- - -# The PROJECT_NAME tag is a single word (or a sequence of words surrounded -# by quotes) that should identify the project. - -PROJECT_NAME = Campcaster - archiveServer module - -# The PROJECT_NUMBER tag can be used to enter a project or revision number. -# This could be handy for archiving the generated documentation or -# if some version control system is used. - -PROJECT_NUMBER = 0.0 - -# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) -# base path where the generated documentation will be put. -# If a relative path is entered, it will be relative to the location -# where doxygen was started. If left blank the current directory will be used. - -OUTPUT_DIRECTORY = doc/doxygen - -# The OUTPUT_LANGUAGE tag is used to specify the language in which all -# documentation generated by doxygen is written. Doxygen will use this -# information to generate all constant output in the proper language. -# The default language is English, other supported languages are: -# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, -# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en -# (Japanese with English messages), Korean, Korean-en, Norwegian, Polish, Portuguese, -# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. - -OUTPUT_LANGUAGE = English - -# This tag can be used to specify the encoding used in the generated output. -# The encoding is not always determined by the language that is chosen, -# but also whether or not the output is meant for Windows or non-Windows users. -# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES -# forces the Windows encoding (this is the default for the Windows binary), -# whereas setting the tag to NO uses a Unix-style encoding (the default for -# all platforms other than Windows). - -USE_WINDOWS_ENCODING = NO - -# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will -# include brief member descriptions after the members that are listed in -# the file and class documentation (similar to JavaDoc). -# Set to NO to disable this. - -BRIEF_MEMBER_DESC = YES - -# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend -# the brief description of a member or function before the detailed description. -# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -# brief descriptions will be completely suppressed. - -REPEAT_BRIEF = YES - -# This tag implements a quasi-intelligent brief description abbreviator -# that is used to form the text in various listings. Each string -# in this list, if found as the leading text of the brief description, will be -# stripped from the text and the result after processing the whole list, is used -# as the annotated text. Otherwise, the brief description is used as-is. If left -# blank, the following values are used ("$name" is automatically replaced with the -# name of the entity): "The $name class" "The $name widget" "The $name file" -# "is" "provides" "specifies" "contains" "represents" "a" "an" "the" - -ABBREVIATE_BRIEF = - -# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then -# Doxygen will generate a detailed section even if there is only a brief -# description. - -ALWAYS_DETAILED_SEC = NO - -# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited -# members of a class in the documentation of that class as if those members were -# ordinary class members. Constructors, destructors and assignment operators of -# the base classes will not be shown. - -INLINE_INHERITED_MEMB = NO - -# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full -# path before files name in the file list and in the header files. If set -# to NO the shortest path that makes the file name unique will be used. - -FULL_PATH_NAMES = NO - -# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag -# can be used to strip a user-defined part of the path. Stripping is -# only done if one of the specified strings matches the left-hand part of -# the path. It is allowed to use relative paths in the argument list. -# If left blank the directory from which doxygen is run is used as the -# path to strip. - -STRIP_FROM_PATH = - -# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter -# (but less readable) file names. This can be useful is your file systems -# doesn't support long names like on DOS, Mac, or CD-ROM. - -SHORT_NAMES = NO - -# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen -# will interpret the first line (until the first dot) of a JavaDoc-style -# comment as the brief description. If set to NO, the JavaDoc -# comments will behave just like the Qt-style comments (thus requiring an -# explicit @brief command for a brief description. - -JAVADOC_AUTOBRIEF = YES - -# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen -# treat a multi-line C++ special comment block (i.e. a block of //! or /// -# comments) as a brief description. This used to be the default behaviour. -# The new default is to treat a multi-line C++ comment block as a detailed -# description. Set this tag to YES if you prefer the old behaviour instead. - -MULTILINE_CPP_IS_BRIEF = YES - -# If the DETAILS_AT_TOP tag is set to YES then Doxygen -# will output the detailed description near the top, like JavaDoc. -# If set to NO, the detailed description appears after the member -# documentation. - -DETAILS_AT_TOP = NO - -# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented -# member inherits the documentation from any documented member that it -# re-implements. - -INHERIT_DOCS = YES - -# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC -# tag is set to YES, then doxygen will reuse the documentation of the first -# member in the group (if any) for the other members of the group. By default -# all members of a group must be documented explicitly. - -DISTRIBUTE_GROUP_DOC = NO - -# The TAB_SIZE tag can be used to set the number of spaces in a tab. -# Doxygen uses this value to replace tabs by spaces in code fragments. - -TAB_SIZE = 4 - -# This tag can be used to specify a number of aliases that acts -# as commands in the documentation. An alias has the form "name=value". -# For example adding "sideeffect=\par Side Effects:\n" will allow you to -# put the command \sideeffect (or @sideeffect) in the documentation, which -# will result in a user-defined paragraph with heading "Side Effects:". -# You can put \n's in the value part of an alias to insert newlines. - -ALIASES = - -# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources -# only. Doxygen will then generate output that is more tailored for C. -# For instance, some of the names that are used will be different. The list -# of all members will be omitted, etc. - -OPTIMIZE_OUTPUT_FOR_C = NO - -# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources -# only. Doxygen will then generate output that is more tailored for Java. -# For instance, namespaces will be presented as packages, qualified scopes -# will look different, etc. - -OPTIMIZE_OUTPUT_JAVA = NO - -# Set the SUBGROUPING tag to YES (the default) to allow class member groups of -# the same type (for instance a group of public functions) to be put as a -# subgroup of that type (e.g. under the Public Functions section). Set it to -# NO to prevent subgrouping. Alternatively, this can be done per class using -# the \nosubgrouping command. - -SUBGROUPING = YES - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- - -# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in -# documentation are documented, even if no documentation was available. -# Private class members and static file members will be hidden unless -# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES - -#EXTRACT_ALL = NO -EXTRACT_ALL = YES - -# If the EXTRACT_PRIVATE tag is set to YES all private members of a class -# will be included in the documentation. - -EXTRACT_PRIVATE = NO - -# If the EXTRACT_STATIC tag is set to YES all static members of a file -# will be included in the documentation. - -EXTRACT_STATIC = YES - -# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) -# defined locally in source files will be included in the documentation. -# If set to NO only classes defined in header files are included. - -EXTRACT_LOCAL_CLASSES = YES - -# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all -# undocumented members of documented classes, files or namespaces. -# If set to NO (the default) these members will be included in the -# various overviews, but no documentation section is generated. -# This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_MEMBERS = NO - -# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all -# undocumented classes that are normally visible in the class hierarchy. -# If set to NO (the default) these classes will be included in the various -# overviews. This option has no effect if EXTRACT_ALL is enabled. - -HIDE_UNDOC_CLASSES = NO - -# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all -# friend (class|struct|union) declarations. -# If set to NO (the default) these declarations will be included in the -# documentation. - -HIDE_FRIEND_COMPOUNDS = NO - -# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any -# documentation blocks found inside the body of a function. -# If set to NO (the default) these blocks will be appended to the -# function's detailed documentation block. - -HIDE_IN_BODY_DOCS = NO - -# The INTERNAL_DOCS tag determines if documentation -# that is typed after a \internal command is included. If the tag is set -# to NO (the default) then the documentation will be excluded. -# Set it to YES to include the internal documentation. - -INTERNAL_DOCS = NO - -# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate -# file names in lower-case letters. If set to YES upper-case letters are also -# allowed. This is useful if you have classes or files whose names only differ -# in case and if your file system supports case sensitive file names. Windows -# users are advised to set this option to NO. - -CASE_SENSE_NAMES = YES - -# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen -# will show members with their full class and namespace scopes in the -# documentation. If set to YES the scope will be hidden. - -HIDE_SCOPE_NAMES = NO - -# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen -# will put a list of the files that are included by a file in the documentation -# of that file. - -SHOW_INCLUDE_FILES = YES - -# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] -# is inserted in the documentation for inline members. - -INLINE_INFO = YES - -# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen -# will sort the (detailed) documentation of file and class members -# alphabetically by member name. If set to NO the members will appear in -# declaration order. - -SORT_MEMBER_DOCS = YES - -# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the -# brief documentation of file, namespace and class members alphabetically -# by member name. If set to NO (the default) the members will appear in -# declaration order. - -SORT_BRIEF_DOCS = NO - -# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be -# sorted by fully-qualified names, including namespaces. If set to -# NO (the default), the class list will be sorted only by class name, -# not including the namespace part. -# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. -# Note: This option applies only to the class list, not to the -# alphabetical list. - -SORT_BY_SCOPE_NAME = NO - -# The GENERATE_TODOLIST tag can be used to enable (YES) or -# disable (NO) the todo list. This list is created by putting \todo -# commands in the documentation. - -GENERATE_TODOLIST = YES - -# The GENERATE_TESTLIST tag can be used to enable (YES) or -# disable (NO) the test list. This list is created by putting \test -# commands in the documentation. - -GENERATE_TESTLIST = YES - -# The GENERATE_BUGLIST tag can be used to enable (YES) or -# disable (NO) the bug list. This list is created by putting \bug -# commands in the documentation. - -GENERATE_BUGLIST = YES - -# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or -# disable (NO) the deprecated list. This list is created by putting -# \deprecated commands in the documentation. - -GENERATE_DEPRECATEDLIST= YES - -# The ENABLED_SECTIONS tag can be used to enable conditional -# documentation sections, marked by \if sectionname ... \endif. - -ENABLED_SECTIONS = - -# The MAX_INITIALIZER_LINES tag determines the maximum number of lines -# the initial value of a variable or define consists of for it to appear in -# the documentation. If the initializer consists of more lines than specified -# here it will be hidden. Use a value of 0 to hide initializers completely. -# The appearance of the initializer of individual variables and defines in the -# documentation can be controlled using \showinitializer or \hideinitializer -# command in the documentation regardless of this setting. - -MAX_INITIALIZER_LINES = 30 - -# Set the SHOW_USED_FILES tag to NO to disable the list of files generated -# at the bottom of the documentation of classes and structs. If set to YES the -# list will mention the files that were used to generate the documentation. - -SHOW_USED_FILES = YES - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- - -# The QUIET tag can be used to turn on/off the messages that are generated -# by doxygen. Possible values are YES and NO. If left blank NO is used. - -QUIET = NO - -# The WARNINGS tag can be used to turn on/off the warning messages that are -# generated by doxygen. Possible values are YES and NO. If left blank -# NO is used. - -WARNINGS = YES - -# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings -# for undocumented members. If EXTRACT_ALL is set to YES then this flag will -# automatically be disabled. - -WARN_IF_UNDOCUMENTED = YES - -# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for -# potential errors in the documentation, such as not documenting some -# parameters in a documented function, or documenting parameters that -# don't exist or using markup commands wrongly. - -WARN_IF_DOC_ERROR = YES - -# The WARN_FORMAT tag determines the format of the warning messages that -# doxygen can produce. The string should contain the $file, $line, and $text -# tags, which will be replaced by the file and line number from which the -# warning originated and the warning text. - -WARN_FORMAT = "$file:$line: $text" - -# The WARN_LOGFILE tag can be used to specify a file to which warning -# and error messages should be written. If left blank the output is written -# to stderr. - -WARN_LOGFILE = - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- - -# The INPUT tag can be used to specify the files and/or directories that contain -# documented source files. You may enter file names like "myfile.cpp" or -# directories like "/usr/src/myproject". Separate the files or directories -# with spaces. - -INPUT = var var/xmlrpc - -# If the value of the INPUT tag contains directories, you can use the -# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank the following patterns are tested: -# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp -# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc - -FILE_PATTERNS = *.php - -# The RECURSIVE tag can be used to turn specify whether or not subdirectories -# should be searched for input files as well. Possible values are YES and NO. -# If left blank NO is used. - -RECURSIVE = NO - -# The EXCLUDE tag can be used to specify files and/or directories that should -# excluded from the INPUT source files. This way you can easily exclude a -# subdirectory from a directory tree whose root is specified with the INPUT tag. - -EXCLUDE = - -# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories -# that are symbolic links (a Unix filesystem feature) are excluded from the input. - -EXCLUDE_SYMLINKS = NO - -# If the value of the INPUT tag contains directories, you can use the -# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -# certain files from those directories. - -EXCLUDE_PATTERNS = - -# The EXAMPLE_PATH tag can be used to specify one or more files or -# directories that contain example code fragments that are included (see -# the \include command). - -EXAMPLE_PATH = - -# If the value of the EXAMPLE_PATH tag contains directories, you can use the -# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp -# and *.h) to filter out the source-files in the directories. If left -# blank all files are included. - -EXAMPLE_PATTERNS = - -# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be -# searched for input files to be used with the \include or \dontinclude -# commands irrespective of the value of the RECURSIVE tag. -# Possible values are YES and NO. If left blank NO is used. - -EXAMPLE_RECURSIVE = NO - -# The IMAGE_PATH tag can be used to specify one or more files or -# directories that contain image that are included in the documentation (see -# the \image command). - -IMAGE_PATH = - -# The INPUT_FILTER tag can be used to specify a program that doxygen should -# invoke to filter for each input file. Doxygen will invoke the filter program -# by executing (via popen()) the command , where -# is the value of the INPUT_FILTER tag, and is the name of an -# input file. Doxygen will then use the output that the filter program writes -# to standard output. - -INPUT_FILTER = - -# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -# INPUT_FILTER) will be used to filter the input files when producing source -# files to browse (i.e. when SOURCE_BROWSER is set to YES). - -FILTER_SOURCE_FILES = NO - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- - -# If the SOURCE_BROWSER tag is set to YES then a list of source files will -# be generated. Documented entities will be cross-referenced with these sources. -# Note: To get rid of all source code in the generated output, make sure also -# VERBATIM_HEADERS is set to NO. - -SOURCE_BROWSER = YES - -# Setting the INLINE_SOURCES tag to YES will include the body -# of functions and classes directly in the documentation. - -INLINE_SOURCES = NO - -# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct -# doxygen to hide any special comment blocks from generated source code -# fragments. Normal C and C++ comments will always remain visible. - -STRIP_CODE_COMMENTS = YES - -# If the REFERENCED_BY_RELATION tag is set to YES (the default) -# then for each documented function all documented -# functions referencing it will be listed. - -REFERENCED_BY_RELATION = YES - -# If the REFERENCES_RELATION tag is set to YES (the default) -# then for each documented function all documented entities -# called/used by that function will be listed. - -REFERENCES_RELATION = YES - -# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen -# will generate a verbatim copy of the header file for each class for -# which an include is specified. Set to NO to disable this. - -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- - -# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index -# of all compounds will be generated. Enable this if the project -# contains a lot of classes, structs, unions or interfaces. - -ALPHABETICAL_INDEX = YES - -# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then -# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns -# in which this list will be split (can be a number in the range [1..20]) - -COLS_IN_ALPHA_INDEX = 5 - -# In case all classes in a project start with a common prefix, all -# classes will be put under the same header in the alphabetical index. -# The IGNORE_PREFIX tag can be used to specify one or more prefixes that -# should be ignored while generating the index headers. - -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- - -# If the GENERATE_HTML tag is set to YES (the default) Doxygen will -# generate HTML output. - -GENERATE_HTML = YES - -# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `html' will be used as the default path. - -HTML_OUTPUT = html - -# The HTML_FILE_EXTENSION tag can be used to specify the file extension for -# each generated HTML page (for example: .htm,.php,.asp). If it is left blank -# doxygen will generate files with .html extension. - -HTML_FILE_EXTENSION = .html - -# The HTML_HEADER tag can be used to specify a personal HTML header for -# each generated HTML page. If it is left blank doxygen will generate a -# standard header. - -HTML_HEADER = - -# The HTML_FOOTER tag can be used to specify a personal HTML footer for -# each generated HTML page. If it is left blank doxygen will generate a -# standard footer. - -HTML_FOOTER = - -# The HTML_STYLESHEET tag can be used to specify a user-defined cascading -# style sheet that is used by each HTML page. It can be used to -# fine-tune the look of the HTML output. If the tag is left blank doxygen -# will generate a default style sheet. Note that doxygen will try to copy -# the style sheet file to the HTML output directory, so don't put your own -# stylesheet in the HTML output directory as well, or it will be erased! - -HTML_STYLESHEET = - -# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, -# files or namespaces will be aligned in HTML using tables. If set to -# NO a bullet list will be used. - -HTML_ALIGN_MEMBERS = YES - -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can -# be used to specify the file name of the resulting .chm file. You -# can add a path in front of the file if the result should not be -# written to the html output directory. - -CHM_FILE = - -# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can -# be used to specify the location (absolute path including file name) of -# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run -# the HTML help compiler on the generated index.hhp. - -HHC_LOCATION = - -# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag -# controls if a separate .chi index file is generated (YES) or that -# it should be included in the master .chm file (NO). - -GENERATE_CHI = NO - -# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag -# controls whether a binary table of contents is generated (YES) or a -# normal table of contents (NO) in the .chm file. - -BINARY_TOC = NO - -# The TOC_EXPAND flag can be set to YES to add extra items for group members -# to the contents of the HTML help documentation and to the tree view. - -TOC_EXPAND = NO - -# The DISABLE_INDEX tag can be used to turn on/off the condensed index at -# top of each HTML page. The value NO (the default) enables the index and -# the value YES disables it. - -DISABLE_INDEX = NO - -# This tag can be used to set the number of enum values (range [1..20]) -# that doxygen will group on one line in the generated HTML documentation. - -ENUM_VALUES_PER_LINE = 4 - -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be -# generated containing a tree-like index structure (just like the one that -# is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are -# probably better off using the HTML help feature. - -GENERATE_TREEVIEW = NO - -# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be -# used to set the initial width (in pixels) of the frame in which the tree -# is shown. - -TREEVIEW_WIDTH = 250 - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- - -# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will -# generate Latex output. - -GENERATE_LATEX = NO - -# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `latex' will be used as the default path. - -LATEX_OUTPUT = latex - -# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -# invoked. If left blank `latex' will be used as the default command name. - -LATEX_CMD_NAME = latex - -# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to -# generate index for LaTeX. If left blank `makeindex' will be used as the -# default command name. - -MAKEINDEX_CMD_NAME = makeindex - -# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact -# LaTeX documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_LATEX = NO - -# The PAPER_TYPE tag can be used to set the paper type that is used -# by the printer. Possible values are: a4, a4wide, letter, legal and -# executive. If left blank a4wide will be used. - -PAPER_TYPE = a4wide - -# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX -# packages that should be included in the LaTeX output. - -EXTRA_PACKAGES = - -# The LATEX_HEADER tag can be used to specify a personal LaTeX header for -# the generated latex document. The header should contain everything until -# the first chapter. If it is left blank doxygen will generate a -# standard header. Notice: only use this tag if you know what you are doing! - -LATEX_HEADER = - -# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated -# is prepared for conversion to pdf (using ps2pdf). The pdf file will -# contain links (just like the HTML output) instead of page references -# This makes the output suitable for online browsing using a pdf viewer. - -PDF_HYPERLINKS = NO - -# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of -# plain latex in the generated Makefile. Set this option to YES to get a -# higher quality PDF documentation. - -USE_PDFLATEX = NO - -# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. -# command to the generated LaTeX files. This will instruct LaTeX to keep -# running if errors occur, instead of asking the user for help. -# This option is also used when generating formulas in HTML. - -LATEX_BATCHMODE = NO - -# If LATEX_HIDE_INDICES is set to YES then doxygen will not -# include the index chapters (such as File Index, Compound Index, etc.) -# in the output. - -LATEX_HIDE_INDICES = NO - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- - -# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output -# The RTF output is optimized for Word 97 and may not look very pretty with -# other RTF readers or editors. - -GENERATE_RTF = NO - -# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `rtf' will be used as the default path. - -RTF_OUTPUT = rtf - -# If the COMPACT_RTF tag is set to YES Doxygen generates more compact -# RTF documents. This may be useful for small projects and may help to -# save some trees in general. - -COMPACT_RTF = NO - -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. - -RTF_HYPERLINKS = NO - -# Load stylesheet definitions from file. Syntax is similar to doxygen's -# config file, i.e. a series of assignments. You only have to provide -# replacements, missing definitions are set to their default value. - -RTF_STYLESHEET_FILE = - -# Set optional variables used in the generation of an rtf document. -# Syntax is similar to doxygen's config file. - -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- - -# If the GENERATE_MAN tag is set to YES (the default) Doxygen will -# generate man pages - -GENERATE_MAN = NO - -# The MAN_OUTPUT tag is used to specify where the man pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `man' will be used as the default path. - -MAN_OUTPUT = man - -# The MAN_EXTENSION tag determines the extension that is added to -# the generated man pages (default is the subroutine's section .3) - -MAN_EXTENSION = .3 - -# If the MAN_LINKS tag is set to YES and Doxygen generates man output, -# then it will generate one additional man file for each entity -# documented in the real man page(s). These additional files -# only source the real man page, but without them the man command -# would be unable to find the correct page. The default is NO. - -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- - -# If the GENERATE_XML tag is set to YES Doxygen will -# generate an XML file that captures the structure of -# the code including all documentation. - -GENERATE_XML = NO - -# The XML_OUTPUT tag is used to specify where the XML pages will be put. -# If a relative path is entered the value of OUTPUT_DIRECTORY will be -# put in front of it. If left blank `xml' will be used as the default path. - -XML_OUTPUT = xml - -# The XML_SCHEMA tag can be used to specify an XML schema, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_SCHEMA = - -# The XML_DTD tag can be used to specify an XML DTD, -# which can be used by a validating XML parser to check the -# syntax of the XML files. - -XML_DTD = - -# If the XML_PROGRAMLISTING tag is set to YES Doxygen will -# dump the program listings (including syntax highlighting -# and cross-referencing information) to the XML output. Note that -# enabling this will significantly increase the size of the XML output. - -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- - -# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will -# generate an AutoGen Definitions (see autogen.sf.net) file -# that captures the structure of the code including all -# documentation. Note that this feature is still experimental -# and incomplete at the moment. - -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- - -# If the GENERATE_PERLMOD tag is set to YES Doxygen will -# generate a Perl module file that captures the structure of -# the code including all documentation. Note that this -# feature is still experimental and incomplete at the -# moment. - -GENERATE_PERLMOD = NO - -# If the PERLMOD_LATEX tag is set to YES Doxygen will generate -# the necessary Makefile rules, Perl scripts and LaTeX code to be able -# to generate PDF and DVI output from the Perl module output. - -PERLMOD_LATEX = NO - -# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. This is useful -# if you want to understand what is going on. On the other hand, if this -# tag is set to NO the size of the Perl module output will be much smaller -# and Perl will parse it just the same. - -PERLMOD_PRETTY = YES - -# The names of the make variables in the generated doxyrules.make file -# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. -# This is useful so different doxyrules.make files included by the same -# Makefile don't overwrite each other's variables. - -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- - -# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will -# evaluate all C-preprocessor directives found in the sources and include -# files. - -ENABLE_PREPROCESSING = YES - -# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro -# names in the source code. If set to NO (the default) only conditional -# compilation will be performed. Macro expansion can be done in a controlled -# way by setting EXPAND_ONLY_PREDEF to YES. - -MACRO_EXPANSION = YES - -# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES -# then the macro expansion is limited to the macros specified with the -# PREDEFINED and EXPAND_AS_PREDEFINED tags. - -EXPAND_ONLY_PREDEF = NO - -# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files -# in the INCLUDE_PATH (see below) will be search if a #include is found. - -SEARCH_INCLUDES = YES - -# The INCLUDE_PATH tag can be used to specify one or more directories that -# contain include files that are not input files but should be processed by -# the preprocessor. - -INCLUDE_PATH = include - -# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard -# patterns (like *.h and *.hpp) to filter out the header-files in the -# directories. If left blank, the patterns specified with FILE_PATTERNS will -# be used. - -INCLUDE_FILE_PATTERNS = - -# The PREDEFINED tag can be used to specify one or more macro names that -# are defined before the preprocessor is started (similar to the -D option of -# gcc). The argument of the tag is a list of macros of the form: name -# or name=definition (no spaces). If the definition and the = are -# omitted =1 is assumed. - -PREDEFINED = - -# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then -# this tag can be used to specify a list of macro names that should be expanded. -# The macro definition that is found in the sources will be used. -# Use the PREDEFINED tag if you want to use a different macro definition. - -EXPAND_AS_DEFINED = - -# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then -# doxygen's preprocessor will remove all function-like macros that are alone -# on a line, have an all uppercase name, and do not end with a semicolon. Such -# function macros are typically used for boiler-plate code, and will confuse the -# parser if not removed. - -SKIP_FUNCTION_MACROS = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- - -# The TAGFILES option can be used to specify one or more tagfiles. -# Optionally an initial location of the external documentation -# can be added for each tagfile. The format of a tag file without -# this location is as follows: -# TAGFILES = file1 file2 ... -# Adding location for the tag files is done as follows: -# TAGFILES = file1=loc1 "file2 = loc2" ... -# where "loc1" and "loc2" can be relative or absolute paths or -# URLs. If a location is present for each tag, the installdox tool -# does not have to be run to correct the links. -# Note that each tag file must have a unique name -# (where the name does NOT include the path) -# If a tag file is not located in the directory in which doxygen -# is run, you must also specify the path to the tagfile here. - -TAGFILES = - -# When a file name is specified after GENERATE_TAGFILE, doxygen will create -# a tag file that is based on the input files it reads. - -GENERATE_TAGFILE = - -# If the ALLEXTERNALS tag is set to YES all external classes will be listed -# in the class index. If set to NO only the inherited external classes -# will be listed. - -ALLEXTERNALS = NO - -# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed -# in the modules index. If set to NO, only the current project's groups will -# be listed. - -EXTERNAL_GROUPS = YES - -# The PERL_PATH should be the absolute path and name of the perl script -# interpreter (i.e. the result of `which perl'). - -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- - -# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will -# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or -# super classes. Setting the tag to NO turns the diagrams off. Note that this -# option is superseded by the HAVE_DOT option below. This is only a fallback. It is -# recommended to install and use dot, since it yields more powerful graphs. - -CLASS_DIAGRAMS = YES - -# If set to YES, the inheritance and collaboration graphs will hide -# inheritance and usage relations if the target is undocumented -# or is not a class. - -HIDE_UNDOC_RELATIONS = YES - -# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is -# available from the path. This tool is part of Graphviz, a graph visualization -# toolkit from AT&T and Lucent Bell Labs. The other options in this section -# have no effect if this option is set to NO (the default) - -HAVE_DOT = NO - -# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect inheritance relations. Setting this tag to YES will force the -# the CLASS_DIAGRAMS tag to NO. - -CLASS_GRAPH = YES - -# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen -# will generate a graph for each documented class showing the direct and -# indirect implementation dependencies (inheritance, containment, and -# class references variables) of the class with other documented classes. - -COLLABORATION_GRAPH = YES - -# If the UML_LOOK tag is set to YES doxygen will generate inheritance and -# collaboration diagrams in a style similar to the OMG's Unified Modeling -# Language. - -UML_LOOK = NO - -# If set to YES, the inheritance and collaboration graphs will show the -# relations between templates and their instances. - -TEMPLATE_RELATIONS = NO - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT -# tags are set to YES then doxygen will generate a graph for each documented -# file showing the direct and indirect include dependencies of the file with -# other documented files. - -INCLUDE_GRAPH = YES - -# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and -# HAVE_DOT tags are set to YES then doxygen will generate a graph for each -# documented header file showing the documented files that directly or -# indirectly include this file. - -INCLUDED_BY_GRAPH = YES - -# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will -# generate a call dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable call graphs for selected -# functions only using the \callgraph command. - -CALL_GRAPH = NO - -# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen -# will graphical hierarchy of all classes instead of a textual one. - -GRAPHICAL_HIERARCHY = YES - -# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -# generated by dot. Possible values are png, jpg, or gif -# If left blank png will be used. - -DOT_IMAGE_FORMAT = png - -# The tag DOT_PATH can be used to specify the path where the dot tool can be -# found. If left blank, it is assumed the dot tool can be found on the path. - -DOT_PATH = - -# The DOTFILE_DIRS tag can be used to specify one or more directories that -# contain dot files that are included in the documentation (see the -# \dotfile command). - -DOTFILE_DIRS = - -# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. - -MAX_DOT_GRAPH_WIDTH = 1024 - -# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height -# (in pixels) of the graphs generated by dot. If a graph becomes larger than -# this value, doxygen will try to truncate the graph, so that it fits within -# the specified constraint. Beware that most browsers cannot cope with very -# large images. - -MAX_DOT_GRAPH_HEIGHT = 1024 - -# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the -# graphs generated by dot. A depth value of 3 means that only nodes reachable -# from the root by following a path via at most 3 edges will be shown. Nodes that -# lay further from the root node will be omitted. Note that setting this option to -# 1 or 2 may greatly reduce the computation time needed for large code bases. Also -# note that a graph may be further truncated if the graph's image dimensions are -# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). -# If 0 is used for the depth value (the default), the graph is not depth-constrained. - -MAX_DOT_GRAPH_DEPTH = 0 - -# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will -# generate a legend page explaining the meaning of the various boxes and -# arrows in the dot generated graphs. - -GENERATE_LEGEND = YES - -# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will -# remove the intermediate dot files that are used to generate -# the various graphs. - -DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- - -# The SEARCHENGINE tag specifies whether or not a search engine should be -# used. If set to NO the values of all tags below this one will be ignored. - -SEARCHENGINE = NO diff --git a/src/modules/archiveServer/tmp/.keepme b/src/modules/archiveServer/tmp/.keepme deleted file mode 100644 index e69de29bb..000000000 diff --git a/src/modules/archiveServer/var/.htaccess b/src/modules/archiveServer/var/.htaccess deleted file mode 100644 index ba3404cb8..000000000 --- a/src/modules/archiveServer/var/.htaccess +++ /dev/null @@ -1,12 +0,0 @@ -DirectoryIndex index.php -Options +FollowSymLinks -Indexes - - - - AddType application/x-httpd-php .php - - php_flag magic_quotes_gpc On - php_flag register_globals Off - - - diff --git a/src/modules/archiveServer/var/Archive.php b/src/modules/archiveServer/var/Archive.php deleted file mode 100644 index fe300d147..000000000 --- a/src/modules/archiveServer/var/Archive.php +++ /dev/null @@ -1,406 +0,0 @@ -bsOpenPut($chsum, NULL, $owner); - if (PEAR::isError($res)) { - return $res; - } - return array('url'=>$res['url'], 'token'=>$res['token']); - } - - - /** - * Check uploaded file - * - * @param string $token - * transport token - * @return array - * (md5h string, size int, url string) - */ - function uploadCheck($token) - { - return $this->bsCheckPut($token); - } - - - /** - * Close upload transport - * - * @param string $token - * transport token - * @param string $trtype - * transport type - * @param array $pars - * transport parameters - * @return mixed - */ - function uploadClose($token, $trtype, $pars=array()) - { - $res = $this->bsClosePut($token); - if (PEAR::isError($res)) { - return $res; - } - extract($res); // fname, owner - switch ($trtype) { - case "audioclip": - $mdtoken = $pars['mdpdtoken']; - $res = $this->bsClosePut($mdtoken); - if (PEAR::isError($res)) { - return $res; - } - $mdfname = $res['fname']; - if ($gunid == '') { - $gunid = NULL; - } - $values = array( - "filename" => $pars['name'], - "filepath" => $fname, - "metadata" => $mdfname, - "gunid" => $pars['gunid'], - "filetype" => "audioclip" - ); - $storedFile = $this->bsPutFile($values); - if (PEAR::isError($storedFile)) { - return $storedFile; - } - $res = $storedFile->getId(); - @unlink($fname); - @unlink($mdfname); - break; - case "playlist": - if ($gunid == '') { - $gunid = NULL; - } - $values = array( - "filename" => $pars['name'], - "metadata" => $fname, - "gunid" => $pars['gunid'], - "filetype" => "playlist" - ); - $storedFile = $this->bsPutFile($values); - if (PEAR::isError($storedFile)) { - return $storedFile; - } - $res = $storedFile->getId(); - @unlink($fname); - break; - case "playlistPkg": - $chsum = md5_file($fname); - // importPlaylistOpen: - $res = $this->bsOpenPut($chsum, NULL, $owner); - if (PEAR::isError($res)) { - return $res; - } - $dest = $res['fname']; - $token = $res['token']; - copy($fname, $dest); - $r = $this->importPlaylistClose($token); - if (PEAR::isError($r)) { - return $r; - } - @unlink($fname); - return $r; - break; - case "searchjob": - $crits = file_get_contents($fname); - $criteria = unserialize($crits); - @unlink($fname); - $results = $this->localSearch($criteria); - if (PEAR::isError($results)) { - return $results; - } - $realfile = tempnam($this->accessDir, 'searchjob_'); - @chmod($realfile, 0660); - $len = file_put_contents($realfile, serialize($results)); - $acc = BasicStor::bsAccess($realfile, '', NULL, 'download'); - if (PEAR::isError($acc)) { - return $acc; - } - $url = BasicStor::GetUrlPart()."access/".basename($acc['fname']); - $chsum = md5_file($realfile); - $size = filesize($realfile); - $res = array( - 'url'=>$url, 'token'=>$acc['token'], - 'chsum'=>$chsum, 'size'=>$size, - 'filename'=>$filename - ); - return $res; - break; - case "metadata": - break; - default: - } - return $res; - } - - - /** - * Open download transport - * - * @param string $sessid - * session id - * @param string $trtype - * transport type - * @param array $pars - * transport parameters - * @return hasharray with: - * url string: writable URL - * token string: PUT token - */ - function downloadOpen($sessid, $trtype, $pars=array()) - { - global $CC_CONFIG; - switch ($trtype) { - case "unknown": - case "audioclip": - case "metadata": - case "playlist": - case "playlistPkg": - if (!isset($pars['gunid'])) { - return PEAR::raiseError("Archive::downloadOpen: gunid not set"); - } - break; - } - $gunid = $pars['gunid']; - // resolve trtype by object type: - if ( ($trtype == 'unknown') || ($trtype == 'playlistPkg') ) { - $trtype2 = BasicStor::GetType($gunid); - if (PEAR::isError($trtype2)) { - return $trtype2; - } - // required with content: - $trtype = ( ($trtype2 == 'playlist') && ($trtype == 'playlistPkg') ? - 'playlistPkg' : $trtype2); - //return PEAR::raiseError("Archive::downloadOpen: TT=$trtype TT2=$trtype2 G=$gunid"); - } - switch ($trtype) { - case "audioclip": - $res = $this->downloadRawAudioDataOpen($sessid, $gunid); - break; - case "metadata": - $res = $this->downloadMetadataOpen($sessid, $gunid); - break; - case "playlist": - $res = $this->accessPlaylist($sessid, $gunid); - break; - case "playlistPkg": - $res = $this->bsExportPlaylistOpen($gunid); - if (PEAR::isError($res)) { - return $res; - } - $tmpn = tempnam($CC_CONFIG['transDir'], 'plExport_'); - $plfpath = "$tmpn.lspl"; - copy($res['fname'], $plfpath); - $res = $this->bsExportPlaylistClose($res['token']); - if (PEAR::isError($res)) { - return $res; - } - $fname = "transported_playlist.lspl"; - $id = BasicStor::IdFromGunid($gunid); - $acc = BasicStor::bsAccess($plfpath, 'lspl', NULL, 'download'); - if (PEAR::isError($acc)) { - return $acc; - } - $url = BasicStor::GetUrlPart()."access/".basename($acc['fname']); - $chsum = md5_file($plfpath); - $size = filesize($plfpath); - $res = array( - 'url'=>$url, 'token'=>$acc['token'], - 'chsum'=>$chsum, 'size'=>$size, - 'filename'=>$fname - ); - break; - case "searchjob": - $res = $pars; - break; - case "file": - $res = array(); - break; - default: - return PEAR::raiseError("Archive::downloadOpen: NotImpl ($trtype)"); - } - if (PEAR::isError($res)) { - return $res; - } - switch ($trtype) { - case "audioclip": - case "metadata": - case "playlist": - case "playlistPkg": - $title = $this->bsGetTitle(NULL, $gunid); - break; - case "searchjob": - $title = 'searchjob'; - break; - case "file": - $title = 'regular file'; - break; - default: - } - $res['title'] = $title; - $res['trtype'] = $trtype; - return $res; - } - - - /** - * Close download transport - * - * @param string $token - * transport token - * @param string $trtype - * transport type - * @return array - * hasharray with: - * url string: writable URL - * token string: PUT token - */ - function downloadClose($token, $trtype) - { - switch ($trtype) { - case "audioclip": - $res = $this->downloadRawAudioDataClose($token); - if (PEAR::isError($res)) { - return $res; - } - return $res; - case "metadata": - $res = $this->downloadMetadataClose($token); - return $res; - case "playlist": - $res = $this->releasePlaylist(NULL/*$sessid*/, $token); - return $res; - case "playlistPkg": - $res = BasicStor::bsRelease($token, 'download'); - if (PEAR::isError($res)) { - return $res; - } - $realFname = $r['realFname']; - @unlink($realFname); - if (preg_match("|(plExport_[^\.]+)\.lspl$|", $realFname, $va)) { - list(,$tmpn) = $va; - $tmpn = $CC_CONFIG['transDir']."/$tmpn"; - if (file_exists($tmpn)) { - @unlink($tmpn); - } - } - return $res; - case "searchjob": - $res = BasicStor::bsRelease($token, 'download'); - return $res; - case "file": - return array(); - default: - return PEAR::raiseError("Archive::downloadClose: NotImpl ($trtype)"); - } - } - - - /** - * Prepare hub initiated transport - * - * @param string $target - * hostname of transport target - * @param string $trtype - * transport type - * @param string $direction - * 'up' | 'down' - * @param array $pars - * transport parameters - * @return mixed - */ - function prepareHubInitiatedTransfer( - $target, $trtype='file', $direction='up',$pars=array()) - { - $tr = new Transport($this); - $trec = TransportRecord::create($tr, $trtype, $direction, - array_merge($pars, array('target'=>$target))); - if (PEAR::isError($trec)) { - return $trec; - } - return TRUE; - } - - - /** - * List hub initiated transports - * - * @param string $target - * hostname of transport target - * @param string $direction - * 'up' | 'down' - * @param string $trtok - * transport token - * @return mixed - */ - function listHubInitiatedTransfers( - $target=NULL, $direction=NULL, $trtok=NULL) - { - $tr = new Transport($this); - $res = $tr->getTransports($direction, $target, $trtok); - return $res; - } - - - /** - * Set state of hub initiated transport - * - * @param string $target - * hostname of transport target - * @param string $trtok - * transport token - * @param string $state - * transport state - * @return TransportRecord|PEAR_Error - */ - function setHubInitiatedTransfer($target, $trtok, $state) - { - $tr = new Transport($this); - $trec = TransportRecord::recall($tr, $trtok); - if (PEAR::isError($trec)) { - return $trec; - } - $r = $trec->setState($state); - if (PEAR::isError($r)) { - return $r; - } - return $trec; - } - - /* ==================================================== auxiliary methods */ - -} // class Archive -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/conf.php b/src/modules/archiveServer/var/conf.php deleted file mode 100644 index 53370f99d..000000000 --- a/src/modules/archiveServer/var/conf.php +++ /dev/null @@ -1,138 +0,0 @@ - - *
dsn
datasource setting - *
tblNamePrefix
prefix for table names in the database - *
authCookieName
secret token cookie name - *
storageDir
main directory for storing binary media files - *
bufferDir
directory for temporary files - *
transDir
directory for incomplete transferred files - *
accessDir
directory for symlinks to accessed files - *
isArchive
local/central flag - *
validate
enable/disable validator - *
useTrash
enable/disable safe delete (move to trash) - * (FALSE on archiveServer) - *
storageUrlPath
path-URL-part of storageServer base dir - * (on central archive side: storage=archive) - *
storageXMLRPC
XMLRPC server script address relative to storageUrlPath - *
storageUrlHost, storageUrlPort
host and port of storageServer - *
archiveUrlPath
path-URL-part of archiveServer base dir - *
archiveXMLRPC
XMLRPC server script address relative to archiveUrlPath - *
archiveUrlHost, archiveUrlPort
host and port of archiveServer - * - */ - -// these are the default values for the config - -$CC_CONFIG = array( - /* ================================================== basic configuration */ - 'dsn' => array( - 'username' => 'test', - 'password' => 'test', - 'hostspec' => 'localhost', - 'phptype' => 'pgsql', - 'database' => 'Campcaster-test', - ), - 'tblNamePrefix' => 'as_', - - /* ================================================ storage configuration */ - 'authCookieName'=> 'assid', - 'AdminsGr' => 'Admins', - 'StationPrefsGr'=> '', - 'AllGr' => 'All', - 'storageDir' => dirname(__FILE__).'/../../archiveServer/var/stor', - 'bufferDir' => dirname(__FILE__).'/../../archiveServer/var/stor/buffer', - 'transDir' => dirname(__FILE__).'/../../archiveServer/var/trans', - 'accessDir' => dirname(__FILE__).'/../../archiveServer/var/access', - 'pearPath' => dirname(__FILE__).'/../../../../usr/lib/pear', - 'isArchive' => TRUE, - 'validate' => TRUE, - 'useTrash' => FALSE, - - /* ==================================================== URL configuration */ - // on central archive side: archive is the storage ! - 'storageUrlPath' => '/campcasterArchiveServer', - 'storageXMLRPC' => 'xmlrpc/xrArchive.php', - 'storageUrlHost' => 'localhost', - 'storageUrlPort' => 80, - // have to be another remote archive: - #'archiveUrlPath' => '/campcasterArchiveServer', - #'archiveXMLRPC' => 'xmlrpc/xrArchive.php', - #'archiveUrlHost' => 'localhost', - #'archiveUrlPort' => 80, - - /* ==================================== application-specific configuration */ - 'objtypes' => array( - 'Storage' => array(/*'Folder',*/ 'File' /*, 'Replica'*/), -// 'Folder' => array('Folder', 'File', 'Replica'), - 'File' => array(), - 'audioclip' => array(), - 'playlist' => array(), -// 'Replica' => array(), - ), - 'allowedActions'=> array( -// 'Folder' => array('editPrivs', 'write', 'read'), - 'File' => array('editPrivs', 'write', 'read'), - 'audioclip' => array('editPrivs', 'write', 'read'), - 'playlist' => array('editPrivs', 'write', 'read'), -// 'Replica' => array('editPrivs', 'write', 'read'), -// '_class' => array('editPrivs', 'write', 'read'), - ), - 'allActions' => array( - 'editPrivs', 'write', 'read', /*'classes',*/ 'subjects' - ), - - /* ============================================== auxiliary configuration */ - 'tmpRootPass' => 'q', -); - -// Add database table names -$CC_CONFIG['filesTable'] = $CC_CONFIG['tblNamePrefix'].'files'; -$CC_CONFIG['mdataTable'] = $CC_CONFIG['tblNamePrefix'].'mdata'; -$CC_CONFIG['accessTable'] = $CC_CONFIG['tblNamePrefix'].'access'; -$CC_CONFIG['permTable'] = $CC_CONFIG['tblNamePrefix'].'perms'; -$CC_CONFIG['sessTable'] = $CC_CONFIG['tblNamePrefix'].'sess'; -$CC_CONFIG['subjTable'] = $CC_CONFIG['tblNamePrefix'].'subjs'; -$CC_CONFIG['smembTable'] = $CC_CONFIG['tblNamePrefix'].'smemb'; -$CC_CONFIG['transTable'] = $CC_CONFIG['tblNamePrefix'].'trans'; -$CC_CONFIG['prefTable'] = $CC_CONFIG['tblNamePrefix'].'pref'; - -$CC_CONFIG['sysSubjs'] = array( - 'root', $CC_CONFIG['AdminsGr'], $CC_CONFIG['AllGr'], $CC_CONFIG['StationPrefsGr'] -); -$old_ip = get_include_path(); -set_include_path('.'.PATH_SEPARATOR.$CC_CONFIG['pearPath'].PATH_SEPARATOR.$old_ip); - -// -// See if a ~/.campcaster/archiveServer.conf.php exists, and -// overwrite the settings from there, if any. -// -$this_file = null; -if (isset($_SERVER["SCRIPT_FILENAME"])) { - $this_file = $_SERVER["SCRIPT_FILENAME"]; -} elseif(isset($argv[0])) { - $this_file = $argv[0]; -} - -if (!is_null($this_file)) { - $fileowner_id = fileowner($this_file); - $fileowner_array = posix_getpwuid($fileowner_id); - $fileowner_homedir = $fileowner_array['dir']; - $home_conf = $fileowner_homedir . '/.campcaster/archiveServer.conf.php'; - if (file_exists($home_conf)) { - $default_config = $CC_CONFIG; - include($home_conf); - $user_config = $CC_CONFIG; - $CC_CONFIG = $user_config + $default_config; - } -} - -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/conf.php.template b/src/modules/archiveServer/var/conf.php.template deleted file mode 100644 index ca051ab8a..000000000 --- a/src/modules/archiveServer/var/conf.php.template +++ /dev/null @@ -1,120 +0,0 @@ - - *
dsn
datasource setting - *
tblNamePrefix
prefix for table names in the database - *
authCookieName
secret token cookie name - *
storageDir
main directory for storing binary media files - *
bufferDir
directory for temporary files - *
transDir
directory for incomplete transferred files - *
accessDir
directory for symlinks to accessed files - *
isArchive
local/central flag - *
validate
enable/disable validator - *
useTrash
enable/disable safe delete (move to trash) - * (FALSE on archiveServer) - *
storageUrlPath
path-URL-part of storageServer base dir - * (on central archive side: storage=archive) - *
storageXMLRPC
XMLRPC server script address relative to storageUrlPath - *
storageUrlHost, storageUrlPort
host and port of storageServer - *
archiveUrlPath
path-URL-part of archiveServer base dir - *
archiveXMLRPC
XMLRPC server script address relative to archiveUrlPath - *
archiveUrlHost, archiveUrlPort
host and port of archiveServer - * - */ - -// these are the default values for the config - -$CC_CONFIG = array( - /* ================================================== basic configuration */ - 'dsn' => array( - 'username' => 'ls_dbuser', - 'password' => 'ls_dbpassword', - 'hostspec' => 'ls_dbserver', - 'phptype' => 'pgsql', - 'database' => 'ls_database', - ), - 'tblNamePrefix' => 'as_', - - /* ================================================ storage configuration */ - 'authCookieName'=> 'assid', - 'AdminsGr' => 'Admins', - 'StationPrefsGr'=> '', - 'AllGr' => 'All', - 'storageDir' => dirname(__FILE__).'/../../archiveServer/var/stor', - 'bufferDir' => dirname(__FILE__).'/../../archiveServer/var/stor/buffer', - 'transDir' => dirname(__FILE__).'/../../archiveServer/var/trans', - 'accessDir' => dirname(__FILE__).'/../../archiveServer/var/access', - 'pearPath' => 'ls_lib_dir/pear', - 'isArchive' => TRUE, - 'validate' => TRUE, - 'useTrash' => FALSE, - - /* ==================================================== URL configuration */ - // on central archive side: archive is the storage ! - 'storageUrlPath' => 'ls_storageUrlPath', - 'storageXMLRPC' => 'xmlrpc/xrArchive.php', - 'storageUrlHost' => 'ls_php_host', - 'storageUrlPort' => ls_php_port, - // have to be another remote archive: - #'archiveUrlPath' => 'ls_archiveUrlPath', - #'archiveXMLRPC' => 'xmlrpc/xrArchive.php', - #'archiveUrlHost' => 'ls_php_host', - #'archiveUrlPort' => ls_php_port, - - /* ==================================== aplication-specific configuration */ - 'objtypes' => array( - 'RootNode' => array('Folder'), - 'Storage' => array('Folder', 'File', 'Replica'), - 'Folder' => array('Folder', 'File', 'Replica'), - 'File' => array(), - 'audioclip' => array(), - 'playlist' => array(), - 'Replica' => array(), - ), - 'allowedActions'=> array( - 'RootNode' => array('classes', 'subjects'), - 'Folder' => array('editPrivs', 'write', 'read'), - 'File' => array('editPrivs', 'write', 'read'), - 'audioclip' => array('editPrivs', 'write', 'read'), - 'playlist' => array('editPrivs', 'write', 'read'), - 'Replica' => array('editPrivs', 'write', 'read'), - '_class' => array('editPrivs', 'write', 'read'), - ), - 'allActions' => array( - 'editPrivs', 'write', 'read', 'classes', 'subjects' - ), - - /* ============================================== auxiliary configuration */ - 'RootNode' => 'RootNode', - 'tmpRootPass' => 'q', -); - -// Add database table names -$CC_CONFIG['filesTable'] = $CC_CONFIG['tblNamePrefix'].'files'; -$CC_CONFIG['mdataTable'] = $CC_CONFIG['tblNamePrefix'].'mdata'; -$CC_CONFIG['accessTable'] = $CC_CONFIG['tblNamePrefix'].'access'; -$CC_CONFIG['permTable'] = $CC_CONFIG['tblNamePrefix'].'perms'; -$CC_CONFIG['sessTable'] = $CC_CONFIG['tblNamePrefix'].'sess'; -$CC_CONFIG['subjTable'] = $CC_CONFIG['tblNamePrefix'].'subjs'; -$CC_CONFIG['smembTable'] = $CC_CONFIG['tblNamePrefix'].'smemb'; -$CC_CONFIG['classTable'] = $CC_CONFIG['tblNamePrefix'].'classes'; -$CC_CONFIG['cmembTable'] = $CC_CONFIG['tblNamePrefix'].'cmemb'; -$CC_CONFIG['treeTable'] = $CC_CONFIG['tblNamePrefix'].'tree'; -$CC_CONFIG['structTable'] = $CC_CONFIG['tblNamePrefix'].'struct'; -$CC_CONFIG['transTable'] = $CC_CONFIG['tblNamePrefix'].'trans'; -$CC_CONFIG['prefTable'] = $CC_CONFIG['tblNamePrefix'].'pref'; - -$CC_CONFIG['sysSubjs'] = array( - 'root', $CC_CONFIG['AdminsGr'], $CC_CONFIG['AllGr'], $CC_CONFIG['StationPrefsGr'] -); -$old_ip = get_include_path(); -set_include_path('.'.PATH_SEPARATOR.$CC_CONFIG['pearPath'].PATH_SEPARATOR.$old_ip); -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/conf_only.php.template b/src/modules/archiveServer/var/conf_only.php.template deleted file mode 100644 index 9b922e504..000000000 --- a/src/modules/archiveServer/var/conf_only.php.template +++ /dev/null @@ -1,50 +0,0 @@ - - *
dsn
datasource setting - *
tblNamePrefix
prefix for table names in the database - *
authCookieName
secret token cookie name - *
storageDir
main directory for storing binary media files - *
bufferDir
directory for temporary files - *
transDir
directory for incomplete transferred files - *
accessDir
directory for symlinks to accessed files - *
isArchive
local/central flag - *
storageUrlPath
path-URL-part of storageServer base dir - * (on central archive side: storage=archive) - *
storageXMLRPC
XMLRPC server script address relative to storageUrlPath - *
storageUrlHost, storageUrlPort
host and port of storageServer - *
archiveUrlPath
path-URL-part of archiveServer base dir - *
archiveXMLRPC
XMLRPC server script address relative to archiveUrlPath - *
archiveUrlHost, archiveUrlPort
host and port of archiveServer - * - */ -$CC_CONFIG = array( - /* ================================================== basic configuration */ - 'dsn' => array( - 'username' => 'ls_dbuser', - 'password' => 'ls_dbpassword', - 'hostspec' => 'ls_dbserver', - 'phptype' => 'pgsql', - 'database' => 'ls_database', - ), - - /* ==================================================== URL configuration */ - // on central archive side: archive is the storage ! - 'storageUrlPath' => 'ls_archiveUrlPath', - 'storageXMLRPC' => 'xmlrpc/xrArchive.php', - 'storageUrlHost' => 'ls_php_host', - 'storageUrlPort' => ls_php_port, - // have to be another remote archive: - #'archiveUrlPath' => 'ls_archiveUrlPath', - #'archiveXMLRPC' => 'xmlrpc/xrArchive.php', - #'archiveUrlHost' => 'ls_php_host', - #'archiveUrlPort' => ls_php_port, - -); -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/index.php b/src/modules/archiveServer/var/index.php deleted file mode 100644 index 413063483..000000000 --- a/src/modules/archiveServer/var/index.php +++ /dev/null @@ -1,21 +0,0 @@ - - -ArchiveServer module - -

ArchiveServer module

-
-HTML client
-XmlRpc test
-Test
- - \ No newline at end of file diff --git a/src/modules/archiveServer/var/install/getGname.php b/src/modules/archiveServer/var/install/getGname.php deleted file mode 100644 index 5ca61114f..000000000 --- a/src/modules/archiveServer/var/install/getGname.php +++ /dev/null @@ -1,10 +0,0 @@ - \ No newline at end of file diff --git a/src/modules/archiveServer/var/install/getWwwRoot.php b/src/modules/archiveServer/var/install/getWwwRoot.php deleted file mode 100644 index 46c5ca82a..000000000 --- a/src/modules/archiveServer/var/install/getWwwRoot.php +++ /dev/null @@ -1,10 +0,0 @@ - \ No newline at end of file diff --git a/src/modules/archiveServer/var/install/getXrUrl.php b/src/modules/archiveServer/var/install/getXrUrl.php deleted file mode 100644 index 02bc1fe6b..000000000 --- a/src/modules/archiveServer/var/install/getXrUrl.php +++ /dev/null @@ -1,10 +0,0 @@ - \ No newline at end of file diff --git a/src/modules/archiveServer/var/install/index.php b/src/modules/archiveServer/var/install/index.php deleted file mode 100644 index 753cbc635..000000000 --- a/src/modules/archiveServer/var/install/index.php +++ /dev/null @@ -1,5 +0,0 @@ - \ No newline at end of file diff --git a/src/modules/archiveServer/var/install/install.php b/src/modules/archiveServer/var/install/install.php deleted file mode 100644 index e215a4f6b..000000000 --- a/src/modules/archiveServer/var/install/install.php +++ /dev/null @@ -1,37 +0,0 @@ - \ No newline at end of file diff --git a/src/modules/archiveServer/var/install/uninstall.php b/src/modules/archiveServer/var/install/uninstall.php deleted file mode 100644 index 9e7cd84c7..000000000 --- a/src/modules/archiveServer/var/install/uninstall.php +++ /dev/null @@ -1,36 +0,0 @@ - \ No newline at end of file diff --git a/src/modules/archiveServer/var/xmlrpc/XR_Archive.php b/src/modules/archiveServer/var/xmlrpc/XR_Archive.php deleted file mode 100644 index 4d3a9eede..000000000 --- a/src/modules/archiveServer/var/xmlrpc/XR_Archive.php +++ /dev/null @@ -1,222 +0,0 @@ -uploadOpen($r['sessid'], $r['chsum']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_uploadOpen: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * Check state of file upload - * - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_uploadCheck($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - $res = $this->uploadCheck($r['token']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_uploadCheck: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_uploadClose($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - $res = $this->uploadClose($r['token'], $r['trtype'], $r['pars']); - if (PEAR::isError($res)) { - $code = 803; - // Special case for duplicate file - give back - // different error code so we can display nice user message. - if ($res->getCode() == GBERR_GUNID) { - $code = 888; - } - return new XML_RPC_Response(0, $code, - "xr_uploadClose: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - } - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_downloadOpen($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - $res = $this->downloadOpen($r['sessid'], $r['trtype'], $r['pars']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_downloadOpen: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_downloadClose($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - $res = $this->downloadClose($r['token'], $r['trtype']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_downloadClose: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_prepareHubInitiatedTransfer($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - foreach (array('trtype'=>NULL, 'direction'=>'up', 'pars'=>array()) as $k => $dv) { - if (!isset($r[$k])) { - $r[$k] = $dv; - } - } - $res = $this->prepareHubInitiatedTransfer( - $r['target'], $r['trtype'], $r['direction'], $r['pars']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_prepareHubInitiatedTransfer: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_listHubInitiatedTransfers($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - foreach (array('target'=>NULL, 'direction'=>NULL, 'trtok'=>NULL) as $k=>$dv) { - if (!isset($r[$k])) { - $r[$k] = $dv; - } - } - $res = $this->listHubInitiatedTransfers( - $r['target'], $r['direction'], $r['trtok']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_listHubInitiatedTransfers: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - - /** - * @param XML_RPC_Message $input - * @return XML_RPC_Response - */ - function xr_setHubInitiatedTransfer($input) - { - list($ok, $r) = XR_LocStor::xr_getParams($input); - if (!$ok) { - return $r; - } - $res = $this->setHubInitiatedTransfer( - $r['target'], $r['trtok'], $r['state']); - if (PEAR::isError($res)) - return new XML_RPC_Response(0, 803, - "xr_setHubInitiatedTransfer: ".$res->getMessage(). - " ".$res->getUserInfo() - ); - return new XML_RPC_Response(XML_RPC_encode($res)); - } - - -} - -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/xmlrpc/put.php b/src/modules/archiveServer/var/xmlrpc/put.php deleted file mode 100644 index 08b47c26f..000000000 --- a/src/modules/archiveServer/var/xmlrpc/put.php +++ /dev/null @@ -1,99 +0,0 @@ - - *
  • token : string, put token returned by appropriate - * XMLRPC call
  • - * - * - * On success, returns HTTP return code 200. - * - * On errors, returns HTTP return code >200 - * The possible error codes are: - *
      - *
    • 400 - Incorrect parameters passed to method
    • - *
    • 403 - Access denied
    • - *
    • 500 - Application error
    • - *
    - * - * @see XR_LocStor - * @package Campcaster - * @subpackage ArchiveServer - */ - -define('USE_FLOCK', TRUE); - -require_once(dirname(__FILE__).'/../conf.php'); -require_once('DB.php'); -require_once(dirname(__FILE__).'/../Archive.php'); - -PEAR::setErrorHandling(PEAR_ERROR_RETURN); -$CC_DBC = DB::connect($CC_CONFIG['dsn'], TRUE); -$CC_DBC->setFetchMode(DB_FETCHMODE_ASSOC); -$gb = new Archive($CC_DBC, $CC_CONFIG); - -function http_error($code, $err) -{ - header("HTTP/1.1 $code"); - header("Content-type: text/plain; charset=UTF-8"); - echo "$err\r\n"; - flush(); - exit; -} - -if (preg_match("|^[0-9a-fA-F]{16}$|", $_REQUEST['token'])) { - $token = $_REQUEST['token']; -} else { - http_error(400, "Error on token parameter. ({$_REQUEST['token']})"); -} - -$tc = BasicStor::bsCheckToken($token, 'put'); -if (PEAR::isError($tc)) { - http_error(500, $ex->getMessage()); -} -if (!$tc) { - http_error(403, "put.php: Token not valid ($token)."); -} - -header("Content-type: text/plain"); - -$destfile = "{$CC_CONFIG['accessDir']}/{$token}"; - -/* PUT data comes in on the input stream */ -$putdata = @fopen("php://input", "r") or - http_error(500, "put.php: Can't read input"); - -/* Open a file for writing */ -$fp = @fopen($destfile, "ab") or - http_error(500, "put.php: Can't write to destination file (token=$token)"); - -if ( USE_FLOCK ) { - // lock the file - $lockres = flock($fp,LOCK_EX+LOCK_NB); - if ($lockres !== TRUE) { - http_error(409, "put.php: file locked (token=$token)"); - } -} - -/* Read the data 1 KB at a time and write to the file */ -while ($data = fread($putdata, 1024)){ - fwrite($fp, $data); -} - -if ( USE_FLOCK ) { - // unlock the file - flock($fp,LOCK_UN); -} - -/* Close the streams */ -fclose($fp); -fclose($putdata); - -header("HTTP/1.1 200"); -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/xmlrpc/testRunner.sh b/src/modules/archiveServer/var/xmlrpc/testRunner.sh deleted file mode 100755 index d7effcf5e..000000000 --- a/src/modules/archiveServer/var/xmlrpc/testRunner.sh +++ /dev/null @@ -1,367 +0,0 @@ -#!/bin/bash - -#DEBUG=yes -#DEBUG_I=yes - -COMM=$1 -shift -GUNID=$1 - -#METADATA=" -#ěščřžé" -XMETADATA=" - - - clip 1 - 00:00:11 - -" -METADATA=" - - - Media title testRunner - 00:00:03.000000 - -" -METAREGEX="(<\\?xml version=\"1\\.0\"( encoding=\"UTF-8\")?\\?> )?\ -\ -\ -Media title testRunner\ - 00:00:03\\.000000\ - [0-9]{4}(-[0-9]{2}){2}T[0-9]{2}(:[0-9]{2}){2}([-+][0-9]{1,2}:[0-9]{2})?\ -\ -" - -echo "" -XRDIR=`dirname $0` -XMLRPC=`cd var/install; php -q getXrUrl.php` || exit $? -echo "# storageServer XMLRPC URL: $XMLRPC" - -cd $XRDIR -#XR_CLI="./xr_cli_test.py -s ${XMLRPC}" -XR_CLI="php -q xr_cli_test.php -s ${XMLRPC}" - -login() { - echo -n "# login: " - SESSID=`$XR_CLI login root q` || \ - { ERN=$?; echo $SESSID; exit $ERN; } - echo "sessid: $SESSID" -} - -test() { - echo "# test: " - $XR_CLI test $SESSID stringForUppercase || exit $? -} - -existsAudioClip() { - echo -n "# existsAudioClip (${GUNID}): " - $XR_CLI existsAudioClip $SESSID $GUNID || exit $? -} - -storeAudioClip() { - MEDIA=../../../storageServer/var/tests/ex1.mp3 - MD5=`md5sum $MEDIA`; for i in $MD5; do MD5=$i; break; done - if [ $DEBUG_I ]; then echo "md5=$MD5"; fi - echo -n "# storeAudioClipOpen: " - RES=`$XR_CLI storeAudioClipOpen "$SESSID" '' "$METADATA" "stored file.mp3" "$MD5"` || \ - { ERN=$?; echo $RES; exit $ERN; } - unset URL - for i in $RES; do if [ -z $URL ] ; then URL=$i; else TOKEN=$i; fi; done - echo $TOKEN - if [ $DEBUG_I ]; then echo $URL; fi - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo -n "# curl (PUT): " - curl -C 0 -T $MEDIA $URL || { ERN=$?; echo $RGUNID; exit $ERN; } - echo "status: $?" - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo -n "# storeAudioClipClose: " - RGUNID=`$XR_CLI storeAudioClipClose "$SESSID" "$TOKEN"` || \ - { ERN=$?; echo $RGUNID; exit $ERN; } - echo $RGUNID -} - -accessRawAudioData() { - echo -n "# accessRawAudioData: " - RES=`$XR_CLI accessRawAudioData $SESSID $GUNID` || \ - { ERN=$?; echo $RES; exit $ERN; } - unset URL - for i in $RES; do if [ -z $URL ] ; then URL=$i; else TOKEN=$i; fi; done - echo $TOKEN - if [ $DEBUG_I ]; then echo $URL; fi - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo -n "# releaseRawAudioData: " - $XR_CLI releaseRawAudioData $SESSID $TOKEN || exit $? -} - -downloadRAD() { - echo -n "# downloadRawAudioDataOpen: " - RES=`$XR_CLI downloadRawAudioDataOpen $SESSID $GUNID` || \ - { ERN=$?; echo $RES; exit $ERN; } - unset URL - for i in $RES; do if [ -z $URL ] ; then URL=$i; else TOKEN=$i; fi; done - echo $TOKEN - if [ $DEBUG_I ]; then echo $URL; fi - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo -n "# curl: " - curl -Ifs $URL > /dev/null || { ERN=$?; echo $URL; exit $ERN; } - echo "status: $?" - echo -n "# downloadRawAudioDataClose: " - $XR_CLI downloadRawAudioDataClose $SESSID $TOKEN || exit $? -} - -downloadMeta() { - echo -n "# downloadMetadataOpen: " - RES=`$XR_CLI downloadMetadataOpen $SESSID $GUNID` || \ - { ERN=$?; echo $RES; exit $ERN; } - unset URL - for i in $RES; do if [ -z $URL ] ; then URL=$i; else TOKEN=$i; fi; done - echo $TOKEN - if [ $DEBUG_I ]; then echo $URL; fi - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo -n "# curl: " - METAOUT=`curl -fs $URL;` || { ERN=$?; echo $RES; exit $ERN; } - echo "OK" - if [ $DEBUG_I ]; then echo $METAOUT; echo -n "Press enter ..."; read KEY; fi - echo -n "# metadata check:" - METAOUT=`echo $METAOUT | sed -e 's/\\n/ /g'` - if [[ "x$METAOUT" =~ "x$METAREGEX" ]]; then - echo " OK" - else - echo " NOT MATCH ($?)" - echo " Expected match to regex:"; echo $METAREGEX - echo " Downloaded:"; echo $METAOUT - exit 1 - fi - echo -n "# downloadMetadataClose: " - $XR_CLI downloadMetadataClose $SESSID $TOKEN || exit $? -} - -deleteAudioClip() { - echo -n "# deleteAudioClip: " -# disabled: -# $XR_CLI deleteAudioClip $SESSID $GUNID || exit $? - $XR_CLI deleteAudioClip $SESSID $GUNID 0 -} - -updateAudioClipMetadata() { - echo -n "#updateAudioClipMetadata: " - $XR_CLI updateAudioClipMetadata $SESSID $GUNID "$METADATA" || exit $? -} - -getAudioClip() { - echo -n "#getAudioClip: " - $XR_CLI getAudioClip $SESSID $GUNID || exit $? -} - -searchMetadata() { - echo -n "# searchMetadata: " -# $XR_CLI searchMetadata $SESSID '../tests/srch_cri1.xml' || exit $? - $XR_CLI searchMetadata $SESSID 'John %' || exit $? -} - -PLID="123456789abcdef8" - -createPlaylist() { - echo -n "# createPlaylist: " - $XR_CLI createPlaylist $SESSID $PLID "newPlaylist.xml" || exit $? -} - -accessPlaylist() { - echo -n "# accessPlaylist: " - RES=`$XR_CLI accessPlaylist $SESSID $PLID` || \ - { ERN=$?; echo $RES; exit $ERN; } - unset URL - for i in $RES; do if [ -z $URL ] ; then URL=$i; else TOKEN=$i; fi; done - echo $TOKEN - if [ $DEBUG_I ]; then echo $URL; fi - echo "# curl: " - CURLOUT=`curl -fs $URL;` || { ERN=$?; echo $RES; exit $ERN; } - if [ $DEBUG ]; then echo $CURLOUT; fi - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo "# status: $?" - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - echo -n "# releasePlaylist: " - $XR_CLI releasePlaylist $SESSID $TOKEN || exit $? -} - -editPlaylist() { - DATE=`date '+%H:%M:%S'` - PLAYLIST=" - - - XY $DATE - - - " - echo -n "# editPlaylist: " - RES=`$XR_CLI editPlaylist $SESSID $PLID` || \ - { ERN=$?; echo $RES; exit $ERN; } - unset URL - for i in $RES; do if [ -z $URL ] ; then URL=$i; else TOKEN=$i; fi; done - echo $TOKEN -# deletePlaylist - if [ $DEBUG_I ]; then echo $URL; fi - if [ $DEBUG_I ]; then echo -n "Press enter ..."; read KEY; fi - if [ $DEBUG_I ]; then echo " Playlist:"; echo $PLAYLIST; fi - echo -n "# savePlaylist: " - $XR_CLI savePlaylist $SESSID $TOKEN "$PLAYLIST" || exit $? -} - -existsPlaylist() { - echo -n "# existsPlaylist (${PLID}): " - $XR_CLI existsPlaylist $SESSID $PLID || exit $? -} - -deletePlaylist() { - echo -n "# deletePlaylist (${PLID}): " - $XR_CLI deletePlaylist $SESSID $PLID - # || exit $? - echo "# status: $?" -} - -prefTest() { - PREFKEY="testKey" - PREFVAL="test preference value" - echo -n "# savePref: " - $XR_CLI savePref $SESSID "$PREFKEY" "$PREFVAL"|| exit $? - echo -n "# loadPref: " - VAL=`$XR_CLI loadPref $SESSID "$PREFKEY"` || \ - { ERN=$?; echo $VAL; exit $ERN; } - echo "$VAL " - if [ "x$VAL" != "x$PREFVAL" ] ; then - echo " NOT MATCH" - echo " Expected:"; echo $PREFVAL - echo " Returned:"; echo $VAL - exit 1 - else - echo "# pref value check: OK" - fi - echo -n "# delPref: " - $XR_CLI delPref $SESSID "$PREFKEY"|| exit $? - if [ $DEBUG ]; then - echo -n "# loadPref: " - VAL=`$XR_CLI loadPref $SESSID "$PREFKEY"` || echo $? - else - echo $VAL - fi -} - -logout() { - echo -n "# logout: " - $XR_CLI logout $SESSID || exit $? -} - -preferenceTest(){ - echo "#XMLRPC preference test" - login - prefTest - logout - echo "#XMLRPC: preference: OK." - echo "" -} - -playlistTest(){ - echo "#XMLRPC playlists test" - login - existsPlaylist - deletePlaylist - createPlaylist - existsPlaylist - accessPlaylist - editPlaylist - accessPlaylist - deletePlaylist - existsPlaylist - logout - echo "#XMLRPC: playlists: OK." - echo "" -} - -storageTest(){ - echo "#XMLRPC: storage test" - login - storeAudioClip - GUNID=$RGUNID - existsAudioClip - accessRawAudioData - downloadRAD - downloadMeta - deleteAudioClip - existsAudioClip - logout - echo "#XMLRPC: storage: OK." - echo "" -} - -usage(){ - echo "Usage: $0 [] [args]" - echo -e "commands:\n test\n existsAudioClip\n accessRawAudioData" - echo -e " storeAudioClip\n deleteAudioClip\n updateAudioClipMetadata" - echo -e " getAudioClip\n searchMetadata\n" - echo -e " preferences\n playlists\n storage\n" -} - -if [ "$COMM" == "test" ]; then - login - test - logout -elif [ "$COMM" == "existsAudioClip" ]; then - login - existsAudioClip - logout -elif [ "$COMM" == "accessRawAudioData" ]; then - login - accessRawAudioData - logout -elif [ "$COMM" == "storeAudioClip" ]; then - login - storeAudioClip - logout -elif [ "$COMM" == "deleteAudioClip" ]; then - login - deleteAudioClip - logout -elif [ "$COMM" == "updateAudioClipMetadata" ]; then - login - updateAudioClipMetadata - logout -elif [ "$COMM" == "getAudioClip" ]; then - login - getAudioClip - logout -elif [ "$COMM" == "searchMetadata" ]; then - login - searchMetadata - logout -elif [ "$COMM" == "preferences" ]; then - preferenceTest -elif [ "$COMM" == "playlists" ]; then - playlistTest -elif [ "$COMM" == "storage" ]; then - storageTest -elif [ "x$COMM" == "x" ]; then - storageTest -# playlistTest -# preferenceTest -elif [ "$COMM" == "help" ]; then - usage -else - echo "Unknown command" - usage -fi diff --git a/src/modules/archiveServer/var/xmlrpc/xrArchive.php b/src/modules/archiveServer/var/xmlrpc/xrArchive.php deleted file mode 100644 index c74e60f9a..000000000 --- a/src/modules/archiveServer/var/xmlrpc/xrArchive.php +++ /dev/null @@ -1,138 +0,0 @@ - - - - - - -faultCode -804 - - -faultString -"); -ini_set("error_append_string", " - - - - -"); -header("Content-type: text/xml"); - -/* ================================================================= includes */ -require_once(dirname(__FILE__).'/../conf.php'); -require_once('DB.php'); -require_once("XML/RPC/Server.php"); -require_once('XR_Archive.php'); - -/* ============================================ setting default error handler */ -function errHndl($errno, $errmsg, $filename, $linenum, $vars) -{ - switch ($errno) { - case E_WARNING: - case E_NOTICE: - case E_USER_WARNING: - case E_USER_NOTICE: - return; - break; - default: - $xr = new XML_RPC_Response(0, 805, - htmlspecialchars("ERROR:xrLocStor: $errno $errmsg ($filename:$linenum)")); - header("Content-type: text/xml"); - echo $xr->serialize(); - exit($errno); - } -} -$old_error_handler = set_error_handler("errHndl", E_ALL); - - -/* ============================================================= runable code */ -$CC_DBC =& DB::connect($CC_CONFIG['dsn'], TRUE); -if (PEAR::isError($CC_DBC)) { - trigger_error("DB::connect: ".$CC_DBC->getMessage()." ".$CC_DBC->getUserInfo(),E_USER_ERROR); -} -$CC_DBC->setErrorHandling(PEAR_ERROR_RETURN); -$CC_DBC->setFetchMode(DB_FETCHMODE_ASSOC); - -$archive = new XR_Archive($CC_DBC, $CC_CONFIG); - -$methods = array( - 'test' => 'Tests toupper and checks sessid, params: '. - 'teststring, sessid.', - 'getVersion' => 'Dummy function for connection testing.', - 'authenticate' => 'Checks authentication.', - 'login' => 'Login to storage.', - 'logout' => 'Logout from storage.', - 'existsAudioClip' => 'Checks if an Audio clip with the specified '. - 'id is stored in local storage.', - 'storeAudioClipOpen' => 'Open channel for store a new audio clip '. - 'or replace an existing one.', - 'storeAudioClipClose' => 'Close channel for store a new audio clip'. - ' or replace an existing one.', - 'downloadRawAudioDataOpen'=> 'Create and return downloadable URL'. - 'for audio file', - 'downloadRawAudioDataClose'=>'Discard downloadable URL for audio file', - 'downloadMetadataOpen' => 'Create and return downloadable URL'. - 'for metadata', - 'downloadMetadataClose' => 'Discard downloadable URL for metadata', - 'openPut' => 'openPut', - 'closePut' => 'closePut', - 'deleteAudioClip' => 'Delete an existing Audio clip.', - 'updateAudioClipMetadata' => 'Update the metadata of an Audio clip '. - 'stored in Local storage.', - 'searchMetadata' => 'Search through the metadata of stored '. - 'AudioClips, return all matching clip ids.', - 'accessRawAudioData' => 'Get access to raw audio data.', - 'releaseRawAudioData' => 'Release access to raw audio data.', - 'getAudioClip' => 'Return the contents of an Audio clip.', - 'resetStorage' => 'Reset storageServer for debugging.', - 'createPlaylist' => 'Create a new Playlist metafile.', - 'editPlaylist' => 'Open a Playlist metafile for editing.', - 'savePlaylist' => 'Save a Playlist metafile.', - 'deletePlaylist' => 'Delete a Playlist metafile.', - 'accessPlaylist' => 'Open readable URL to a Playlist metafile.', - 'releasePlaylist' => 'Release readable URL from accessPlaylist.', - 'existsPlaylist' => 'Check whether a Playlist exists.', - 'playlistIsAvailable' => 'Check whether a Playlist is available '. - 'for editing.', - - 'uploadOpen' => 'Open file-layer upload', - 'uploadCheck' => 'Check the checksum of uploaded file', - 'uploadClose' => 'Close file-layer upload', - 'downloadOpen' => 'Open file-layer download', -// 'downloadCheck' => 'Check the checksum of downloaded file', - 'downloadClose' => 'Close file-layer download', - 'prepareHubInitiatedTransfer' => 'Prepare hub initiated transfer', - 'listHubInitiatedTransfers' => 'List hub initiated transfers', - 'setHubInitiatedTransfer' => 'Set state of hub initiated transfers', - 'ping' => 'Echo request', -); - -$defs = array(); -foreach($methods as $method => $description){ - $defs["archive.$method"] = array( - "function" => array(&$archive, "xr_$method"), -# "function" => "\$GLOBALS['archive']->xr_$method", - "signature" => array( - array($GLOBALS['XML_RPC_Struct'], $GLOBALS['XML_RPC_Struct']) - ), - "docstring" => $description - ); -} -$s = new XML_RPC_Server($defs); - -?> \ No newline at end of file diff --git a/src/modules/archiveServer/var/xmlrpc/xr_cli_test.php b/src/modules/archiveServer/var/xmlrpc/xr_cli_test.php deleted file mode 100644 index b43220408..000000000 --- a/src/modules/archiveServer/var/xmlrpc/xr_cli_test.php +++ /dev/null @@ -1,183 +0,0 @@ - array('m'=>"system.listMethods", 'p'=>NULL), - "methodHelp" => array('m'=>"system.methodHelp", 'p'=>0), - "methodSignature" => array('m'=>"system.methodSignature", 'p'=>0), - "test" => - array('m'=>"archive.test", 'p'=>array('sessid', 'teststring')), - "getVersion" => array('m'=>"archive.getVersion", - 'p'=>array(), 'r'=>'version'), - "authenticate" => array('m'=>"archive.authenticate", - 'p'=>array('login', 'pass'), 'r'=>'authenticate'), - "login" => array('m'=>"archive.login", - 'p'=>array('login', 'pass'), 'r'=>'sessid'), - "logout" => array('m'=>"archive.logout", - 'p'=>array('sessid'), 'r'=>'status'), - - "storeAudioClipOpen" => array('m'=>"archive.storeAudioClipOpen", - 'p'=>array('sessid', 'gunid', 'metadata', 'fname', 'chsum'), - 'r'=>array('url', 'token') - ), - "storeAudioClipClose" => array('m'=>"archive.storeAudioClipClose", - 'p'=>array('sessid', 'token'), 'r'=>'gunid'), - "accessRawAudioData" => array('m'=>"archive.accessRawAudioData", - 'p'=>array('sessid', 'gunid'), 'r'=>array('url', 'token')), - "releaseRawAudioData" => array('m'=>"archive.releaseRawAudioData", - 'p'=>array('sessid', 'token'), 'r'=>'status'), - "downloadRawAudioDataOpen" => - array('m'=>"archive.downloadRawAudioDataOpen", - 'p'=>array('sessid', 'gunid'), 'r'=>array('url', 'token')), - "downloadRawAudioDataClose" => - array('m'=>"archive.downloadRawAudioDataClose", - 'p'=>array('sessid', 'token'), 'r'=>'gunid'), - "downloadMetadataOpen" => array('m'=>"archive.downloadMetadataOpen", - 'p'=>array('sessid', 'gunid'), 'r'=>array('url', 'token')), - "downloadMetadataClose" => array('m'=>"archive.downloadMetadataClose", - 'p'=>array('sessid', 'token'), 'r'=>'gunid'), - - "deleteAudioClip" => - array('m'=>"archive.deleteAudioClip", - 'p'=>array('sessid', 'gunid','forced'), 'r'=>'status'), - "existsAudioClip" => array('m'=>"archive.existsAudioClip", - 'p'=>array('sessid', 'gunid'), 'r'=>'exists'), - "getAudioClip" => array('m'=>"archive.getAudioClip", - 'p'=>array('sessid', 'gunid'), 'r'=>'metadata'), - "updateAudioClipMetadata" => array('m'=>"archive.updateAudioClipMetadata", - 'p'=>array('sessid', 'gunid', 'metadata'), 'r'=>'status'), - "searchMetadata" => array('m'=>"archive.searchMetadata", 'p'=>NULL), - "resetStorage" => array('m'=>"archive.resetStorage", 'p'=>array()), - - "createPlaylist" => array('m'=>"archive.createPlaylist", - 'p'=>array('sessid', 'plid', 'fname'), 'r'=>'plid'), - "editPlaylist" => array('m'=>"archive.editPlaylist", - 'p'=>array('sessid', 'plid'), 'r'=>array('url', 'token')), - "savePlaylist" => array('m'=>"archive.savePlaylist", - 'p'=>array('sessid', 'token', 'newPlaylist'), 'r'=>'plid'), - "deletePlaylist" => array('m'=>"archive.deletePlaylist", - 'p'=>array('sessid', 'plid'), 'r'=>'status'), - "accessPlaylist" => array('m'=>"archive.accessPlaylist", - 'p'=>array('sessid', 'plid'), 'r'=>array('url', 'token')), - "releasePlaylist" => array('m'=>"archive.releasePlaylist", - 'p'=>array('sessid', 'token'), 'r'=>'plid'), - "existsPlaylist" => array('m'=>"archive.existsPlaylist", - 'p'=>array('sessid', 'plid'), 'r'=>'exists'), - "playlistIsAvailable" => array('m'=>"archive.playlistIsAvailable", - 'p'=>array('sessid', 'plid'), 'r'=>'available'), - - "loadPref" => array('m'=>"archive.loadPref", - 'p'=>array('sessid', 'key'), 'r'=>'value'), - "savePref" => array('m'=>"archive.savePref", - 'p'=>array('sessid', 'key', 'value'), 'r'=>'status'), - "delPref" => array('m'=>"archive.delPref", - 'p'=>array('sessid', 'key'), 'r'=>'status'), - "openPut" => array('m'=>"archive.openPut", 'p'=>array()), - "closePut" => array('m'=>"archive.closePut", 'p'=>array()), - - "ping" => array('m'=>"archive.ping", 'p'=>array('par')), -); - - -$fullmethod = $infos[$method]['m']; -$pinfo = $infos[$method]['p']; -if(is_null($pinfo)){ - $parr = NULL; -}elseif(!is_array($pinfo)){ - $parr = $pars[0]; - #echo "pinfo not null and not array.\n"; exit; -}elseif(count($pinfo) == 0){ - $parr = array(); -}else{ - $parr = array(); $i=0; - foreach($pinfo as $it){ - $parr[$it] = $pars[$i++]; - } -} -switch($method){ - case 'searchMetadata': - $parr = array( - 'sessid'=>$pars[0], - 'criteria'=>array( - 'filetype'=>'audioclip', - 'operator'=>'and', - 'limit'=> 0, - 'offset'=> 0, - 'conditions'=>array( - array('cat'=>$pars[1], 'op'=>'partial', 'val'=>$pars[2]) - ) - ), - ); - break; - case 'resetStorage': - $parr = array( - 'loadSampleData'=>(boolean)$pars[0], - 'filesOnly'=>(boolean)$pars[1], - ); - break; -} -$msg = new XML_RPC_Message($fullmethod, array(XML_RPC_encode($parr))); - -if($verbose){ - echo "parr:\n"; - var_dump($parr); - echo "message:\n"; - echo $msg->serialize()."\n"; -} - -$res = $client->send($msg); -if($res->faultCode() > 0) { - echo "xr_cli_test.php: ".$res->faultString()." ".$res->faultCode()."\n"; - exit(1); -} - -if($verbose){ - echo "result:\n"; - echo $res->serialize(); -} - -$resp = XML_RPC_decode($res->value()); -if(isset($infos[$method]['r'])){ - $pom = $infos[$method]['r']; - if(is_array($pom)){ - foreach($pom as $k=>$it) $pom[$k] = $resp[$it]; - echo join(' ', $pom)."\n"; - }else switch($pom){ - case"status": - case"exists": - echo ($resp[$pom]=='1' ? "TRUE" : "FALSE" )."\n"; - break; - default: - echo "{$resp[$pom]}\n"; - } -}else{ - print_r($resp); -# echo"\n"; -} - -?> diff --git a/src/modules/htmlUI/var/ui_conf.php b/src/modules/htmlUI/var/ui_conf.php index 9171573a0..f24488156 100644 --- a/src/modules/htmlUI/var/ui_conf.php +++ b/src/modules/htmlUI/var/ui_conf.php @@ -7,6 +7,10 @@ define('UI_VERBOSE', FALSE); define('UI_WARNING', TRUE); define('UI_ERROR', TRUE); +// Note: this needs to be a variable, not a define because other +// parts of the application do not read in this file. +$WHITE_SCREEN_OF_DEATH = FALSE; + if (UI_DEBUG) { error_reporting(E_ALL); } @@ -114,6 +118,9 @@ define('UI_PL_ELEM_FADEOUT', 'fadeOut'); define('UI_BACKUPTOKEN_KEY', 'backupToken'); define('UI_RESTORETOKEN_KEY', 'restoreToken'); +if ($WHITE_SCREEN_OF_DEATH) { + echo __FILE__.':line '.__LINE__."
    "; +} require_once(dirname(__FILE__).'/../../storageServer/var/conf.php'); define('UI_VERSION', CAMPCASTER_VERSION); define('UI_VERSION_FULLNAME', 'Campcaster '.UI_VERSION); @@ -150,8 +157,17 @@ $CC_CONFIG = array_merge($CC_CONFIG, ) ); +if ($WHITE_SCREEN_OF_DEATH) { + echo __FILE__.':line '.__LINE__."
    "; +} require_once(dirname(__FILE__).'/ui_base.inc.php'); +if ($WHITE_SCREEN_OF_DEATH) { + echo __FILE__.':line '.__LINE__.": Loaded ui_base.inc.php
    "; +} require_once(dirname(__FILE__).'/../../storageServer/var/GreenBox.php'); +if ($WHITE_SCREEN_OF_DEATH) { + echo __FILE__.':line '.__LINE__.": Loaded GreenBox
    "; +} require_once(dirname(__FILE__).'/formmask/generic.inc.php'); require_once('DB.php'); diff --git a/src/modules/storageServer/bin/setupDirs.sh b/src/modules/storageServer/bin/setupDirs.sh index 225e7144d..e2ff568d4 100755 --- a/src/modules/storageServer/bin/setupDirs.sh +++ b/src/modules/storageServer/bin/setupDirs.sh @@ -28,7 +28,7 @@ WWW_ROOT=`cd var/install; php -q getWwwRoot.php` || exit $? echo " *** StorageServer bin/setupDirs.sh BEGIN" echo " *** Root URL: $WWW_ROOT" -PHP_PWD=`bin/getUrl.sh $WWW_ROOT/install/getPwd.php` || \ +PHP_PWD_COMMAND=`bin/getUrl.sh $WWW_ROOT/install/getPwd.php` || \ { errno=$? if [ $errno -eq 22 ] @@ -37,6 +37,13 @@ PHP_PWD=`bin/getUrl.sh $WWW_ROOT/install/getPwd.php` || \ fi exit $errno } +PHP_PWD=$PHP_PWD_COMMAND +# MOD_PHP may not be working, this command will tell us +if [ ${PHP_PWD_COMMAND:0:5} == '"; +} require_once("LocStor.php"); +if ($WHITE_SCREEN_OF_DEATH) { + echo __FILE__.':line '.__LINE__.": Loaded LocStor
    "; +} require_once('Prefs.php'); /** diff --git a/src/modules/storageServer/var/LocStor.php b/src/modules/storageServer/var/LocStor.php index 40947cc30..85edbc453 100644 --- a/src/modules/storageServer/var/LocStor.php +++ b/src/modules/storageServer/var/LocStor.php @@ -1,5 +1,12 @@ "; +} +require_once("Transport.php"); +if ($WHITE_SCREEN_OF_DEATH) { + echo __FILE__.':line '.__LINE__.": Loaded Transport
    "; +} /** * LocStor class @@ -1376,5 +1383,377 @@ class LocStor extends BasicStor { return CAMPCASTER_VERSION; } + /** + * Open upload transport (from station to hub) + * + * @param string $sessid + * session id + * @param string $chsum + * checksum + * @return array + * hasharray with: + * url string: writable URL + * token string: PUT token + */ + function uploadOpen($sessid, $chsum) + { + $owner = Alib::GetSessUserId($sessid); + if (PEAR::isError($owner)) { + return $owner; + } + $res = $this->bsOpenPut($chsum, NULL, $owner); + if (PEAR::isError($res)) { + return $res; + } + return array('url'=>$res['url'], 'token'=>$res['token']); + } + + + /** + * Close upload transport + * + * @param string $token + * transport token + * @param string $trtype + * transport type + * @param array $pars + * transport parameters + * @return mixed + */ + function uploadClose($token, $trtype, $pars=array()) + { + $res = $this->bsClosePut($token); + if (PEAR::isError($res)) { + return $res; + } + extract($res); // fname, owner + switch ($trtype) { + case "audioclip": + $mdtoken = $pars['mdpdtoken']; + $res = $this->bsClosePut($mdtoken); + if (PEAR::isError($res)) { + return $res; + } + $mdfname = $res['fname']; + if ($gunid == '') { + $gunid = NULL; + } + $values = array( + "filename" => $pars['name'], + "filepath" => $fname, + "metadata" => $mdfname, + "gunid" => $pars['gunid'], + "filetype" => "audioclip" + ); + $storedFile = $this->bsPutFile($values); + if (PEAR::isError($storedFile)) { + return $storedFile; + } + $res = $storedFile->getId(); + @unlink($fname); + @unlink($mdfname); + break; + case "playlist": + if ($gunid == '') { + $gunid = NULL; + } + $values = array( + "filename" => $pars['name'], + "metadata" => $fname, + "gunid" => $pars['gunid'], + "filetype" => "playlist" + ); + $storedFile = $this->bsPutFile($values); + if (PEAR::isError($storedFile)) { + return $storedFile; + } + $res = $storedFile->getId(); + @unlink($fname); + break; + case "playlistPkg": + $chsum = md5_file($fname); + // importPlaylistOpen: + $res = $this->bsOpenPut($chsum, NULL, $owner); + if (PEAR::isError($res)) { + return $res; + } + $dest = $res['fname']; + $token = $res['token']; + copy($fname, $dest); + $r = $this->importPlaylistClose($token); + if (PEAR::isError($r)) { + return $r; + } + @unlink($fname); + return $r; + break; + case "searchjob": + $crits = file_get_contents($fname); + $criteria = unserialize($crits); + @unlink($fname); + $results = $this->localSearch($criteria); + if (PEAR::isError($results)) { + return $results; + } + $realfile = tempnam($this->accessDir, 'searchjob_'); + @chmod($realfile, 0660); + $len = file_put_contents($realfile, serialize($results)); + $acc = BasicStor::bsAccess($realfile, '', NULL, 'download'); + if (PEAR::isError($acc)) { + return $acc; + } + $url = BasicStor::GetUrlPart()."access/".basename($acc['fname']); + $chsum = md5_file($realfile); + $size = filesize($realfile); + $res = array( + 'url'=>$url, 'token'=>$acc['token'], + 'chsum'=>$chsum, 'size'=>$size, + 'filename'=>$filename + ); + return $res; + break; + case "metadata": + break; + default: + } + return $res; + } + + + /** + * Open download transport + * + * @param string $sessid + * session id + * @param string $trtype + * transport type + * @param array $pars + * transport parameters + * @return hasharray with: + * url string: writable URL + * token string: PUT token + */ + function downloadOpen($sessid, $trtype, $pars=array()) + { + global $CC_CONFIG; + switch ($trtype) { + case "unknown": + case "audioclip": + case "metadata": + case "playlist": + case "playlistPkg": + if (!isset($pars['gunid'])) { + return PEAR::raiseError("Archive::downloadOpen: gunid not set"); + } + break; + } + $gunid = $pars['gunid']; + // resolve trtype by object type: + if ( ($trtype == 'unknown') || ($trtype == 'playlistPkg') ) { + $trtype2 = BasicStor::GetType($gunid); + if (PEAR::isError($trtype2)) { + return $trtype2; + } + // required with content: + $trtype = ( ($trtype2 == 'playlist') && ($trtype == 'playlistPkg') ? + 'playlistPkg' : $trtype2); + //return PEAR::raiseError("Archive::downloadOpen: TT=$trtype TT2=$trtype2 G=$gunid"); + } + switch ($trtype) { + case "audioclip": + $res = $this->downloadRawAudioDataOpen($sessid, $gunid); + break; + case "metadata": + $res = $this->downloadMetadataOpen($sessid, $gunid); + break; + case "playlist": + $res = $this->accessPlaylist($sessid, $gunid); + break; + case "playlistPkg": + $res = $this->bsExportPlaylistOpen($gunid); + if (PEAR::isError($res)) { + return $res; + } + $tmpn = tempnam($CC_CONFIG['transDir'], 'plExport_'); + $plfpath = "$tmpn.lspl"; + copy($res['fname'], $plfpath); + $res = $this->bsExportPlaylistClose($res['token']); + if (PEAR::isError($res)) { + return $res; + } + $fname = "transported_playlist.lspl"; + $id = BasicStor::IdFromGunid($gunid); + $acc = BasicStor::bsAccess($plfpath, 'lspl', NULL, 'download'); + if (PEAR::isError($acc)) { + return $acc; + } + $url = BasicStor::GetUrlPart()."access/".basename($acc['fname']); + $chsum = md5_file($plfpath); + $size = filesize($plfpath); + $res = array( + 'url'=>$url, 'token'=>$acc['token'], + 'chsum'=>$chsum, 'size'=>$size, + 'filename'=>$fname + ); + break; + case "searchjob": + $res = $pars; + break; + case "file": + $res = array(); + break; + default: + return PEAR::raiseError("Archive::downloadOpen: NotImpl ($trtype)"); + } + if (PEAR::isError($res)) { + return $res; + } + switch ($trtype) { + case "audioclip": + case "metadata": + case "playlist": + case "playlistPkg": + $title = $this->bsGetTitle(NULL, $gunid); + break; + case "searchjob": + $title = 'searchjob'; + break; + case "file": + $title = 'regular file'; + break; + default: + } + $res['title'] = $title; + $res['trtype'] = $trtype; + return $res; + } + + + /** + * Close download transport + * + * @param string $token + * transport token + * @param string $trtype + * transport type + * @return array + * hasharray with: + * url string: writable URL + * token string: PUT token + */ + function downloadClose($token, $trtype) + { + switch ($trtype) { + case "audioclip": + $res = $this->downloadRawAudioDataClose($token); + if (PEAR::isError($res)) { + return $res; + } + return $res; + case "metadata": + $res = $this->downloadMetadataClose($token); + return $res; + case "playlist": + $res = $this->releasePlaylist(NULL/*$sessid*/, $token); + return $res; + case "playlistPkg": + $res = BasicStor::bsRelease($token, 'download'); + if (PEAR::isError($res)) { + return $res; + } + $realFname = $r['realFname']; + @unlink($realFname); + if (preg_match("|(plExport_[^\.]+)\.lspl$|", $realFname, $va)) { + list(,$tmpn) = $va; + $tmpn = $CC_CONFIG['transDir']."/$tmpn"; + if (file_exists($tmpn)) { + @unlink($tmpn); + } + } + return $res; + case "searchjob": + $res = BasicStor::bsRelease($token, 'download'); + return $res; + case "file": + return array(); + default: + return PEAR::raiseError("Archive::downloadClose: NotImpl ($trtype)"); + } + } + + + /** + * Prepare hub initiated transport + * + * @param string $target + * hostname of transport target + * @param string $trtype + * transport type + * @param string $direction + * 'up' | 'down' + * @param array $pars + * transport parameters + * @return mixed + */ + function prepareHubInitiatedTransfer( + $target, $trtype='file', $direction='up',$pars=array()) + { + $tr = new Transport($this); + $trec = TransportRecord::create($tr, $trtype, $direction, + array_merge($pars, array('target'=>$target))); + if (PEAR::isError($trec)) { + return $trec; + } + return TRUE; + } + + + /** + * List hub initiated transports + * + * @param string $target + * hostname of transport target + * @param string $direction + * 'up' | 'down' + * @param string $trtok + * transport token + * @return mixed + */ + function listHubInitiatedTransfers( + $target=NULL, $direction=NULL, $trtok=NULL) + { + $tr = new Transport($this); + $res = $tr->getTransports($direction, $target, $trtok); + return $res; + } + + + /** + * Set state of hub initiated transport + * + * @param string $target + * hostname of transport target + * @param string $trtok + * transport token + * @param string $state + * transport state + * @return TransportRecord|PEAR_Error + */ + function setHubInitiatedTransfer($target, $trtok, $state) + { + $tr = new Transport($this); + $trec = TransportRecord::recall($tr, $trtok); + if (PEAR::isError($trec)) { + return $trec; + } + $r = $trec->setState($state); + if (PEAR::isError($r)) { + return $r; + } + return $trec; + } + + /* ==================================================== auxiliary methods */ + } // class LocStor ?> \ No newline at end of file diff --git a/src/modules/storageServer/var/MetaData.php b/src/modules/storageServer/var/MetaData.php index 8ce5e110a..ad211bc2d 100644 --- a/src/modules/storageServer/var/MetaData.php +++ b/src/modules/storageServer/var/MetaData.php @@ -836,11 +836,11 @@ class MetaData { //$predns = strtolower($predns); //$predicate = strtolower($predicate); $subjns_sql = is_null($subjns) ? "NULL" : "'".pg_escape_string($subjns)."'"; - $subject_sql = is_null($subject) ? "NULL" : "'".pg_escape_string($subject)."'"; - $predns_sql = is_null($predns) ? "NULL" : "'".pg_escape_string($predns)."'"; - $predicate_sql = is_null($predicate) ? "NULL" : "'".pg_escape_string($predicate)."'"; - $objns_sql = is_null($objns) ? "NULL" : "'".pg_escape_string($objns)."'"; - $object_sql = is_null($object) ? "NULL" : "'".pg_escape_string($object)."'"; + $subject_sql = is_null($subject) ? "NULL" : "'".pg_escape_string($subject)."'"; + $predns_sql = is_null($predns) ? "NULL" : "'".pg_escape_string($predns)."'"; + $predicate_sql = is_null($predicate) ? "NULL" : "'".pg_escape_string($predicate)."'"; + $objns_sql = is_null($objns) ? "NULL" : "'".pg_escape_string($objns)."'"; + $object_sql = is_null($object) ? "NULL" : "'".pg_escape_string($object)."'"; $id = $CC_DBC->nextId($CC_CONFIG['mdataTable']."_id_seq"); if (PEAR::isError($id)) { return $id; @@ -873,7 +873,7 @@ class MetaData { { global $CC_CONFIG, $CC_DBC; $sql = "SELECT id FROM ".$CC_CONFIG['mdataTable']." - WHERE subjns='_I' AND subject='{$p_id}' AND + WHERE subjns='_I' AND subject='{$p_id}' AND gunid=x'{$this->gunid}'::bigint"; $rh = $CC_DBC->query($sql); if (PEAR::isError($rh)) { @@ -887,7 +887,7 @@ class MetaData { } $rh->free(); $sql = "DELETE FROM ".$CC_CONFIG['mdataTable']." - WHERE id={$p_id} AND + WHERE id={$p_id} AND gunid=x'{$this->gunid}'::bigint"; $res = $CC_DBC->query($sql); if (PEAR::isError($res)) { diff --git a/src/modules/storageServer/var/conf.php b/src/modules/storageServer/var/conf.php index dda82d246..2182911fd 100644 --- a/src/modules/storageServer/var/conf.php +++ b/src/modules/storageServer/var/conf.php @@ -68,8 +68,8 @@ $CC_CONFIG = array( 'storageUrlPort' => 80, /* ================================================ archive configuration */ - 'archiveUrlPath' => '/campcasterArchiveServer', - 'archiveXMLRPC' => 'xmlrpc/xrArchive.php', + 'archiveUrlPath' => '/campcasterStorageServer', + 'archiveXMLRPC' => 'xmlrpc/xrLocStor.php', 'archiveUrlHost' => 'localhost', 'archiveUrlPort' => 80, 'archiveAccountLogin' => 'root', diff --git a/src/modules/storageServer/var/install/installStorage.php b/src/modules/storageServer/var/install/installStorage.php index e4e352b2a..3b9a0396c 100644 --- a/src/modules/storageServer/var/install/installStorage.php +++ b/src/modules/storageServer/var/install/installStorage.php @@ -104,11 +104,11 @@ if ($access != 'write') { foreach ($cron->ct->getByType(CRON_CMD) as $id => $line) { if (preg_match($old_regex, $line['command'])) { - echo " removing old entry\n"; + echo " * Removing old entry: ".$line['command']."\n"; $cron->ct->delEntry($id); } } -echo " adding new entry\n"; +echo " * Adding new entry: ".$command."\n"; $cron->ct->addCron($m, $h, $dom, $mon, $dow, $command); $cron->closeCrontab(); echo " Done.\n"; diff --git a/src/modules/storageServer/var/install/uninstallMain.php b/src/modules/storageServer/var/install/uninstallMain.php index 281d8f646..52638ae90 100644 --- a/src/modules/storageServer/var/install/uninstallMain.php +++ b/src/modules/storageServer/var/install/uninstallMain.php @@ -98,42 +98,4 @@ if (camp_db_table_exists($CC_CONFIG['smembTable'])) { echo " * Skipping: database table ".$CC_CONFIG['smembTable']."\n"; } -if (camp_db_table_exists($CC_CONFIG['classTable'])) { - echo " * Removing database table ".$CC_CONFIG['classTable']."..."; - $sql = "DROP TABLE ".$CC_CONFIG['classTable']; - camp_install_query($sql); -} else { - echo " * Skipping: database table ".$CC_CONFIG['classTable']."\n"; -} - -if (camp_db_table_exists($CC_CONFIG['cmembTable'])) { - echo " * Removing database table ".$CC_CONFIG['cmembTable']."..."; - $sql = "DROP TABLE ".$CC_CONFIG['cmembTable']; - camp_install_query($sql); -} else { - echo " * Skipping: database table ".$CC_CONFIG['cmembTable']."\n"; -} - -if (camp_db_table_exists($CC_CONFIG['structTable'])) { - echo " * Removing database table ".$CC_CONFIG['structTable']."..."; - $sql = "DROP TABLE ".$CC_CONFIG['structTable']; - camp_install_query($sql, false); - - $CC_DBC->dropSequence($CC_CONFIG['structTable']."_id_seq"); - echo "done.\n"; -} else { - echo " * Skipping: database table ".$CC_CONFIG['structTable']."\n"; -} - -if (camp_db_table_exists($CC_CONFIG['treeTable'])) { - echo " * Removing database table ".$CC_CONFIG['treeTable']."..."; - $sql = "DROP TABLE ".$CC_CONFIG['treeTable']; - camp_install_query($sql, false); - - $CC_DBC->dropSequence($CC_CONFIG['treeTable']."_id_seq"); - echo "done.\n"; -} else { - echo " * Skipping: database table ".$CC_CONFIG['treeTable']."\n"; -} - ?> \ No newline at end of file diff --git a/src/modules/storageServer/var/xmlrpc/XR_LocStor.php b/src/modules/storageServer/var/xmlrpc/XR_LocStor.php index 35d2c3c3a..47c997a1c 100644 --- a/src/modules/storageServer/var/xmlrpc/XR_LocStor.php +++ b/src/modules/storageServer/var/xmlrpc/XR_LocStor.php @@ -3592,6 +3592,204 @@ class XR_LocStor extends LocStor { ))); } + /** + * Simple ping method - return strtouppered string + * + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_ping($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = date("Ymd-H:i:s")." Network hub answer: {$r['par']}"; + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_uploadOpen($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = $this->uploadOpen($r['sessid'], $r['chsum']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_uploadOpen: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * Check state of file upload + * + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_uploadCheck($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = $this->uploadCheck($r['token']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_uploadCheck: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_uploadClose($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = $this->uploadClose($r['token'], $r['trtype'], $r['pars']); + if (PEAR::isError($res)) { + $code = 803; + // Special case for duplicate file - give back + // different error code so we can display nice user message. + if ($res->getCode() == GBERR_GUNID) { + $code = 888; + } + return new XML_RPC_Response(0, $code, + "xr_uploadClose: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + } + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_downloadOpen($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = $this->downloadOpen($r['sessid'], $r['trtype'], $r['pars']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_downloadOpen: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_downloadClose($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = $this->downloadClose($r['token'], $r['trtype']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_downloadClose: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_prepareHubInitiatedTransfer($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + foreach (array('trtype'=>NULL, 'direction'=>'up', 'pars'=>array()) as $k => $dv) { + if (!isset($r[$k])) { + $r[$k] = $dv; + } + } + $res = $this->prepareHubInitiatedTransfer( + $r['target'], $r['trtype'], $r['direction'], $r['pars']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_prepareHubInitiatedTransfer: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_listHubInitiatedTransfers($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + foreach (array('target'=>NULL, 'direction'=>NULL, 'trtok'=>NULL) as $k=>$dv) { + if (!isset($r[$k])) { + $r[$k] = $dv; + } + } + $res = $this->listHubInitiatedTransfers( + $r['target'], $r['direction'], $r['trtok']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_listHubInitiatedTransfers: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + + + /** + * @param XML_RPC_Message $input + * @return XML_RPC_Response + */ + function xr_setHubInitiatedTransfer($input) + { + list($ok, $r) = XR_LocStor::xr_getParams($input); + if (!$ok) { + return $r; + } + $res = $this->setHubInitiatedTransfer( + $r['target'], $r['trtok'], $r['state']); + if (PEAR::isError($res)) + return new XML_RPC_Response(0, 803, + "xr_setHubInitiatedTransfer: ".$res->getMessage(). + " ".$res->getUserInfo() + ); + return new XML_RPC_Response(XML_RPC_encode($res)); + } + /* ==================================================== "private" methods */ /** * Check and convert struct of parameters diff --git a/src/modules/storageServer/var/xmlrpc/xrLocStor.php b/src/modules/storageServer/var/xmlrpc/xrLocStor.php index b527178cf..848ac1042 100644 --- a/src/modules/storageServer/var/xmlrpc/xrLocStor.php +++ b/src/modules/storageServer/var/xmlrpc/xrLocStor.php @@ -143,6 +143,16 @@ $methods = array( 'globalSearch' => 'Start search job on network hub', 'getSearchResults' => 'Get results from search job on network hub', + 'uploadOpen' => 'Open file-layer upload', + 'uploadCheck' => 'Check the checksum of uploaded file', + 'uploadClose' => 'Close file-layer upload', + 'downloadOpen' => 'Open file-layer download', +// 'downloadCheck' => 'Check the checksum of downloaded file', + 'downloadClose' => 'Close file-layer download', + 'prepareHubInitiatedTransfer' => 'Prepare hub initiated transfer', + 'listHubInitiatedTransfers' => 'List hub initiated transfers', + 'setHubInitiatedTransfer' => 'Set state of hub initiated transfers', + 'ping' => 'Echo request', ); $defs = array(); diff --git a/src/modules/storageServer/var/xmlrpc/xr_cli_test.php b/src/modules/storageServer/var/xmlrpc/xr_cli_test.php index a31b1571e..569fee537 100644 --- a/src/modules/storageServer/var/xmlrpc/xr_cli_test.php +++ b/src/modules/storageServer/var/xmlrpc/xr_cli_test.php @@ -15,7 +15,7 @@ function printUsage() $verbose = TRUE; $parsedCommandLine = Console_Getopt::getopt($argv, "vs:o:h"); - +$options = null; $cmdLineOptions = $parsedCommandLine[0]; if (count($parsedCommandLine[1]) == 0) { @@ -64,7 +64,7 @@ if ($verbose) { echo "Host: {$url['host']}, path: {$url['path']}\n"; echo "Method: $method\n"; echo "Parameters:\n"; - var_dump($pars); + var_dump($options); } $infos = array( @@ -283,7 +283,8 @@ switch ($method) { } // switch $fullmethod = $infos[$method]['m']; -$msg = new XML_RPC_Message($fullmethod, array(XML_RPC_encode($parr))); +$msg = new XML_RPC_Message($fullmethod, array(XML_RPC_encode($options))); +//$msg = new XML_RPC_Message($fullmethod, array(XML_RPC_encode($parr))); if ($verbose) { echo "parr:\n";