- XOBWUS1 ;ALB/MJK - HWSC :: Web Service Manager ; 09/13/10 4:00pm
- ;;1.0;HwscWebServiceClient;;September 13, 2010;Build 31
- ;
- QUIT
- ;
- ADD ; -- add web service entry
- NEW DIC,Y,XOBY,D
- WRITE !
- SET DIC="^XOB(18.02,",DIC(0)="AELQ",D="B" DO IX^DIC KILL DIC
- SET XOBY=Y
- IF +XOBY>0,'$PIECE(XOBY,U,3) DO GOTO ADDQ
- . DO DISPLAY("",+XOBY)
- . WRITE !!,"This is not a new entry! Please use 'Edit Service' action."
- . DO PAUSE^VALM1
- IF +XOBY>0,$PIECE(XOBY,U,3) DO DOEDIT(+XOBY)
- DO POSTEDIT(+XOBY)
- ADDQ ;
- QUIT
- ;
- EDIT ; -- edit web service entry
- NEW XOBDA,XOBI,VALMY
- DO EN^VALM2(XQORNOD(0),"OS")
- SET XOBI=+$ORDER(VALMY(""))
- IF XOBI>0 DO
- . SET XOBDA=+$GET(^TMP("XOB WEBSERVICES","IDX",$JOB,XOBI,XOBI))
- . DO DISPLAY(XOBI,XOBDA)
- . DO DOEDIT(XOBDA)
- . DO POSTEDIT(XOBDA)
- EDITQ ;
- QUIT
- ;
- DOEDIT(DA) ; -- do actual web service edit
- NEW DR,DIE
- SET DR="[XOBW WEB SERVICE EDIT]",DIE="^XOB(18.02," DO ^DIE
- QUIT
- ;
- POSTEDIT(XOBDA) ; -- warning checks after 'add' or 'edit'
- NEW XOBCLASS,XOBSTAT,XOBISSUE
- SET XOBSTAT=$$CLSVAL(XOBDA,.XOBCLASS,.XOBISSUE)
- IF 'XOBSTAT DO
- . IF $GET(XOBISSUE)=1 WRITE !!,"Warning: No class name specified"
- . IF $GET(XOBISSUE)=2 WRITE !!,"Warning: Class name of '",$GET(XOBCLASS),"' is not a defined class!"
- . IF $GET(XOBISSUE)=3 WRITE !!,"Warning: Class '",$GET(XOBCLASS),"' does not extend %SOAP.WebClient!"
- . DO PAUSE^VALM1
- QUIT
- ;
- CLSCHK(XOBDA) ; -- class check warning message
- NEW XOBCLASS,XOBSTAT,XOBISSUE,XOBMSG
- SET XOBMSG=""
- SET XOBSTAT=$$CLSVAL(XOBDA,.XOBCLASS,.XOBISSUE)
- IF 'XOBSTAT DO
- . IF $GET(XOBISSUE)=1 SET XOBMSG=" o Class name not specified" QUIT
- . IF $GET(XOBISSUE)=2 SET XOBMSG=" o Class is not a defined class" QUIT
- . IF $GET(XOBISSUE)=3 SET XOBMSG=" o Class does not extend %SOAP.WebClient" QUIT
- QUIT XOBMSG
- ;
- CLSVAL(XOBDA,XOBCLASS,XOBISSUE) ; -- do actual validation check
- NEW XOBWCDEF,XOBDA0,XOBOK
- SET XOBOK=0,XOBISSUE=0
- SET XOBDA0=$GET(^XOB(18.02,+XOBDA,0))
- ; -- no need to do check for REST-type [2]; quit w/ok
- IF $PIECE(XOBDA0,"^",2)=2 SET XOBOK=1 GOTO CLSVALQ
- ; -- do checks for SOAP-type [1]
- SET XOBCLASS=$PIECE($GET(^XOB(18.02,+XOBDA,100)),"^")
- ; -- no class name defined
- IF XOBCLASS="" SET XOBOK=0,XOBISSUE=1 GOTO CLSVALQ
- SET XOBWCDEF=##class(%Dictionary.ClassDefinition).%OpenId(XOBCLASS)
- ; -- not a class
- IF XOBWCDEF="" SET XOBOK=0,XOBISSUE=2 GOTO CLSVALQ
- ; -- not a SOAP client class
- IF XOBWCDEF.Super'="%SOAP.WebClient" SET XOBOK=0,XOBISSUE=3 GOTO CLSVALQ
- SET XOBOK=1,XOBISSUE=0
- CLSVALQ ;
- QUIT XOBOK
- ;
- DEL ; -- delete web service entry
- NEW XOBI,VALMY,Y,XOBDA
- DO EN^VALM2(XQORNOD(0),"OS")
- SET XOBI=+$ORDER(VALMY(""))
- ; -- quit if nothing selected
- IF XOBI'>0 GOTO DELQ
- ; -- display entry, ask if 'ok' and delete
- SET XOBDA=+$GET(^TMP("XOB WEBSERVICES","IDX",$JOB,XOBI,XOBI))
- DO DISPLAY(XOBI,XOBDA)
- IF $ORDER(^XOB(18.12,"AB",XOBDA,""))]"" DO
- . WRITE *7
- . WRITE !," ***************************************************"
- . WRITE !," * ATTENTION: This web service is still authorized *"
- . WRITE !," * to 1 or more servers. *"
- . WRITE !," ***************************************************"
- DO
- . NEW DIR
- . SET DIR("A")="Are you sure you want to delete entry"
- . SET DIR("B")="NO",DIR(0)="Y"
- . WRITE !
- . DO ^DIR
- IF '$GET(Y) DO GOTO DELQ
- . WRITE !!,"Deletion aborted."
- . DO PAUSE^VALM1
- ; -- execute deletion
- DO UNREG^XOBWLIB($P(^XOB(18.02,XOBDA,0),"^"))
- WRITE !!,"Entry has been deleted."
- DO PAUSE^VALM1
- DELQ ;
- QUIT
- ;
- DISPLAY(XOBI,DA) ; display web service informaton
- ; input: XOBI == list entry number
- ; DA == internal entry number in file 18.02
- NEW X,DIQ,XOBY,DR,DIC,XOBLINE,XOBDASH,XOBTYPE,XOBCMSG,XOBSRVDA,XOBMULDA
- SET $PIECE(XOBLINE,"=",$GET(IOM,80))=""
- SET $PIECE(XOBDASH,"-",$GET(IOM,80))=""
- DO CLEAR^VALM1
- WRITE !,XOBLINE
- IF $GET(XOBI) DO
- . WRITE !,@VALMAR@(XOBI,0)
- . WRITE !,XOBDASH
- SET DIC="^XOB(18.02,"
- SET DIQ="XOBY("
- SET DIQ(0)="E"
- SET DR=".01;.02;.03;100;200;201;"
- DO EN^DIQ1
- SET XOBTYPE=$GET(XOBY(18.02,DA,.02,"E"))
- WRITE !?5," Name: ",$GET(XOBY(18.02,DA,.01,"E"))
- WRITE !?5," Type: ",$GET(XOBY(18.02,DA,.02,"E"))
- WRITE !?5,"Registered Date/Time: ",$GET(XOBY(18.02,DA,.03,"E"))
- IF XOBTYPE="SOAP" DO
- . WRITE !?5," Proxy Class Name: ",$GET(XOBY(18.02,DA,100,"E"))
- . SET XOBCMSG=$$CLSCHK(DA)
- . IF XOBCMSG]"" WRITE !?5," ",XOBCMSG
- WRITE !?5," Context Root: ",$GET(XOBY(18.02,DA,200,"E"))
- WRITE !?4,"Availability Resource: "_$GET(XOBY(18.02,DA,201,"E"))
- SET X="----------- Web servers '"_$GET(XOBY(18.02,DA,.01,"E"))_"' is authorized to: "
- WRITE !!,X_$EXTRACT(XOBDASH,$L(X)+1,999)
- IF $ORDER(^XOB(18.12,"AB",DA,""))']"" DO
- . WRITE !!," <<<none>>>"
- ELSE DO
- . WRITE ! SET XOBSRVDA=0,XOBMULDA=0
- . FOR SET XOBSRVDA=$ORDER(^XOB(18.12,"AB",DA,XOBSRVDA)) Q:XOBSRVDA']"" DO
- . . FOR SET XOBMULDA=$ORDER(^XOB(18.12,"AB",DA,XOBSRVDA,XOBMULDA)) Q:XOBMULDA']"" DO
- . . . W !," - ",$PIECE($GET(^XOB(18.12,XOBSRVDA,0)),U)
- WRITE !!,XOBDASH,!
- QUIT
- ;
- EXPAND ; -- expand Protocol
- NEW XOBI,XOBY,VALMY
- DO EN^VALM2(XQORNOD(0),"OS")
- SET XOBI=+$ORDER(VALMY(""))
- IF $GET(XOBI) DO
- . SET XOBY("HEADER",1)=""
- . SET XOBY("HEADER",2)=@VALMAR@(XOBI,0)
- . SET XOBY("TITLE")="Web Service Metadata Display"
- . SET XOBY("BUILD CALLBACK")="DO BUILD^XOBWUS1("_+$GET(^TMP("XOB WEBSERVICES","IDX",$JOB,XOBI,XOBI))_")"
- . D EN^XOBWUS2(.XOBY)
- QUIT
- ;
- BUILD(XOBDA) ; -- build display array with WSDL content (callback)
- NEW DIQ,XOBY,DR,DIC,DA,XOBJ,XOBWSDL,XOBDOTS,X,XOBTYPE,XOBCMSG,XOBSRVDA,XOBMULDA
- SET $PIECE(XOBDOTS,".",$GET(IOM,80))="."
- DO CLEAN^VALM10
- SET DIC="^XOB(18.02,"
- SET DIQ="XOBY("
- SET DIQ(0)="E"
- SET DR=".01;.02;.03;100;200;201;300"
- SET DA=$GET(XOBDA)
- DO EN^DIQ1
- SET VALMCNT=0
- SET XOBTYPE=$GET(XOBY(18.02,DA,.02,"E"))
- DO ADDLN(" Name: "_$GET(XOBY(18.02,DA,.01,"E")))
- DO ADDLN(" Service Type: "_$GET(XOBY(18.02,DA,.02,"E")))
- DO ADDLN(" Registered Date/Time: "_$GET(XOBY(18.02,DA,.03,"E")))
- IF XOBTYPE="SOAP" DO
- . DO ADDLN(" Proxy Class Name: "_$GET(XOBY(18.02,DA,100,"E")))
- . SET XOBCMSG=$$CLSCHK(DA)
- . IF XOBCMSG]"" DO ADDLN(" "_XOBCMSG)
- DO ADDLN(" Context Root: "_$GET(XOBY(18.02,DA,200,"E")))
- DO ADDLN(" Availability Resource: "_$GET(XOBY(18.02,DA,201,"E")))
- SET X="............Web servers '"_$GET(XOBY(18.02,DA,.01,"E"))_"' authorized to:"
- DO ADDLN(" "),ADDLN(X_$EXTRACT(XOBDOTS,$L(X)+1,999))
- IF $ORDER(^XOB(18.12,"AB",XOBDA,""))']"" DO
- . DO ADDLN(" "),ADDLN(" <<<none>>>")
- ELSE DO
- . DO ADDLN(" ") SET XOBSRVDA=0,XOBMULDA=0
- . FOR SET XOBSRVDA=$ORDER(^XOB(18.12,"AB",XOBDA,XOBSRVDA)) Q:XOBSRVDA']"" DO
- . . FOR SET XOBMULDA=$ORDER(^XOB(18.12,"AB",XOBDA,XOBSRVDA,XOBMULDA)) Q:XOBMULDA']"" DO
- . . . DO ADDLN(" - "_$PIECE($GET(^XOB(18.12,XOBSRVDA,0)),U))
- DO ADDLN(" ")
- ;
- ; -- no need to do WSDL display info for REST services
- IF XOBTYPE="REST" GOTO BUILDQ
- ;
- ; -- build WSDL lines
- SET X="............WSDL Document:"
- DO ADDLN(X_$EXTRACT(XOBDOTS,$L(X)+1,999))
- SET XOBJ=0
- FOR SET XOBJ=$ORDER(XOBY(18.02,DA,300,XOBJ)) QUIT:XOBJ="" DO
- . DO ADDLN($GET(XOBY(18.02,DA,300,XOBJ)))
- . SET XOBWSDL=1
- ;
- IF '$GET(XOBWSDL) DO
- . DO ADDLN("")
- . DO ADDLN(" <<< No WSDL document available for this web service! >>>")
- . DO ADDLN("")
- BUILDQ ;
- DO ADDLN(XOBDOTS)
- QUIT
- ;
- ADDLN(XOBTEXT) ; -- add line utility
- SET VALMCNT=VALMCNT+1
- D SET^VALM10(VALMCNT,XOBTEXT)
- QUIT
- ;
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HXOBWUS1 7665 printed Feb 19, 2025@00:12:53 Page 2
- XOBWUS1 ;ALB/MJK - HWSC :: Web Service Manager ; 09/13/10 4:00pm
- +1 ;;1.0;HwscWebServiceClient;;September 13, 2010;Build 31
- +2 ;
- +3 QUIT
- +4 ;
- ADD ; -- add web service entry
- +1 NEW DIC,Y,XOBY,D
- +2 WRITE !
- +3 SET DIC="^XOB(18.02,"
- SET DIC(0)="AELQ"
- SET D="B"
- DO IX^DIC
- KILL DIC
- +4 SET XOBY=Y
- +5 IF +XOBY>0
- IF '$PIECE(XOBY,U,3)
- Begin DoDot:1
- +6 DO DISPLAY("",+XOBY)
- +7 WRITE !!,"This is not a new entry! Please use 'Edit Service' action."
- +8 DO PAUSE^VALM1
- End DoDot:1
- GOTO ADDQ
- +9 IF +XOBY>0
- IF $PIECE(XOBY,U,3)
- DO DOEDIT(+XOBY)
- +10 DO POSTEDIT(+XOBY)
- ADDQ ;
- +1 QUIT
- +2 ;
- EDIT ; -- edit web service entry
- +1 NEW XOBDA,XOBI,VALMY
- +2 DO EN^VALM2(XQORNOD(0),"OS")
- +3 SET XOBI=+$ORDER(VALMY(""))
- +4 IF XOBI>0
- Begin DoDot:1
- +5 SET XOBDA=+$GET(^TMP("XOB WEBSERVICES","IDX",$JOB,XOBI,XOBI))
- +6 DO DISPLAY(XOBI,XOBDA)
- +7 DO DOEDIT(XOBDA)
- +8 DO POSTEDIT(XOBDA)
- End DoDot:1
- EDITQ ;
- +1 QUIT
- +2 ;
- DOEDIT(DA) ; -- do actual web service edit
- +1 NEW DR,DIE
- +2 SET DR="[XOBW WEB SERVICE EDIT]"
- SET DIE="^XOB(18.02,"
- DO ^DIE
- +3 QUIT
- +4 ;
- POSTEDIT(XOBDA) ; -- warning checks after 'add' or 'edit'
- +1 NEW XOBCLASS,XOBSTAT,XOBISSUE
- +2 SET XOBSTAT=$$CLSVAL(XOBDA,.XOBCLASS,.XOBISSUE)
- +3 IF 'XOBSTAT
- Begin DoDot:1
- +4 IF $GET(XOBISSUE)=1
- WRITE !!,"Warning: No class name specified"
- +5 IF $GET(XOBISSUE)=2
- WRITE !!,"Warning: Class name of '",$GET(XOBCLASS),"' is not a defined class!"
- +6 IF $GET(XOBISSUE)=3
- WRITE !!,"Warning: Class '",$GET(XOBCLASS),"' does not extend %SOAP.WebClient!"
- +7 DO PAUSE^VALM1
- End DoDot:1
- +8 QUIT
- +9 ;
- CLSCHK(XOBDA) ; -- class check warning message
- +1 NEW XOBCLASS,XOBSTAT,XOBISSUE,XOBMSG
- +2 SET XOBMSG=""
- +3 SET XOBSTAT=$$CLSVAL(XOBDA,.XOBCLASS,.XOBISSUE)
- +4 IF 'XOBSTAT
- Begin DoDot:1
- +5 IF $GET(XOBISSUE)=1
- SET XOBMSG=" o Class name not specified"
- QUIT
- +6 IF $GET(XOBISSUE)=2
- SET XOBMSG=" o Class is not a defined class"
- QUIT
- +7 IF $GET(XOBISSUE)=3
- SET XOBMSG=" o Class does not extend %SOAP.WebClient"
- QUIT
- End DoDot:1
- +8 QUIT XOBMSG
- +9 ;
- CLSVAL(XOBDA,XOBCLASS,XOBISSUE) ; -- do actual validation check
- +1 NEW XOBWCDEF,XOBDA0,XOBOK
- +2 SET XOBOK=0
- SET XOBISSUE=0
- +3 SET XOBDA0=$GET(^XOB(18.02,+XOBDA,0))
- +4 ; -- no need to do check for REST-type [2]; quit w/ok
- +5 IF $PIECE(XOBDA0,"^",2)=2
- SET XOBOK=1
- GOTO CLSVALQ
- +6 ; -- do checks for SOAP-type [1]
- +7 SET XOBCLASS=$PIECE($GET(^XOB(18.02,+XOBDA,100)),"^")
- +8 ; -- no class name defined
- +9 IF XOBCLASS=""
- SET XOBOK=0
- SET XOBISSUE=1
- GOTO CLSVALQ
- +10 SET XOBWCDEF=##class(%Dictionary.ClassDefinition).%OpenId(XOBCLASS)
- +11 ; -- not a class
- +12 IF XOBWCDEF=""
- SET XOBOK=0
- SET XOBISSUE=2
- GOTO CLSVALQ
- +13 ; -- not a SOAP client class
- +14 IF XOBWCDEF.Super'="%SOAP.WebClient"
- SET XOBOK=0
- SET XOBISSUE=3
- GOTO CLSVALQ
- +15 SET XOBOK=1
- SET XOBISSUE=0
- CLSVALQ ;
- +1 QUIT XOBOK
- +2 ;
- DEL ; -- delete web service entry
- +1 NEW XOBI,VALMY,Y,XOBDA
- +2 DO EN^VALM2(XQORNOD(0),"OS")
- +3 SET XOBI=+$ORDER(VALMY(""))
- +4 ; -- quit if nothing selected
- +5 IF XOBI'>0
- GOTO DELQ
- +6 ; -- display entry, ask if 'ok' and delete
- +7 SET XOBDA=+$GET(^TMP("XOB WEBSERVICES","IDX",$JOB,XOBI,XOBI))
- +8 DO DISPLAY(XOBI,XOBDA)
- +9 IF $ORDER(^XOB(18.12,"AB",XOBDA,""))]""
- Begin DoDot:1
- +10 WRITE *7
- +11 WRITE !," ***************************************************"
- +12 WRITE !," * ATTENTION: This web service is still authorized *"
- +13 WRITE !," * to 1 or more servers. *"
- +14 WRITE !," ***************************************************"
- End DoDot:1
- +15 Begin DoDot:1
- +16 NEW DIR
- +17 SET DIR("A")="Are you sure you want to delete entry"
- +18 SET DIR("B")="NO"
- SET DIR(0)="Y"
- +19 WRITE !
- +20 DO ^DIR
- End DoDot:1
- +21 IF '$GET(Y)
- Begin DoDot:1
- +22 WRITE !!,"Deletion aborted."
- +23 DO PAUSE^VALM1
- End DoDot:1
- GOTO DELQ
- +24 ; -- execute deletion
- +25 DO UNREG^XOBWLIB($PIECE(^XOB(18.02,XOBDA,0),"^"))
- +26 WRITE !!,"Entry has been deleted."
- +27 DO PAUSE^VALM1
- DELQ ;
- +1 QUIT
- +2 ;
- DISPLAY(XOBI,DA) ; display web service informaton
- +1 ; input: XOBI == list entry number
- +2 ; DA == internal entry number in file 18.02
- +3 NEW X,DIQ,XOBY,DR,DIC,XOBLINE,XOBDASH,XOBTYPE,XOBCMSG,XOBSRVDA,XOBMULDA
- +4 SET $PIECE(XOBLINE,"=",$GET(IOM,80))=""
- +5 SET $PIECE(XOBDASH,"-",$GET(IOM,80))=""
- +6 DO CLEAR^VALM1
- +7 WRITE !,XOBLINE
- +8 IF $GET(XOBI)
- Begin DoDot:1
- +9 WRITE !,@VALMAR@(XOBI,0)
- +10 WRITE !,XOBDASH
- End DoDot:1
- +11 SET DIC="^XOB(18.02,"
- +12 SET DIQ="XOBY("
- +13 SET DIQ(0)="E"
- +14 SET DR=".01;.02;.03;100;200;201;"
- +15 DO EN^DIQ1
- +16 SET XOBTYPE=$GET(XOBY(18.02,DA,.02,"E"))
- +17 WRITE !?5," Name: ",$GET(XOBY(18.02,DA,.01,"E"))
- +18 WRITE !?5," Type: ",$GET(XOBY(18.02,DA,.02,"E"))
- +19 WRITE !?5,"Registered Date/Time: ",$GET(XOBY(18.02,DA,.03,"E"))
- +20 IF XOBTYPE="SOAP"
- Begin DoDot:1
- +21 WRITE !?5," Proxy Class Name: ",$GET(XOBY(18.02,DA,100,"E"))
- +22 SET XOBCMSG=$$CLSCHK(DA)
- +23 IF XOBCMSG]""
- WRITE !?5," ",XOBCMSG
- End DoDot:1
- +24 WRITE !?5," Context Root: ",$GET(XOBY(18.02,DA,200,"E"))
- +25 WRITE !?4,"Availability Resource: "_$GET(XOBY(18.02,DA,201,"E"))
- +26 SET X="----------- Web servers '"_$GET(XOBY(18.02,DA,.01,"E"))_"' is authorized to: "
- +27 WRITE !!,X_$EXTRACT(XOBDASH,$LENGTH(X)+1,999)
- +28 IF $ORDER(^XOB(18.12,"AB",DA,""))']""
- Begin DoDot:1
- +29 WRITE !!," <<<none>>>"
- End DoDot:1
- +30 IF '$TEST
- Begin DoDot:1
- +31 WRITE !
- SET XOBSRVDA=0
- SET XOBMULDA=0
- +32 FOR
- SET XOBSRVDA=$ORDER(^XOB(18.12,"AB",DA,XOBSRVDA))
- if XOBSRVDA']""
- QUIT
- Begin DoDot:2
- +33 FOR
- SET XOBMULDA=$ORDER(^XOB(18.12,"AB",DA,XOBSRVDA,XOBMULDA))
- if XOBMULDA']""
- QUIT
- Begin DoDot:3
- +34 WRITE !," - ",$PIECE($GET(^XOB(18.12,XOBSRVDA,0)),U)
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +35 WRITE !!,XOBDASH,!
- +36 QUIT
- +37 ;
- EXPAND ; -- expand Protocol
- +1 NEW XOBI,XOBY,VALMY
- +2 DO EN^VALM2(XQORNOD(0),"OS")
- +3 SET XOBI=+$ORDER(VALMY(""))
- +4 IF $GET(XOBI)
- Begin DoDot:1
- +5 SET XOBY("HEADER",1)=""
- +6 SET XOBY("HEADER",2)=@VALMAR@(XOBI,0)
- +7 SET XOBY("TITLE")="Web Service Metadata Display"
- +8 SET XOBY("BUILD CALLBACK")="DO BUILD^XOBWUS1("_+$GET(^TMP("XOB WEBSERVICES","IDX",$JOB,XOBI,XOBI))_")"
- +9 DO EN^XOBWUS2(.XOBY)
- End DoDot:1
- +10 QUIT
- +11 ;
- BUILD(XOBDA) ; -- build display array with WSDL content (callback)
- +1 NEW DIQ,XOBY,DR,DIC,DA,XOBJ,XOBWSDL,XOBDOTS,X,XOBTYPE,XOBCMSG,XOBSRVDA,XOBMULDA
- +2 SET $PIECE(XOBDOTS,".",$GET(IOM,80))="."
- +3 DO CLEAN^VALM10
- +4 SET DIC="^XOB(18.02,"
- +5 SET DIQ="XOBY("
- +6 SET DIQ(0)="E"
- +7 SET DR=".01;.02;.03;100;200;201;300"
- +8 SET DA=$GET(XOBDA)
- +9 DO EN^DIQ1
- +10 SET VALMCNT=0
- +11 SET XOBTYPE=$GET(XOBY(18.02,DA,.02,"E"))
- +12 DO ADDLN(" Name: "_$GET(XOBY(18.02,DA,.01,"E")))
- +13 DO ADDLN(" Service Type: "_$GET(XOBY(18.02,DA,.02,"E")))
- +14 DO ADDLN(" Registered Date/Time: "_$GET(XOBY(18.02,DA,.03,"E")))
- +15 IF XOBTYPE="SOAP"
- Begin DoDot:1
- +16 DO ADDLN(" Proxy Class Name: "_$GET(XOBY(18.02,DA,100,"E")))
- +17 SET XOBCMSG=$$CLSCHK(DA)
- +18 IF XOBCMSG]""
- DO ADDLN(" "_XOBCMSG)
- End DoDot:1
- +19 DO ADDLN(" Context Root: "_$GET(XOBY(18.02,DA,200,"E")))
- +20 DO ADDLN(" Availability Resource: "_$GET(XOBY(18.02,DA,201,"E")))
- +21 SET X="............Web servers '"_$GET(XOBY(18.02,DA,.01,"E"))_"' authorized to:"
- +22 DO ADDLN(" ")
- DO ADDLN(X_$EXTRACT(XOBDOTS,$LENGTH(X)+1,999))
- +23 IF $ORDER(^XOB(18.12,"AB",XOBDA,""))']""
- Begin DoDot:1
- +24 DO ADDLN(" ")
- DO ADDLN(" <<<none>>>")
- End DoDot:1
- +25 IF '$TEST
- Begin DoDot:1
- +26 DO ADDLN(" ")
- SET XOBSRVDA=0
- SET XOBMULDA=0
- +27 FOR
- SET XOBSRVDA=$ORDER(^XOB(18.12,"AB",XOBDA,XOBSRVDA))
- if XOBSRVDA']""
- QUIT
- Begin DoDot:2
- +28 FOR
- SET XOBMULDA=$ORDER(^XOB(18.12,"AB",XOBDA,XOBSRVDA,XOBMULDA))
- if XOBMULDA']""
- QUIT
- Begin DoDot:3
- +29 DO ADDLN(" - "_$PIECE($GET(^XOB(18.12,XOBSRVDA,0)),U))
- End DoDot:3
- End DoDot:2
- End DoDot:1
- +30 DO ADDLN(" ")
- +31 ;
- +32 ; -- no need to do WSDL display info for REST services
- +33 IF XOBTYPE="REST"
- GOTO BUILDQ
- +34 ;
- +35 ; -- build WSDL lines
- +36 SET X="............WSDL Document:"
- +37 DO ADDLN(X_$EXTRACT(XOBDOTS,$LENGTH(X)+1,999))
- +38 SET XOBJ=0
- +39 FOR
- SET XOBJ=$ORDER(XOBY(18.02,DA,300,XOBJ))
- if XOBJ=""
- QUIT
- Begin DoDot:1
- +40 DO ADDLN($GET(XOBY(18.02,DA,300,XOBJ)))
- +41 SET XOBWSDL=1
- End DoDot:1
- +42 ;
- +43 IF '$GET(XOBWSDL)
- Begin DoDot:1
- +44 DO ADDLN("")
- +45 DO ADDLN(" <<< No WSDL document available for this web service! >>>")
- +46 DO ADDLN("")
- End DoDot:1
- BUILDQ ;
- +1 DO ADDLN(XOBDOTS)
- +2 QUIT
- +3 ;
- ADDLN(XOBTEXT) ; -- add line utility
- +1 SET VALMCNT=VALMCNT+1
- +2 DO SET^VALM10(VALMCNT,XOBTEXT)
- +3 QUIT
- +4 ;