Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F945548
JsonService.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
JsonService.js
View Options
if
(
!
dojo
.
_hasResource
[
"dojo.rpc.JsonService"
]){
//_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo
.
_hasResource
[
"dojo.rpc.JsonService"
]
=
true
;
dojo
.
provide
(
"dojo.rpc.JsonService"
);
dojo
.
require
(
"dojo.rpc.RpcService"
);
dojo
.
declare
(
"dojo.rpc.JsonService"
,
dojo
.
rpc
.
RpcService
,
{
bustCache
:
false
,
contentType
:
"application/json-rpc"
,
lastSubmissionId
:
0
,
callRemote
:
function
(
method
,
params
){
// summary:
// call an arbitrary remote method without requiring it to be
// predefined with SMD
// method: string
// the name of the remote method you want to call.
// params: array
// array of parameters to pass to method
var
deferred
=
new
dojo
.
Deferred
();
this
.
bind
(
method
,
params
,
deferred
);
return
deferred
;
},
bind
:
function
(
method
,
parameters
,
deferredRequestHandler
,
url
){
//summary:
// JSON-RPC bind method. Takes remote method, parameters,
// deferred, and a url, calls createRequest to make a JSON-RPC
// envelope and passes that off with bind.
// method: string
// The name of the method we are calling
// parameters: array
// The parameters we are passing off to the method
// deferredRequestHandler: deferred
// The Deferred object for this particular request
var
def
=
dojo
.
rawXhrPost
({
url
:
url
||
this
.
serviceUrl
,
postData
:
this
.
createRequest
(
method
,
parameters
),
contentType
:
this
.
contentType
,
timeout
:
this
.
timeout
,
handleAs
:
"json-comment-optional"
});
def
.
addCallbacks
(
this
.
resultCallback
(
deferredRequestHandler
),
this
.
errorCallback
(
deferredRequestHandler
));
},
createRequest
:
function
(
method
,
params
){
// summary:
// create a JSON-RPC envelope for the request
// method: string
// The name of the method we are creating the requst for
// params: array
// The array of parameters for this request;
var
req
=
{
"params"
:
params
,
"method"
:
method
,
"id"
:
++
this
.
lastSubmissionId
};
var
data
=
dojo
.
toJson
(
req
);
return
data
;
},
parseResults
:
function
(
/*anything*/
obj
){
//summary:
// parse the result envelope and pass the results back to
// the callback function
// obj: Object
// Object containing envelope of data we recieve from the server
if
(
dojo
.
isObject
(
obj
)){
if
(
"result"
in
obj
){
return
obj
.
result
;
}
if
(
"Result"
in
obj
){
return
obj
.
Result
;
}
if
(
"ResultSet"
in
obj
){
return
obj
.
ResultSet
;
}
}
return
obj
;
}
}
);
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Apr 26, 02:56 (4 d, 13 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
24819
Default Alt Text
JsonService.js (2 KB)
Attached To
rZED Zed
Event Timeline
Log In to Comment