blob: 0b0caa03ed739358e99ec3bf080aa0ab4f7d84ee [file] [log] [blame]
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<title>datajs startup perf test</title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="./scripts/datajs-2.0.0.js"></script>
<script type="text/javascript" src="./scripts/tools.js" ></script>
<style type="text/css">
.code{font-family:"Courier New",monospace;font-size:13px;line-height:18px;}
.code ul{list-style:none;margin:0 0 0 1.5em;padding:0;}
.code li{position:relative;}
.code.json li:after{content:',';}
.code.json li:last-child:after{content:'';}
.code span{white-space:nowrap;padding:2px 1px;}
.code .property{font-weight:bold;color:#000000;}
.code .null{color:#9d261d;}
.code .boolean{color:#760a85;}
.code .numeric{color:#0076cb;}
.code .string{color:#247230;}
.code .deffered{color:#666666;font-size:0.9em;}
.code .toggle{position:absolute;left:-1em;cursor:pointer;}
.code .tag{color:#003283;}
.code .atn{color:#760a85;}
.code .atv{color:#247230;}
.code .text{color:#000000;}
.code .cdata{color:#008080;}
.code .comment,.code .ns{color:#666666;}
</style>
</head>
<body>
<button id="startXML">XML</button><br/>
<button id="btnJSON_none">pure JSON odata.metadata=none</button><br/>
<button id="btnJSON_minimal">pure JSON odata.metadata=minimal</button><br/>
<button id="btnJSON_minimal_to_full">pure JSON odata.metadata=minimal; extendMetadataToLevel=full</button><br/>
<button id="btnJSON_minimal_to_all">pure JSON odata.metadata=minimal; extendMetadataToLevel=all</button><br/>
<button id="btnJSON_full">pure JSON odata.metadata=full</button><br/>
<button id="btnJSON_full_date_conversion">JSON odata.metadata=full (with date conversion)</button><br/>
<button id="btnJSON_full_to_all">JSON odata.metadata=full; extendMetadataToLevel=all (with adding types for string, bool, numbers)</button><br/>
<button id="btnJSON_full_to_all_date_conversion">JSON odata.metadata=full; extendMetadataToLevel=all (with adding types for string, bool, numbers) (with date conversion)</button><br/>
<button id="btnMetaData">MetaData</button><br/>
<button id="btnJSONwithMetaData">JSON with MetaData</button><br/>
<div id='resultsArea' data-type="json">
</div>
<script>
//var x = eval("(function (w, undefined) {alert('A '+JSON.stringify(w.screen));})(this);");
//(function () {
// var x = eval("(function (w, undefined) {alert('B '+JSON.stringify(w.screen));})(this);");
//})();
function show(data) {
$('#resultsArea').empty();
var code = $('<code data-type="json"></code>').text(JSON.stringify(data))
$('#resultsArea').append(code);
$('code[data-type]').prettify();
//$('#resultsArea').prettify();
}
function success(data) {
show(data);
}
function errorFunc(err) {
$('#resultsArea').empty();
$("#resultsArea").text(JSON.stringify(err));
}
function getMetaData(metaDatasuccess) {
var oHeaders = {
'Accept': 'text/html,application/xhtml+xml,application/xml,application/json;odata.metadata=full',
"Odata-Version": "4.0",
"OData-MaxVersion": "4.0",
"Prefer": "odata.allow-entityreferences"
};
var metadataRequest =
{
headers: oHeaders,
//requestUri: "http://services.odata.org/OData/OData.svc/$metadata",
requestUri: "http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/$metadata", //"http://localhost:6630/PrimitiveKeys.svc/$metadata",
data: null,
};
datajs.V4.oData.read(metadataRequest, metaDatasuccess, errorFunc,datajs.V4.oData.metadataHandler);
};
$('#startXML').on("click", function(){
//var requestUri = 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods';
var requestUri ='http://localhost:4003/sap/bc/ds/odata/v4/ESMixPrimCollComp?$format=xml';
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnJSON_none').on("click", function(){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=none' }
};
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnJSON_minimal').on("click", function(){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=minimal' }
};
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnJSON_full').on("click", function(){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=full' }
};
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnJSON_full_to_all').on("click", function(){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=full' },
extendMetadataToLevel : 'all' ,
recognizeDates : false
};
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnJSON_full_to_all_date_conversion').on("click", function(){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=full' },
extendMetadataToLevel : 'all' ,
recognizeDates : true
};
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnJSON_full_date_conversion').on("click", function(){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=full' },
recognizeDates : true
};
datajs.V4.oData.read(requestUri, success, errorFunc);
});
$('#btnMetaData').on("click", function(){
var oHeaders = {
'Accept': 'text/html,application/xhtml+xml,application/xml,application/json;odata.metadata=full',
"Odata-Version": "4.0",
"OData-MaxVersion": "4.0",
"Prefer": "odata.allow-entityreferences"
};
var metadataRequest =
{
headers: oHeaders,
//requestUri: "http://services.odata.org/OData/OData.svc/$metadata",
requestUri: "http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/$metadata", //"http://localhost:6630/PrimitiveKeys.svc/$metadata",
data: null,
};
datajs.V4.oData.read(metadataRequest, success, errorFunc,datajs.V4.oData.metadataHandler);
});
$('#btnJSON_minimal_to_all').on("click", function(){
var metaDatasuccess = function(metadata){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=minimal' },
extendMetadataToLevel : 'all' ,
recognizeDates : false
};
datajs.V4.oData.read(requestUri, success, errorFunc, null, null, metadata);
}
getMetaData(metaDatasuccess);
});
$('#btnJSON_minimal_to_full').on("click", function(){
var metaDatasuccess = function(metadata){
var requestUri = {
requestUri : 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods',
headers : { Accept : 'application/json;odata.metadata=minimal' },
extendMetadataToLevel : 'full' ,
recognizeDates : false
};
datajs.V4.oData.read(requestUri, success, errorFunc, null, null, metadata);
}
getMetaData(metaDatasuccess);
});
$('#btnJSONwithMetaData').on("click", function(){
var oHeaders = {
'Accept': 'text/html,application/xhtml+xml,application/xml,application/json;odata.metadata=full',
"Odata-Version": "4.0",
"OData-MaxVersion": "4.0",
"Prefer": "odata.allow-entityreferences"
};
var metadataRequest =
{
headers: oHeaders,
//requestUri: "http://services.odata.org/OData/OData.svc/$metadata",
requestUri: "http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/$metadata", //"http://localhost:6630/PrimitiveKeys.svc/$metadata",
data: null,
};
var metaDatasuccess = function(metadata){
var requestUri = 'http://localhost:4002/tests/endpoints/FoodStoreDataServiceV4.svc/Foods';
datajs.V4.oData.read(requestUri, success, errorFunc, null, null, metadata);
}
datajs.V4.oData.read(metadataRequest, metaDatasuccess, errorFunc,datajs.V4.oData.metadataHandler);
});
</script>
</body>
</html>