MYDDAS: Myddas Top Level for MySQL and Datalog
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1537 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
@@ -277,9 +277,11 @@ parse_yap_arguments(int argc, char *argv[], YAP_init_args *iap)
|
||||
int BootMode = YAP_FULL_BOOT_FROM_PROLOG;
|
||||
#else
|
||||
int BootMode = YAP_BOOT_FROM_SAVED_CODE;
|
||||
#endif
|
||||
#ifdef MYDDAS_MYSQL
|
||||
char *myddas_temp;
|
||||
#endif
|
||||
int *ssize;
|
||||
|
||||
while (--argc > 0)
|
||||
{
|
||||
p = *++argv;
|
||||
@@ -345,6 +347,36 @@ parse_yap_arguments(int argc, char *argv[], YAP_init_args *iap)
|
||||
case 'f':
|
||||
iap->FastBoot = TRUE;
|
||||
break;
|
||||
#ifdef MYDDAS_MYSQL
|
||||
case 'm':
|
||||
if (strncmp(p,"myddas_",7) == 0)
|
||||
{
|
||||
iap->myddas = 1;
|
||||
if ((*argv)[0] == '\0')
|
||||
myddas_temp = *argv;
|
||||
else {
|
||||
argc--;
|
||||
if (argc == 0) {
|
||||
fprintf(stderr," [ YAP unrecoverable error: missing file name with option 'l' ]\n");
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
argv++;
|
||||
myddas_temp = *argv;
|
||||
}
|
||||
|
||||
if (strstr(p,"user") != NULL)
|
||||
iap->myddas_user = myddas_temp;
|
||||
else if (strstr(p,"pass") != NULL)
|
||||
iap->myddas_pass = myddas_temp;
|
||||
else if (strstr(p,"db") != NULL)
|
||||
iap->myddas_db = myddas_temp;
|
||||
else if (strstr(p,"host") != NULL)
|
||||
iap->myddas_host = myddas_temp;
|
||||
else
|
||||
goto myddas_error_print;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
#ifdef MPWSHELL
|
||||
case 'm':
|
||||
if (*++p == 'p' && *++p == 'w' && *++p == '\0')
|
||||
@@ -510,7 +542,13 @@ parse_yap_arguments(int argc, char *argv[], YAP_init_args *iap)
|
||||
break;
|
||||
default:
|
||||
{
|
||||
#ifdef MYDDAS_MYSQL
|
||||
myddas_error_print :
|
||||
#endif
|
||||
fprintf(stderr,"[ YAP unrecoverable error: unknown switch -%c ]\n", *p);
|
||||
#ifdef MYDDAS_MYSQL
|
||||
myddas_error :
|
||||
#endif
|
||||
print_usage();
|
||||
exit(EXIT_FAILURE);
|
||||
}
|
||||
@@ -519,6 +557,15 @@ parse_yap_arguments(int argc, char *argv[], YAP_init_args *iap)
|
||||
iap->SavedState = p;
|
||||
}
|
||||
}
|
||||
#ifdef MYDDAS_MYSQL
|
||||
/* Check MYDDAS Arguments */
|
||||
if (iap->myddas_user != NULL || iap->myddas_pass != NULL
|
||||
|| iap->myddas_db != NULL || iap->myddas_host != NULL)
|
||||
if (iap->myddas_user == NULL || iap->myddas_db == NULL){
|
||||
fprintf(stderr,"[ YAP unrecoverable error: Missing Mandatory Arguments for MYDDAS ]\n");
|
||||
goto myddas_error;
|
||||
}
|
||||
#endif
|
||||
return(BootMode);
|
||||
}
|
||||
|
||||
@@ -549,6 +596,13 @@ init_standard_system(int argc, char *argv[], YAP_init_args *iap)
|
||||
iap->PrologShouldHandleInterrupts = TRUE;
|
||||
iap->Argc = argc;
|
||||
iap->Argv = argv;
|
||||
#ifdef MYDDAS_MYSQL
|
||||
iap->myddas = 0;
|
||||
iap->myddas_user = NULL;
|
||||
iap->myddas_pass = NULL;
|
||||
iap->myddas_db = NULL;
|
||||
iap->myddas_host = NULL;
|
||||
#endif
|
||||
iap->ErrorNo = 0;
|
||||
iap->ErrorCause = NULL;
|
||||
|
||||
|
Reference in New Issue
Block a user