aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/net/xpc/relay.js
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/net/xpc/relay.js')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/net/xpc/relay.js72
1 files changed, 0 insertions, 72 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/net/xpc/relay.js b/contexts/data/lib/closure-library/closure/goog/net/xpc/relay.js
deleted file mode 100644
index a79e7a5..0000000
--- a/contexts/data/lib/closure-library/closure/goog/net/xpc/relay.js
+++ /dev/null
@@ -1,72 +0,0 @@
-// Copyright 2007 The Closure Library Authors. All Rights Reserved.
-//
-// Licensed 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.
-
-/**
- * @fileoverview Standalone script to be included in the relay-document
- * used by goog.net.xpc.IframeRelayTransport. This script will decode the
- * fragment identifier, determine the target window object and deliver
- * the data to it.
- *
- */
-
-goog.provide('goog.net.xpc.relay');
-
-(function() {
- // Decode the fragement identifier.
- // location.href is expected to be structured as follows:
- // <url>#<channel_name>[,<iframe_id>]|<data>
-
- // Get the fragment identifier.
- var raw = window.location.hash;
- if (!raw) {
- return;
- }
- if (raw.charAt(0) == '#') {
- raw = raw.substring(1);
- }
- var pos = raw.indexOf('|');
- var head = raw.substring(0, pos).split(',');
- var channelName = head[0];
- var iframeId = head.length == 2 ? head[1] : null;
- var frame = raw.substring(pos + 1);
-
- // Find the window object of the peer.
- //
- // The general structure of the frames looks like this:
- // - peer1
- // - relay2
- // - peer2
- // - relay1
- //
- // We are either relay1 or relay2.
-
- var win;
- if (iframeId) {
- // We are relay2 and need to deliver the data to peer2.
- win = window.parent.frames[iframeId];
- } else {
- // We are relay1 and need to deliver the data to peer1.
- win = window.parent.parent;
- }
-
- // Deliver the data.
- try {
- win['xpcRelay'](channelName, frame);
- } catch (e) {
- // Nothing useful can be done here.
- // It would be great to inform the sender the delivery of this message
- // failed, but this is not possible because we are already in the receiver's
- // domain at this point.
- }
-})();