1f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 2f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// found in the LICENSE file. 4f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 5f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)// Custom binding for the Identity API. 6f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 7f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)var binding = require('binding').Binding.create('identity'); 8f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 9f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)binding.registerCustomHook(function(binding, id, contextType) { 10f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) var apiFunctions = binding.apiFunctions; 11f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) var identity = binding.compiledApi; 12f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 13f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) apiFunctions.setHandleRequest('getRedirectURL', function(path) { 14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) if (path === null || path === undefined) 15f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) path = '/'; 16f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) else 17f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) path = String(path); 18f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) if (path[0] != '/') 19f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) path = '/' + path; 20f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) return 'https://' + id + '.chromiumapp.org' + path; 21f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) }); 22f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)}); 23f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles) 24f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)exports.binding = binding.generate(); 25