This commit is contained in:
parent
70d3b2d24e
commit
75a8194c07
|
@ -20,6 +20,7 @@ const char *xmlWork = "./xml";
|
|||
extern shared_memory_object shm;
|
||||
|
||||
#include "eppargs.h"
|
||||
#include "eppxml.h"
|
||||
|
||||
int is_numeric(const char *p) { int i = strlen(p),j=0;
|
||||
if (*p) {
|
||||
|
@ -105,7 +106,7 @@ void mdCommander::prompt(bool forStrings) {
|
|||
}
|
||||
void mdCommander::driver() {
|
||||
|
||||
bool rc, x;
|
||||
bool rc, x, eppMainActive =false;
|
||||
char next,rawString[128],work[128];
|
||||
const char *mdErrCode = "";
|
||||
int i,commandLength;
|
||||
|
@ -140,6 +141,39 @@ void mdCommander::driver() {
|
|||
rawString[strlen(rawString)-1] = 0;
|
||||
}
|
||||
if (!strlen(rawString)) continue;
|
||||
if (eppMainActive) {
|
||||
int ion,nAll; char cmdChars[9] = {'c','i','p','t','C','R','U','D','T'};
|
||||
eppMainActive = false;
|
||||
switch(rawString[0]) {
|
||||
case '?': help();
|
||||
break;
|
||||
case 'L':
|
||||
for (nAll=0;nAll<6;nAll++)
|
||||
if (loadSchema(nAll)) beep();
|
||||
break;
|
||||
case 'W':
|
||||
for (nAll=0;nAll<9;nAll++)
|
||||
writeCommand(cmdChars[nAll]);
|
||||
break;
|
||||
case 'V':
|
||||
ion=atoi(&rawString[1]);
|
||||
viSchema(ion);
|
||||
break;
|
||||
case 'l':
|
||||
ion=atoi(&rawString[1]);
|
||||
if (loadSchema(ion)) beep();
|
||||
break;
|
||||
case 'w':
|
||||
writeCommand(rawString[1]);
|
||||
break;
|
||||
case 'v':
|
||||
viBlankForm(rawString[1]);
|
||||
break;
|
||||
default: beep();
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (strlen(rawString) == 1) {
|
||||
switch(rawString[0]) {
|
||||
case '1': ; case '2': ; case '3': ; case '4': ; case '5': ;
|
||||
|
@ -151,6 +185,7 @@ void mdCommander::driver() {
|
|||
case '?': help();
|
||||
break;
|
||||
case 'e': eppMainMenu();
|
||||
eppMainActive = true;
|
||||
break;
|
||||
case 'a': acMainMenu();
|
||||
break;
|
||||
|
@ -344,24 +379,26 @@ void mdCommander::eppMainMenu() {
|
|||
mvprintw(15,10," U - update");
|
||||
mvprintw(16,10," D - delete");
|
||||
mvprintw(17,10," T - transfer");
|
||||
mvprintw(19,10,"IO");
|
||||
mvprintw(22,10," v<letter> - vi/xmledit the XML");
|
||||
mvprintw(23,10," V<n> - vi/xmledit the XSDs");
|
||||
mvprintw(24,10," w<letter> - write blank XML form for 1 above");
|
||||
mvprintw(25,10," W - write blank forms for all");
|
||||
mvprintw(19,10,"IO (active this screen only)");
|
||||
mvprintw(20,10," l<n> - load the schema");
|
||||
mvprintw(21,10," L - load ./resources/*");
|
||||
mvprintw(22,10," w<letter> - write blank XML form for 1 above ... ");
|
||||
mvprintw(23,10," W - or all to ./xml.");
|
||||
mvprintw(24,10," v<letter> - vi/xmledit a blank XML form");
|
||||
mvprintw(25,10," V<n> - vi/xmledit a XSDs");
|
||||
|
||||
mvprintw(7,50, "Commands are defined by the XSDs");
|
||||
mvprintw(8,50, "in ./resources. These are migrating to");
|
||||
mvprintw(9,50,"a what's at 'XML TO USE IN AC' @");
|
||||
mvprintw(10,50,"dnseppus.meansofproduction.biz/doc, currently");
|
||||
mvprintw(11,50,"a mix of that and those in the 2007 toolkit.");
|
||||
mvprintw(8,50, "in ./resources. These are being migrated from");
|
||||
mvprintw(9,50,"what was in in the 2007 toolkit to.");
|
||||
mvprintw(10,50, "what's at the 'XML TO USE IN AC' link @");
|
||||
mvprintw(11,50,"dnseppus.meansofproduction.biz/doc,.");
|
||||
mvprintw(13,50,"If no XSD loaded you'll see");
|
||||
mvprintw(14,50,"stubs in the internal editor.");
|
||||
|
||||
mvprintw(16,50," n = 1 : epp-1.0.xsd 2: domain-1-0.xsd 3: contact-1.0.xsd");
|
||||
mvprintw(17,50," 4: registrant-1.0.xsd 5: host-1-0.xsd 6: kv-1.0.xsd");
|
||||
|
||||
say((char *)"Action letter or ? to exit");
|
||||
say((char *)"Action sequence or ? to exit");
|
||||
}
|
||||
void mdCommander::acMainMenu() {
|
||||
|
||||
|
|
|
@ -18,21 +18,34 @@
|
|||
}
|
||||
eppXML;
|
||||
|
||||
typedef
|
||||
struct {
|
||||
bool hasXML:1;
|
||||
bool reserved:7;
|
||||
}
|
||||
eppState;
|
||||
|
||||
|
||||
class mdCommander {
|
||||
|
||||
bool acceptingInput,deleted[MAX_CMDS];
|
||||
bool acceptingInput,deleted[MAX_CMDS],schemaLoaded[6];
|
||||
int activeCommands, argsNow[MAX_CMDS], cmdNow, cmdsNow, mdStdDevIdx;
|
||||
int row,col, thisArg;
|
||||
int commandsNow[MAX_CMDS]; // type index into cmdNames
|
||||
eppArgDef *commandArgs[MAX_CMDS][MAX_CMD_ARGS];
|
||||
eppXML xmlIO[9];
|
||||
eppState state[MAX_CMDS];
|
||||
char wwork[1024];
|
||||
char* schemaFileName;
|
||||
char* schemaFileNames[6];
|
||||
|
||||
public:
|
||||
|
||||
mdCommander() {mdStdDevIdx=0; cmdsNow=0; cmdNow = 0;
|
||||
memset(commandArgs,0,sizeof(commandArgs));
|
||||
memset(state,0,sizeof(state));
|
||||
memset(schemaLoaded,0,sizeof(schemaLoaded));
|
||||
memset(xmlIO,0,sizeof(xmlIO));
|
||||
|
||||
xmlIO[0].xml = "check.xml" ;
|
||||
xmlIO[1].xml = "info.xml" ;
|
||||
xmlIO[2].xml = "tranq.xml" ;
|
||||
|
@ -43,9 +56,13 @@ class mdCommander {
|
|||
xmlIO[7].xml = "delete.xml";
|
||||
xmlIO[8].xml = "transf.xml";
|
||||
|
||||
schemaFileName="epp-1.0.xsd";
|
||||
schemaFileNames[0]="epp-1.0.xsd";
|
||||
schemaFileNames[1]="domain-1.0.xsd";
|
||||
schemaFileNames[2]="contact-1.0.xsd";
|
||||
schemaFileNames[3]="registrant-1.0.xsd";
|
||||
schemaFileNames[4]="host-1.0.xsd";
|
||||
schemaFileNames[5]="kv-1.0.xsd";
|
||||
|
||||
memset(commandArgs,0,sizeof(commandArgs));
|
||||
}
|
||||
~mdCommander() {}
|
||||
|
||||
|
@ -69,6 +86,7 @@ class mdCommander {
|
|||
if (which && deleted[which-1]) return false;
|
||||
return true;
|
||||
}
|
||||
bool loadSchema(int which);
|
||||
void poll(bool run);
|
||||
void prompt(bool forStrings);
|
||||
void queryTransfer(bool run);
|
||||
|
@ -78,8 +96,10 @@ class mdCommander {
|
|||
void showCommand(bool all);
|
||||
void trash(bool run);
|
||||
void transfer(bool run);
|
||||
void viSchema(int which);
|
||||
void viBlankForm(char which);
|
||||
void update(bool run);
|
||||
|
||||
void writeCommand(char which);
|
||||
bool editingCommand(bool run);
|
||||
bool runCommand(bool all);
|
||||
|
||||
|
|
Loading…
Reference in New Issue