* Copyright (c) 1995-2004, Index Data
* See the file LICENSE for details.
*
- * $Id: client.c,v 1.252 2004-09-22 13:21:37 adam Exp $
+ * $Id: client.c,v 1.257 2004-12-02 13:55:35 ja7 Exp $
*/
#include <stdio.h>
#include <yaz/srw.h>
#include <yaz/yaz-ccl.h>
#include <yaz/cql.h>
+#include <yaz/ylog.h>
#if HAVE_READLINE_READLINE_H
#include <readline/readline.h>
return 1;
}
-int cmd_source(const char* arg)
+int cmd_source(const char* arg, int echo )
{
/* first should open the file and read one line at a time.. */
FILE* includeFile;
if ((cp = strrchr (line, '\n')))
*cp = '\0';
-
+
+ if( echo ) {
+ printf( "processing line: %s\n",line );
+ };
process_cmd_line(line);
}
return 1;
}
+int cmd_source_echo(const char* arg) {
+ cmd_source( arg, 1);
+}
+
+int cmd_source_noecho(const char* arg) {
+ cmd_source( arg, 0 );
+}
+
+
int cmd_subshell(const char* args)
{
if(strlen(args))
struct stat statbuf;
char buffer[1000];
char* homedir=getenv("HOME");
-
- if(!homedir) return;
-
- sprintf(buffer,"%s/.yazclientrc",homedir);
-
- if(stat(buffer,&statbuf)==0) {
- cmd_source(buffer);
- }
+
+ if( homedir ) {
+
+ sprintf(buffer,"%s/.yazclientrc",homedir);
+
+ if(stat(buffer,&statbuf)==0) {
+ cmd_source(buffer, 0 );
+ }
+
+ };
if(stat(".yazclientrc",&statbuf)==0) {
- cmd_source(".yazclientrc");
+ cmd_source(".yazclientrc", 0 );
}
}
return 0;
}
+int cmd_sleep(const char* args )
+{
+ int sec=atoi(args);
+ if( sec > 0 ) {
+#ifdef WIN32
+ Sleep(sec*1000);
+#else
+ sleep(sec);
+#endif
+ printf("Done sleeping %d seconds\n", sec);
+ }
+ return 1;
+}
+
int cmd_list_otherinfo(const char* args)
{
int i;
{"charset", cmd_charset, "<nego_charset> <output_charset>",NULL,0,NULL},
{"marccharset", cmd_marccharset, "<charset_name>",NULL,0,NULL},
{"lang", cmd_lang, "<language_code>",NULL,0,NULL},
- {".", cmd_source, "<filename>",NULL,1,NULL},
+ {".", cmd_source_echo, "<filename>",NULL,1,NULL},
{"!", cmd_subshell, "Subshell command",NULL,1,NULL},
{"set_apdufile", cmd_set_apdufile, "<filename>",NULL,1,NULL},
{"set_berfile", cmd_set_berfile, "<filename>",NULL,1,NULL},
{"set_cclfile", cmd_set_cclfile," <filename>",NULL,1,NULL},
{"set_cqlfile", cmd_set_cqlfile," <filename>",NULL,1,NULL},
{"set_auto_reconnect", cmd_set_auto_reconnect," on|off",complete_auto_reconnect,1,NULL},
- {"set_otherinfo", cmd_set_otherinfo,"<otherinfoinddex> <oid> <string>",NULL,0,NULL},
+ {"set_otherinfo", cmd_set_otherinfo,"<otherinfoinddex> <oid> <string>",NULL,0,NULL},
+ {"sleep", cmd_sleep,"<seconds>",NULL,0,NULL},
{"register_oid", cmd_register_oid,"<name> <class> <oid>",NULL,0,NULL},
{"push_command", cmd_push_command,"<command>",command_generator,0,NULL},
{"register_tab", cmd_register_tab,"<commandname> <tab>",command_generator,0,NULL},