summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/contrib/samples/comet-webapp/src/main/webapp/index.html
blob: c96507eb0219a142e8741b119154aaaea7cdcfd0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<!--
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
-->
<html>
	<head>
		<title>Apache Tuscany Comet Sample</title>
		<script type="text/javascript" src="org.apache.tuscany.sca.cometComponentContext.js"></script>
		<script type="text/javascript">
		$(document).ready(function()
		{
			document.getElementById('connect').onclick = function(event) {
                /* transport can be : long-polling, streaming or websocket */
			 	tuscanyComet.connect(document.getElementById('transport').value);
                document.getElementById('connect').disabled = true;
                document.getElementById('transport').disabled = true;
			}
			

			document.getElementById('tempCButton').onclick = function(event) {
				cometComponentContext.c1.TemperatureService.getTemperatureCelsius(updateTempC);
			}

			document.getElementById('tempFButton').onclick = function(event) {
				cometComponentContext.c1.TemperatureService.getTemperatureFahrenheit(updateTempF);
			}

			document.getElementById('humButton').onclick = function(event) {
				cometComponentContext.c1.HumidityService.getHumidity(updateHum);
			}

			document.getElementById('precipButton').onclick = function(event) {
				cometComponentContext.c2.PrecipitationService.getPrecipitation(updatePrecip);
			}
		});

		function updateTempC(response) {
			document.getElementById('tempCText').textContent = response;
		}

		function updateTempF(response) {
			document.getElementById('tempFText').textContent = response;
		}

		function updateHum(response) {
			document.getElementById('humText').textContent = response;
		}

		function updatePrecip(response) {
			document.getElementById('precipText').textContent = response;
		}
		</script>
	</head>
	<body>
		<h2>Apache Tuscany Comet Sample</h2>
		<label>Select transport</label>
    	<select id="transport">
    		<option id="streaming" value="streaming">http streaming</option>
			<option id="long-polling" value="long-polling">long-polling</option>
			<option id="websocket" value="websocket">websocket</option>
    	</select>
    	<input id='connect' type='submit' value='Connect'/>
		<h3>Weather Monitor</h3>
		<p/>
		<table>
			<tr>
				<th align="left">Temperature (Celsius):</th>
				<td><span id='tempCText'>N/A</span></td>
				<td><input type='button' id='tempCButton' value="Update"/></td>
			</tr>
			<tr>
				<th align="left">Temperature (Fahrenheit):</th>
				<td><span id='tempFText'>N/A</span></td>
				<td><input type='button' id='tempFButton' value="Update"/></td>
			</tr>
			<tr>
				<th align="left">Humidity:</th>
				<td><span id='humText'>N/A</span></td>
				<td><input type='button' id='humButton' value="Update"/></td>
			</tr>
			<tr>
				<th align="left">Precipitation probability:</th>
				<td><span id='precipText'>N/A</span></td>
				<td><input type='button' id='precipButton' value="Update"/></td>
			</tr>
		</table>
	</body>
</html>