Skip to content

Commit e07c2c5

Browse files
committed
fixed merge conflict when bringing in @ThomasMaxwell repo
2 parents 6db7020 + d2dde1c commit e07c2c5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+54146
-21
lines changed

.gitignore

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Byte-compiled / optimized / DLL files
22
__pycache__/
33
*.py[cod]
4+
*.log
5+
.idea
46

57
# C extensions
68
*.so
@@ -52,3 +54,4 @@ docs/_build/
5254

5355
# PyBuilder
5456
target/
57+
*~

README.txt

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
WPCDAS: Web Processing Climate Data Analysis Services
2+
3+
WPS API leveraging UVCDAT for server-side climate data analytics with clients for web, python, etc.
4+
The inital version of the WPS server was based on code developed by Charles Doutriaux, LLNL.
5+
6+
Package installation:
7+
8+
>> sudo mkdir /usr/local/web
9+
>> sudo chown <username> /usr/local/web
10+
>> cd /usr/local/web
11+
>> git checkout [email protected]:ThomasMaxwell/CDS-WPS-AaaS.git WPCDAS
12+
>> chmod -R a+rX WPCDAS
13+
>> chmod -R a+w WPCDAS/server/logs
14+
>> cd WPCDAS
15+
>> tar xzf sample_data.tar.gz
16+
17+
WPS Server Requirements:
18+
19+
UVCDAT: http://uvcdat.llnl.gov/
20+
21+
Once UVCDAT is installed the following packages should be installed using UVCDAT's python:
22+
23+
lxml: http://lxml.de/
24+
Django: https://www.djangoproject.com/
25+
django-corsheaders: https://github.com/OttoYiu/django-cors-headers
26+
27+
28+
Client Requirements:
29+
30+
The web client is executed using an HTTP server such as Apache or CherryPy.
31+
For Apache, edit the /usr/local/apache2/conf/httpd.conf file:
32+
Set Listen to 8001
33+
Set DocumentRoot to "/usr/local/web/WPCDAS/clients/web/htdocs"
34+
35+
Service Initialization:
36+
37+
Setup the UVCDAT environment:
38+
39+
>> source .../install/bin/setup_runtime.sh
40+
41+
Start the WPS service with the command:
42+
43+
>> cd /usr/local/web/WPCDAS/server; python manage.py runserver
44+
45+
Start the apache server with the command:
46+
47+
>> sudo /usr/local/apache2/bin/apachectl -k start
48+
49+
Testing:
50+
51+
WPS service test URLs can be found at: http://localhost:8001/
52+
53+
Web Client:
54+
55+
A test plot can be accessed at http://localhost:8001/cdas/.
56+
Clicking on the map initiates a WPS call which retrieves a timeseries at the chosen location and then plots it.
57+

clients/.DS_Store

6 KB
Binary file not shown.

clients/cpp/README.txt

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
TBD

clients/python/README.txt

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
TBD

clients/web/.DS_Store

6 KB
Binary file not shown.

clients/web/htdocs/cdas/.project

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>CreateV</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>com.aptana.ide.core.unifiedBuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
13+
</buildSpec>
14+
<natures>
15+
<nature>com.aptana.projects.webnature</nature>
16+
</natures>
17+
</projectDescription>

clients/web/htdocs/cdas/CDS.js

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
var CDS = {
2+
title: "NCCS Climate Data Services",
3+
location: "NASA Goddard Space Flight Center",
4+
url: "https://cds.nccs.nasa.gov/"
5+
};
6+
7+
CDS.wps = {
8+
title: "Web Processing Service Utilities",
9+
10+
execute: function( args ) {
11+
var inputs = this.to_html_inputs( args.inputs );
12+
console.log( 'inputs: ' + inputs );
13+
var request = OpenLayers.Request.GET( {
14+
url: args.url,
15+
params: {
16+
service: "WPS",
17+
version: "1.0.0",
18+
request: "Execute",
19+
rawDataOutput: "result",
20+
identifier: args.process,
21+
datainputs: inputs
22+
},
23+
success: args.success
24+
} );
25+
console.log( request );
26+
},
27+
28+
to_html_inputs: function( object ) {
29+
var result = "[";
30+
for (var property in object) {
31+
if (object.hasOwnProperty(property)) {
32+
result = result.concat( property, "=", object[property], ";" );
33+
}
34+
}
35+
result.concat( "]" );
36+
return result;
37+
}
38+
};

0 commit comments

Comments
 (0)