1: # Apache::NSDL::FromTheGateway
2: #
3: # FromTheGateway.pm
4: # API for passing information to NSDL from the Gateway Server
5: #
6: # For more documentation, read the POD documentation
7: # of this module with the perldoc command:
8: #
9: # perldoc ./FromTheGateway.pm
10: #
11: # Brief description
12: # =================
13: #
14: # This module contains functionality for
15: # transferring information from NSDL to the Gateway Server.
16: #
17: # In terms of the overall data flow, the
18: # '=====>' below indicates the role of this
19: # module.
20: #
21: # NSDL ---------> Gateway --------> LON-CAPA
22: # LON-CAPA -----> Gateway ========> NSDL
23: #
24: # SUBROUTINES:
25: # NSDL->view_LONCAPAgateway_results
26: # NSDL->view_LONCAPAgateway_metadata_record
27: # NSDL->access_LONCAPAgateway_resource
28: # NSDL->search_against_LONCAPAgateway
29:
30: # Year 2002
31: # Scott Harrison
32: # February-May
33: #
34: ###
35:
36: package Apache::NSDL::FromTheGateway;
37:
38: # ================================================================ DEPENDENCIES
39: use strict; # enforce handling of variables, references and subroutines
40:
41: # ============================================================ MODULE VARIABLES
42: my $VERSION = sprintf("%d.%02d", q$Revision: 1.7 $ =~ /(\d+)\.(\d+)/);
43:
44: # ================================================================= SUBROUTINES
45:
46: # ------------------------------------------- NSDL->view_LONCAPAgateway_results
47: sub view_LONCAPAgateway_results {
48: my ($eref)=@_;
49: return Apache::GATEWAY::ToNSDL::view_LONCAPAnetwork_results($eref);
50: }
51:
52: # ----------------------------------- NSDL->view_LONCAPAgateway_metadata_record
53: sub view_LONCAPAgateway_metadata_record {
54: my ($eref)=@_;
55: return Apache::GATEWAY::ToNSDL::view_LONCAPAnetwork_metadata_record($eref);
56: }
57:
58: # ---------------------------------------- NSDL->access_LONCAPAgateway_resource
59: sub access_LONCAPAgateway_resource {
60: my ($eref)=@_;
61: return Apache::GATEWAY::ToNSDL::access_LONCAPAnetwork_resource($eref);
62: }
63:
64: # ----------------------------------------- NSDL->search_against_LONCAPAgateway
65: sub search_against_LONCAPAgateway {
66: my ($eref)=@_;
67: return Apache::GATEWAY::ToNSDL::search_against_LONCAPAnetwork($eref);
68: }
69:
70: 1;
71:
72: __END__
73:
74: =pod
75:
76: =head1 NAME
77:
78: B<Apache::NSDL::FromTheGateway> - API for passing information to NSDL from the Gateway Server
79:
80: =head1 SYNOPSIS
81:
82: use Apache::NSDL::FromTheGateway;
83:
84: my $arrayref=
85: Apache::NSDL::FromTheGateway::view_LONCAPAgateway_results
86: ($OAI_protocol_request);
87:
88: =head1 DESCRIPTION
89:
90: This module contains functionality for
91: transferring information to NSDL from the Gateway Server.
92:
93: In terms of the overall data flow, the
94: '=====>' below indicates the role of this
95: module.
96:
97: NSDL ---------E<gt> Gateway --------E<gt> LON-CAPA
98:
99: LON-CAPA -----E<gt> B<Gateway ========E<gt> NSDL>
100:
101: =head2 EXIT CODES
102:
103: The subroutines of this module all output an exit code which
104: describes the status of function completion. The exit code
105: may be followed by a more descriptive message such as:
106:
107: FORMATERROR:Sun May 5 20:15:16 GMT 2002:missing 'protocol://' pattern
108:
109: =over 4
110:
111: =item *
112:
113: B<'SUCCESS'>, information was found and is being returned
114:
115: =item *
116:
117: B<'EMPTY'>, everything functioned properly, but no information was present
118:
119: =item *
120:
121: B<'BADEMPTY'>, everything appeared to function properly, but no information
122: was present (which defies expectation); this is useful for detecting phantom
123: cases of connectivity when verifying test cases of vertical software partitions
124:
125: =item *
126:
127: B<'TIMEOUT'>, the request is taking WAY too long
128:
129: =item *
130:
131: B<'FORMATERROR'>, the input argument is not formatted correctly in a way that
132: can be processed by the NSDL server
133:
134: =item *
135:
136: B<'CONNECTIONFAILURE'>, the NSDL server cannot be contacted
137:
138: =back
139:
140: =head2 SUBROUTINES
141:
142: Note that the subroutines all output an exit code which
143: describes the status of function completion.
144:
145: In the case of failed function completion, the other
146: output argument(s) will typically only be 'NULL' values.
147:
148: =over 4
149:
150: =item B<Apache::NSDL::view_LONCAPAgateway_results>
151:
152: =over 4
153:
154: =item B<Input> - Scalar string
155:
156: Memory location of Gateway Server results.
157:
158: =item B<Output> - Scalar string, Scalar string reference
159:
160: An exit code is returned as a scalar string.
161:
162: View the Gateway Server results.
163:
164: =item B<Description>
165:
166: This facilitates the viewing of LON-CAPA record lists.
167: B<This relates to information that has passed
168: to NSDL I<from the> GATEWAY>.
169:
170: =item B<Status of Implementation>
171:
172: n/a
173:
174: =back
175:
176: =item B<Apache::NSDL::view_LONCAPAgateway_metadata_record>
177:
178: =over 4
179:
180: =item B<Input> - Scalar string
181:
182: Identifier for a specific LON-CAPA metadata record.
183:
184: =item B<Output> - Scalar string, Scalar string reference
185:
186: An exit code is returned as a scalar string.
187:
188: A pointer to the metadata.
189:
190: =item B<Description>
191:
192: This provides the content of the resource matching a given request.
193: B<The information has passed to NSDL I<from the> GATEWAY>.
194:
195: =item B<Status of Implementation>
196:
197: n/a
198:
199: =back
200:
201: =item B<Apache::NSDL::access_LONCAPAgateway_resource>
202:
203: =over 4
204:
205: =item B<Input> - Scalar string
206:
207: Identifier for LON-CAPA resource.
208:
209: =item B<Output> - Scalar string, Scalar string reference.
210:
211: An exit code is returned as a scalar string.
212:
213: Pointer to information about accessing LON-CAPA resource.
214:
215: =item B<Description>
216:
217: This accepts access to a LON-CAPA resource.
218: B<The information has passed to NSDL I<from the> GATEWAY>.
219:
220: =item B<Status of Implementation>
221:
222: n/a
223:
224: =back
225:
226: =item B<Apache::NSDL::search_against_LONCAPAgateway>
227:
228: =over 4
229:
230: =item B<Input> - Scalar string
231:
232: Set of search expressions and corresponding fields to pass onto the
233: LONCAPAgateway.
234:
235: =item B<Output> - Scalar string, Scalar array reference
236:
237: An exit code is returned as a scalar string.
238:
239: A pointer to the location of search results is returned.
240:
241: =item B<Description>
242:
243: This models the functionality by which an NSDL server will pass a search
244: request to the NSDL-LONCAPA Gateway Server.
245: This launches the search request and receives a pointer as to
246: where the results will be.
247:
248: =item B<Status of Implementation>
249:
250: n/a
251:
252: =back
253:
254: =back
255:
256: =head1 README
257:
258: B<Apache::NSDL::FromTheGateway>
259: is part of the NSDL-LONCAPA Gateway Server system.
260: Please see http://nsdl.lon-capa.org/ for more information.
261:
262: =head1 AUTHOR
263:
264: Scott Harrison, 2002
265:
266: =head1 PREREQUISITES
267:
268: This module requires the C<strict> module.
269:
270: =head1 COREQUISITES
271:
272: Apache::NSDL::ToTheGateway
273: Apache::GATEWAY::ToNSDL
274: Apache::GATEWAY::FromNSDL
275: Apache::GATEWAY::ToLONCAPA
276: Apache::GATEWAY::FromLONCAPA
277: Apache::LONCAPA::FromTheGateway
278: Apache::LONCAPA::ToTheGateway
279:
280: =head1 SEE ALSO
281:
282: http://www.lon-capa.org/
283:
284: http://www.smete.org/
285:
286: Also visit the other Apache::NSDL::*, Apache::LONCAPA::*,
287: and Apache::GATEWAY::* manpages.
288:
289: =head1 OSNAMES
290:
291: linux
292:
293: =cut
294:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>