1 | ONCXDEM ;HCIOFO/SG - HTTP AND WEB SERVICES (DEMO) ; 5/14/04 10:59am
|
---|
2 | ;;2.11;ONCOLOGY;**40**;Mar 07, 1995
|
---|
3 | ;
|
---|
4 | Q
|
---|
5 | ;
|
---|
6 | ;***** DEMO ENTRY POINT
|
---|
7 | ;
|
---|
8 | ; The ^TMP($J,"ONCX") global node is used by the entry point.
|
---|
9 | ;
|
---|
10 | DEMO ;
|
---|
11 | N BODY,DIR,DIRUT,DTOUT,DUOUT,HEADER,RC,URL,X,Y
|
---|
12 | S BODY=$NA(^TMP($J,"ONCX"))
|
---|
13 | S URL="http://www.hardhats.org"
|
---|
14 | ;
|
---|
15 | S RC=0
|
---|
16 | F D Q:RC
|
---|
17 | . K @BODY,HEADER
|
---|
18 | . ;--- Request a URL from the user
|
---|
19 | . K DIR S DIR(0)="F"
|
---|
20 | . S DIR("A")="URL",DIR("B")=URL
|
---|
21 | . D ^DIR I $D(DIRUT) S RC=1 Q
|
---|
22 | . S URL=$$TRIM^XLFSTR(Y)
|
---|
23 | . ;--- Request the resource
|
---|
24 | . S RC=$$GETURL^ONCX10(URL,,BODY,.HEADER)
|
---|
25 | . I RC<0 D ERROR(RC) S RC=0 Q
|
---|
26 | . ;--- Print the data
|
---|
27 | . D PRINT(BODY,.HEADER)
|
---|
28 | . S RC=0
|
---|
29 | ;
|
---|
30 | ;--- Cleanup
|
---|
31 | K @BODY
|
---|
32 | Q
|
---|
33 | ;
|
---|
34 | ;***** PRINT THE ERROR MESSAGE
|
---|
35 | ERROR(ERR) ;
|
---|
36 | W !!,"ERROR: "_$J(+ERR,3)_" "_$P(ERR,U,2),!
|
---|
37 | W $J("",12)_$P(ERR,U,3,4),!
|
---|
38 | Q
|
---|
39 | ;
|
---|
40 | ;***** PAUSES THE OUTPUT IN THE END OF PAGE
|
---|
41 | ;
|
---|
42 | ; N Number of lines to reserve
|
---|
43 | ;
|
---|
44 | ; Return values:
|
---|
45 | ; 0 Ok (continue)
|
---|
46 | ; >0 Exit Request or Timeout
|
---|
47 | ;
|
---|
48 | PAGE(N) ;
|
---|
49 | Q:($Y+$G(N))<IOSL 0
|
---|
50 | N DIR,DIRUT,DTOUT,DUOUT,X,Y
|
---|
51 | S DIR(0)="E" D ^DIR W !! S $Y=0
|
---|
52 | Q '$G(Y)
|
---|
53 | ;
|
---|
54 | ;***** PRINTS THE RESPONSE
|
---|
55 | PRINT(ONCX8DAT,HEADER) ;
|
---|
56 | N I,J
|
---|
57 | ;---
|
---|
58 | I $D(HEADER)>0 D Q:$$PAGE(IOSL)
|
---|
59 | . W @IOF,"----- HTTP HEADER -----",!!
|
---|
60 | . W $G(HEADER),!
|
---|
61 | . S I=""
|
---|
62 | . F S I=$O(HEADER(I)) Q:I="" W I_"="_HEADER(I),!
|
---|
63 | ;---
|
---|
64 | D:$D(@ONCX8DAT)>1
|
---|
65 | . W @IOF,"----- MESSAGE ONCX8DAT -----",!!
|
---|
66 | . S I=""
|
---|
67 | . F S I=$O(@ONCX8DAT@(I)) Q:I="" W @ONCX8DAT@(I) D W !
|
---|
68 | . . S J="" F S J=$O(@ONCX8DAT@(I,J)) Q:J="" W @ONCX8DAT@(I,J)
|
---|
69 | Q
|
---|