| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| * 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. |
| --> |
| <Module> |
| <ModulePrefs title="Sample PubSub Subscriber" |
| height="250"> |
| <Require feature="pubsub-2"> |
| <Param name="topics"> |
| <![CDATA[ |
| <Topic title="Random Number" name="org.apache.shindig.random-number" |
| description="Subscribes to random number generator." type="number" |
| subscribe="true"/> |
| ]]> |
| </Param> |
| </Require> |
| </ModulePrefs> |
| <Content type="html"> |
| <![CDATA[ |
| <script> |
| var subId; |
| |
| // Example of setting a parameter to the HubClient used by pubsub-2 feature. |
| gadgets.HubSettings.params.HubClient.onSecurityAlert = function(alertSource, alertType) { |
| alert("SECURITY ERROR!"); |
| window.location.href = "about:blank"; |
| }; |
| |
| function callback(topic, data, subscriberData) { |
| document.getElementById("output").innerHTML = |
| "message : " + gadgets.util.escapeString(data + "") + "<br/>" + |
| "received at: " + (new Date()).toString(); |
| } |
| |
| function subscribe() { |
| subId = gadgets.Hub.subscribe("org.apache.shindig.random-number", callback); |
| } |
| |
| function unsubscribe() { |
| gadgets.Hub.unsubscribe(subId); |
| document.getElementById("output").innerHTML = ""; |
| } |
| |
| </script> |
| <div> |
| <input type="button" value="Subscribe" onclick="subscribe()"/> |
| <input type="button" value="Unsubscribe" onclick="unsubscribe()"/> |
| </div> |
| <div id="output"> |
| </div> |
| ]]> |
| </Content> |
| </Module> |