From: hades Date: Wed, 30 May 2001 14:45:55 +0000 (+0000) Subject: *** empty log message *** X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=d5adc9ee5123dee0cce8ab3e1cf431bc26c5fa55;p=daqdata.git *** empty log message *** --- diff --git a/allParam/ora/Makefile b/allParam/ora/Makefile index a28bab8..720db71 100644 --- a/allParam/ora/Makefile +++ b/allParam/ora/Makefile @@ -1,7 +1,7 @@ CFLAGS = -g -ansi -Wall -I../include -I$(ORACLE_HOME)/precomp/public/ ARFLAGS = -rc -ORA_USER = hades/hades@db-hades.gsi.de +ORA_USER = daq_oper/daqall@db-hades.gsi.de PROC = $(ORACLE_HOME)/bin/proc PROCFLAGS = oraca=yes parse=partial sqlcheck=semantics \ @@ -30,8 +30,8 @@ install : liboraParam.a cp -f ../include/allParam.h $(INCDIR) clean : - rm -f *.o oraParam.c oraParam.lis + rm -f *.o oraParam.c oraParam.lis sqlnet.log lib_clean : - rm -f *.o *.a oraParam.c oraParam.lis + rm -f *.o *.a oraParam.c oraParam.lis sqlnet.log diff --git a/allParam/ora/oraParam.pc b/allParam/ora/oraParam.pc index 913d4e5..f05ea41 100644 --- a/allParam/ora/oraParam.pc +++ b/allParam/ora/oraParam.pc @@ -29,7 +29,7 @@ int conSetupParam(Param *my, const char *setup) strcpy(my->setup, setup); } my->specParam = malloc(sizeof(OraParam)); - ((OraParam *) (my->specParam))->user = "daq@db-hades.gsi.de"; + ((OraParam *) (my->specParam))->user = "daq_oper@db-hades.gsi.de"; ((OraParam *) (my->specParam))->passwd = "daqall"; return 0; } @@ -74,11 +74,19 @@ int Param_getIntArray(const Param *my, const char *name, const char *idx, int ma EXEC SQL BEGIN DECLARE SECTION; const char* un; const char* pw; + char sqlsetup[PARAM_MAX_NAME_LEN]; char sqlname[PARAM_MAX_NAME_LEN]; char sqlidx[PARAM_MAX_NAME_LEN]; - char value[PARAM_MAX_ARRAY_LEN][PARAM_MAX_VALUE_LEN]; + unsigned long int value[PARAM_MAX_ARRAY_LEN]; EXEC SQL END DECLARE SECTION; + if (my->setup != NULL) { + for(i = 0 ; i <= strlen(my->setup) ; i++) { + sqlsetup[i] = tolower((my->setup)[i]); + } + } else { + strcpy(sqlsetup, ""); + } for(i = 0 ; i <= strlen(name) ; i++) { sqlname[i] = tolower(name[i]); } @@ -89,25 +97,16 @@ int Param_getIntArray(const Param *my, const char *name, const char *idx, int ma pw = ((OraParam *) (my->specParam))->passwd; EXEC SQL CONNECT :un IDENTIFIED BY :pw; - EXEC SQL SELECT VALUE INTO :value FROM DAQ.PARAMS WHERE NAME = :sqlname AND IDX = :sqlidx ORDER BY SEQ_NUM; + + EXEC SQL SELECT value INTO :value FROM daq.param_int WHERE setup = :sqlsetup AND name = :sqlname AND idx = :sqlidx ORDER BY seq_num; + *rows = sqlca.sqlerrd[2]; if (*rows > maxrows) { *rows = maxrows; } for (i = 0 ; i < *rows ; i++) { - int j = PARAM_MAX_VALUE_LEN - 1; - while(value[i][--j] == ' '); - value[i][j + 1] = '\0'; - val[i] = strtoul(value[i], &endptr, 0); - if(*endptr != '\0') { - Param_strerror(my, "Value seems to be no integer."); - *rows = 0; - return -1; - } - } - for (i = *rows ; i < maxrows ; i++) { - val[i] = 0; + val[i] = value[i]; } EXEC SQL COMMIT RELEASE; @@ -125,12 +124,19 @@ int Param_getStringArray(const Param *my, const char *name, const char *idx, int EXEC SQL BEGIN DECLARE SECTION; const char* un; const char* pw; - char setup[PARAM_MAX_NAME_LEN]; + char sqlsetup[PARAM_MAX_NAME_LEN]; char sqlname[PARAM_MAX_NAME_LEN]; char sqlidx[PARAM_MAX_NAME_LEN]; char value[PARAM_MAX_ARRAY_LEN][PARAM_MAX_VALUE_LEN]; EXEC SQL END DECLARE SECTION; + if (my->setup != NULL) { + for(i = 0 ; i <= strlen(my->setup) ; i++) { + sqlsetup[i] = tolower((my->setup)[i]); + } + } else { + strcpy(sqlsetup, ""); + } for(i = 0 ; i <= strlen(name) ; i++) { sqlname[i] = tolower(name[i]); } @@ -142,14 +148,8 @@ int Param_getStringArray(const Param *my, const char *name, const char *idx, int EXEC SQL CONNECT :un IDENTIFIED BY :pw; - if(my->setup == NULL) { - EXEC SQL SELECT VALUE INTO :value FROM DAQ.PARAMS WHERE NAME = :sqlname AND IDX = :sqlidx ORDER BY SEQ_NUM; - } else { - for(i = 0 ; i <= strlen(my->setup) ; i++) { - setup[i] = tolower((my->setup)[i]); - } - EXEC SQL SELECT VALUE INTO :value FROM DAQ.SETUP_PARAMS WHERE SETUP = :setup AND NAME = :sqlname AND IDX = :sqlidx ORDER BY SEQ_NUM; - } + EXEC SQL SELECT value INTO :value FROM daq.param_string WHERE setup = :sqlsetup AND name = :sqlname AND idx = :sqlidx ORDER BY seq_num; + *rows = sqlca.sqlerrd[2]; if (*rows > maxrows) { @@ -161,14 +161,71 @@ int Param_getStringArray(const Param *my, const char *name, const char *idx, int value[i][j + 1] = '\0'; strcpy(val[i], value[i]); } - for (i = *rows ; i < maxrows ; i++) { - val[i] = NULL; - } EXEC SQL COMMIT RELEASE; return retVal; } +int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val) +{ + int retVal = 0; + int row = 0; + int i; + char *value[PARAM_MAX_ARRAY_LEN]; + + for (i = 0 ; i < maxrows ; i++) { + value[i] = malloc(PARAM_MAX_VALUE_LEN); + } + + if (((retVal = Param_getStringArray(my, name, idx, maxrows, rows, value)) == 0) && (*rows > 0)) { + char basedir[PARAM_MAX_VALUE_LEN]; + + if ((Param_getString(my, "glob", "basedir", &row, basedir) == 0) && (row == 1)) { + strcat(basedir, "/"); + } else { + strcpy(basedir, ""); + } + for (i = 0 ; i < *rows ; i++) { + if (value[i][0] != '/') { + strcpy(val[i], basedir); + } else { + strcpy(val[i], ""); + } + strcat(val[i], value[i]); + } + } else { + *rows = 0; + } + + for (i = 0 ; i < maxrows ; i++) { + free(value[i]); + } + + return retVal; +} + +int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val) +{ + int retVal = 0; + char filename[PARAM_MAX_VALUE_LEN]; + int rows; + FILE *stream; + + retVal = Param_getFilename(my, name, idx, &rows, filename); + if ((rows == 0) || (stream = fopen(filename, "r")) == NULL) { + Param_strerror((Param *) my, strerror(errno)); + *size = 0; + retVal = -1; + } else { + struct stat fileS, *file = &fileS; + stat(filename, file); + *size = (size_t) file->st_size; + fprintf(stderr, "Result: %d.\n", *size); + *val = stream; + } + return retVal; +} + int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned long int val) { int i; @@ -179,12 +236,19 @@ int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned EXEC SQL BEGIN DECLARE SECTION; const char* un; const char* pw; - char setup[PARAM_MAX_NAME_LEN]; + char sqlsetup[PARAM_MAX_NAME_LEN]; char sqlname[PARAM_MAX_NAME_LEN]; char sqlidx[PARAM_MAX_NAME_LEN]; unsigned long int value; EXEC SQL END DECLARE SECTION; + if (my->setup != NULL) { + for(i = 0 ; i <= strlen(my->setup) ; i++) { + sqlsetup[i] = tolower((my->setup)[i]); + } + } else { + strcpy(sqlsetup, ""); + } for(i = 0 ; i <= strlen(name) ; i++) { sqlname[i] = tolower(name[i]); } @@ -198,14 +262,7 @@ int Param_storeInt(const Param *my, const char *name, const char *idx, unsigned EXEC SQL CONNECT :un IDENTIFIED BY :pw; - if(my->setup == NULL) { - EXEC SQL INSERT INTO DAQ.STORE_INT VALUES (:sqlname, :sqlidx, :value); - } else { - for(i = 0 ; i <= strlen(my->setup) ; i++) { - setup[i] = tolower((my->setup)[i]); - } - EXEC SQL INSERT INTO DAQ.SETUP_STORE_INT VALUES (:setup, :sqlname, :sqlidx, :value); - } + EXEC SQL EXECUTE daq.store_param.store_param_int ( :sqlsetup, :sqlname, :sqlidx, :value ); EXEC SQL COMMIT RELEASE; return 0; @@ -221,98 +278,38 @@ int Param_storeString(const Param *my, const char *name, const char *idx, const EXEC SQL BEGIN DECLARE SECTION; const char* un; const char* pw; - char setup[PARAM_MAX_NAME_LEN]; + char sqlsetup[PARAM_MAX_NAME_LEN]; char sqlname[PARAM_MAX_NAME_LEN]; char sqlidx[PARAM_MAX_NAME_LEN]; - char value[PARAM_MAX_VALUE_LEN]; + char *value; EXEC SQL END DECLARE SECTION; + if (my->setup != NULL) { + for(i = 0 ; i <= strlen(my->setup) ; i++) { + sqlsetup[i] = tolower((my->setup)[i]); + } + } else { + strcpy(sqlsetup, ""); + } for(i = 0 ; i <= strlen(name) ; i++) { sqlname[i] = tolower(name[i]); } for(i = 0 ; i <= strlen(idx) ; i++) { sqlidx[i] = tolower(idx[i]); } - strcpy(value, val); + value = val; un = ((OraParam *) (my->specParam))->user; pw = ((OraParam *) (my->specParam))->passwd; EXEC SQL CONNECT :un IDENTIFIED BY :pw; - if(my->setup == NULL) { - EXEC SQL INSERT INTO DAQ.STORE_STRING VALUES (:sqlname, :sqlidx, :value); - } else { - for(i = 0 ; i <= strlen(my->setup) ; i++) { - setup[i] = tolower((my->setup)[i]); - } - EXEC SQL INSERT INTO DAQ.SETUP_STORE_STRING VALUES (:setup, :sqlname, :sqlidx, :value); - } + EXEC SQL EXECUTE daq.store_param.store_param_string ( :sqlsetup, :sqlname, :sqlidx, :value ); EXEC SQL COMMIT RELEASE; return 0; } -int Param_getFilenameArray(const Param *my, const char *name, const char *idx, int maxrows, int *rows, char **val) -{ - int retVal = 0; - int row = 0; - int i; - char *value[PARAM_MAX_ARRAY_LEN]; - - for (i = 0 ; i < maxrows ; i++) { - value[i] = malloc(PARAM_MAX_VALUE_LEN); - } - - if (((retVal = Param_getStringArray(my, name, idx, maxrows, rows, value)) == 0) && (*rows > 0)) { - char basedir[PARAM_MAX_VALUE_LEN]; - - if ((Param_getString(my, "glob", "basedir", &row, basedir) == 0) && (row == 1)) { - strcat(basedir, "/"); - } else { - strcpy(basedir, ""); - } - for (i = 0 ; i < *rows ; i++) { - if (value[i][0] != '/') { - strcpy(val[i], basedir); - } else { - strcpy(val[i], ""); - } - strcat(val[i], value[i]); - } - } else { - *rows = 0; - } - - for (i = 0 ; i < maxrows ; i++) { - free(value[i]); - } - - return retVal; -} - -int Param_getBlob(const Param *my, const char *name, const char *idx, size_t *size, FILE **val) -{ - int retVal = 0; - char filename[PARAM_MAX_VALUE_LEN]; - int rows; - FILE *stream; - - retVal = Param_getFilename(my, name, idx, &rows, filename); - if ((rows == 0) || (stream = fopen(filename, "r")) == NULL) { - Param_strerror((Param *) my, strerror(errno)); - *size = 0; - retVal = -1; - } else { - struct stat fileS, *file = &fileS; - stat(filename, file); - *size = (size_t) file->st_size; - fprintf(stderr, "Result: %d.\n", *size); - *val = stream; - } - return retVal; -} - const char *Param_getErrStr(const Param *my) { return my->strerror;