ProxiedPath.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /*
  2. Copyright (c) 2004-2012, The Dojo Foundation All Rights Reserved.
  3. Available via Academic Free License >= 2.1 OR the modified BSD license.
  4. see: http://dojotoolkit.org/license for details
  5. */
  6. if(!dojo._hasResource["dojox.rpc.ProxiedPath"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
  7. dojo._hasResource["dojox.rpc.ProxiedPath"] = true;
  8. dojo.provide("dojox.rpc.ProxiedPath");
  9. dojo.require("dojox.rpc.Service");
  10. dojox.rpc.envelopeRegistry.register(
  11. "PROXIED-PATH",function(str){return str == "PROXIED-PATH"},{
  12. serialize:function(smd, method, data){
  13. var i;
  14. var target = dojox.rpc.getTarget(smd, method);
  15. if(dojo.isArray(data)){
  16. for(i = 0; i < data.length;i++){
  17. target += '/' + (data[i] == null ? "" : data[i]);
  18. }
  19. }else{
  20. for(i in data){
  21. target += '/' + i + '/' + data[i];
  22. }
  23. }
  24. return {
  25. data:'',
  26. target: (method.proxyUrl || smd.proxyUrl) + "?url=" + encodeURIComponent(target)
  27. };
  28. },
  29. deserialize:function(results){
  30. return results;
  31. }
  32. }
  33. );
  34. }