Difference between revisions of "DAP Test Server"
From OPeNDAP Documentation
(→Proposed solution) |
(→Background) |
||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
When I finished Jake Hamby's work on the Java-DAP I wrote the DODS Test Server. This server utilized the Java-DAP to build synthetic datasets. This was accomplished by: | When I finished Jake Hamby's work on the Java-DAP I wrote the DODS Test Server. This server utilized the Java-DAP to build synthetic datasets. This was accomplished by: | ||
− | # Subclasssing all of the datatypes to | + | # Subclasssing all of the datatypes to provide a specialization of the type that would generate synthetic data using algorithms such as trigonometric functions, Fibonacci series, etc. |
# These test classes where packaged in class factory. | # These test classes where packaged in class factory. | ||
# The parsers were passed an instance of this class factory and a one (or more) DAP2 metadata documents (DDX, DDS, DAS) from which the parser would build a DDS object in memory. | # The parsers were passed an instance of this class factory and a one (or more) DAP2 metadata documents (DDX, DDS, DAS) from which the parser would build a DDS object in memory. | ||
− | # Calling the serialize() method of the DDS would cause to generate a DAP2 Data object conforming to the ingested document(s) and carrying the synthetically generated data payload. | + | # Calling the serialize() method of the DDS object would cause it to generate a DAP2 Data object conforming to the ingested metadata document(s) and carrying the synthetically generated data payload. |
#* Sequences all had the same length, controlled by a configuration option. | #* Sequences all had the same length, controlled by a configuration option. | ||
Latest revision as of 15:15, 12 April 2012
Contents
1 Background
When I finished Jake Hamby's work on the Java-DAP I wrote the DODS Test Server. This server utilized the Java-DAP to build synthetic datasets. This was accomplished by:
- Subclasssing all of the datatypes to provide a specialization of the type that would generate synthetic data using algorithms such as trigonometric functions, Fibonacci series, etc.
- These test classes where packaged in class factory.
- The parsers were passed an instance of this class factory and a one (or more) DAP2 metadata documents (DDX, DDS, DAS) from which the parser would build a DDS object in memory.
- Calling the serialize() method of the DDS object would cause it to generate a DAP2 Data object conforming to the ingested metadata document(s) and carrying the synthetically generated data payload.
- Sequences all had the same length, controlled by a configuration option.
2 Problem addressed
Both libdap and Hyrax suffer from the absence of similar code written for the BES and Hyrax using C++.
The DTS would provide an excellent mechanism with which to:
- Test fringe cases in the data model for which the data model should work but no regular dataset modeling the structure is readily available.
- Allow us to test the code with more complete code coverage.
- Allows client developers to easily test their clients against a variety of data representations.
- Because the data are generated algorithmically, test verification becomes easier.
3 Proposed solution
Implement a DTS in C++ using the BES and libdap.