]> jspc29.x-matter.uni-frankfurt.de Git - daqdata.git/commitdiff
*** empty log message ***
authorhades <hades>
Wed, 30 May 2001 14:45:55 +0000 (14:45 +0000)
committerhades <hades>
Wed, 30 May 2001 14:45:55 +0000 (14:45 +0000)
allParam/ora/Makefile
allParam/ora/oraParam.pc

index a28bab8ed24f449e314e1e3e223ad2ec3684a002..720db71cb5c12a58ea0ed368de5cbf11b2997cba 100644 (file)
@@ -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
 
index 913d4e5440fd7c3271a550843f1f52c6cd2f7e1d..f05ea410dce77905676f3c8c7b279f251f4c0bbc 100644 (file)
@@ -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;