Advertisement
Guest User

Untitled

a guest
Feb 19th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.77 KB | None | 0 0
  1. var dataProviderRequestsStartTime = [];
  2. var dataProviderRequestsEndTime = [];
  3.  
  4. var dataParsingStartTime = [];
  5. var dataParsingEndTime = [];
  6.  
  7. getResults(ids);
  8.  
  9. var getResults = function(totalIds) {
  10. for(var i=0; i<10; i++;) {
  11. requestResultForOneChunk(totalIds[i]);
  12. }
  13. };
  14.  
  15. var requestResultForOneChunk = function(streetIds) {
  16. $.ajax({
  17. beforeSend: function() {
  18. var requestStartTime = new Date().getTime();
  19. dataProviderRequestsStartTime.push(requestStartTime);
  20. },
  21. type : 'POST',
  22. url : "myServlet",
  23. contentType : "application/x-www-form-urlencoded",
  24. data : {
  25. "ids" : streetIds,
  26. },
  27. success : function(response) {
  28. //Request Finished
  29. var dataProvideRequestEndTime = new Date().getTime();
  30. dataProviderRequestsEndTime.push(dataProvideRequestEndTime);
  31.  
  32. addFeaturesToMap(response);
  33. },
  34. error : function(x, e) {
  35. alert("Something went wrong in the request" + e);
  36. }
  37. });
  38. };
  39.  
  40. var addFeaturesToMap = function(measurements) {
  41. //Parsing Started
  42. var featureParsingStartTime = new Date().getTime();
  43. dataParsingStartTime.push(featureParsingStartTime);
  44.  
  45. doParsing(measurements);
  46.  
  47. //Parsing Finished
  48. featureParsingEndTime = new Date().getTime();
  49. dataParsingEndTime.push(featureParsingEndTime);
  50. };
  51.  
  52. $("#loading").bind(
  53. "ajaxStart",
  54. function(options) {
  55. ajaxStartTime = options.timeStamp;
  56. }).bind("ajaxStop", function(options) {
  57. var ajaxEndTime = options.timeStamp;
  58. var totalTime = (ajaxEndTime - ajaxStartTime);
  59. calculateTimeBreakDown();
  60. });
  61.  
  62. var calculateTimeBreakDown = function() {
  63. var totalValues = dataProviderRequestsEndTime.length;
  64. var lastValueIndex = totalValues - 1;
  65.  
  66. // Request Time calculation
  67. var endTimeOfLastRequest = dataProviderRequestsEndTime[lastValueIndex];
  68. var startTimeOfFirstRequest = dataProviderRequestsStartTime[0];
  69. var totalRequestTime = (endTimeOfLastRequest - startTimeOfFirstRequest);
  70.  
  71. // Parsing Time Calculation
  72. var endTimeOfLastParsing = dataParsingEndTime[lastValueIndex];
  73. var startTimeOfFirstParsing = dataParsingStartTime[0];
  74. var totalParsingTime = (endTimeOfLastParsing - startTimeOfFirstParsing);
  75. };
  76.  
  77. var totalTime = null;
  78. var cachedTime = null;
  79.  
  80. function alertLoadingTime() {
  81. if(!totalTime) return;
  82. var loadingTime = totalTime / 1000;
  83. console.log("loaded " + loadingTime + " seconds");
  84. }
  85.  
  86. function timingStart() {
  87. cachedTime = new Date;
  88. }
  89.  
  90. function timingEnd() {
  91. var endTime = new Date;
  92. totalTime += endTime - cachedTime;
  93. cachedTime = null;
  94. alertLoadingTime();
  95. }
  96.  
  97. $(document).ajaxStart(timingStart);
  98.  
  99. $(document).ajaxStop(timingEnd);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement