Guest User

Untitled

a guest
Feb 23rd, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.79 KB | None | 0 0
  1. //function to grab products that new quantity update from SQS
  2.  
  3.  
  4. let poll = () => {
  5. console.log('hi')
  6. var index, receipts
  7. params = {
  8. QueueUrl: updateQueue,
  9. MaxNumberOfMessages: 10,
  10. VisibilityTimeout:10,
  11. WaitTimeSeconds: 5
  12. }
  13.  
  14. //Gets messages from SQS
  15. sqs.receiveMessage(params, (err, data) => {
  16. if(err){
  17. throw err
  18. } else {
  19. index = []
  20. receipts = []
  21. if(data.Messages){
  22. data.Messages.forEach((each) => {
  23. index.push(each.Body)
  24. receipts.push({
  25. ReceiptHandle: each.ReceiptHandle,
  26. Id: each.MessageId
  27. })
  28. })
  29. } else {
  30. i = 49;
  31. }
  32. i++
  33. if(index.length){
  34. //DAtabase helper to update products
  35. db.updateInventory(index)
  36. }
  37. if(receipts.length){
  38. //tells SQS to delete processed messages
  39. deleteMessages(receipts)
  40. }
  41. if(i === 50){
  42. setTimeout(poll, 0)
  43. //Checks for new products that have been added
  44. checkProducts()
  45. i = 0
  46. } else {
  47. poll()
  48. }
  49. }
  50. })
  51. }
  52. //result
  53.  
  54. [ { MessageId: 'ae37c522-e191-4e28-990a-33d6e5c874b1',
  55. ReceiptHandle: 'AQEBCqMettBjCxV96IRti1lEn5p1NELW3jl0UmzlEt6zqy/eMQSrIRtDh9E+20kpNymVtlyUqfKBRmnwZHlGsp7EKZhHIVWXpBCSi8DkDZgsdxt1myHRwVK72VTQMWt43RZoKmKTcn8/5SLlTeE0buTrzK+8DfGGVCP4UyDpNL4Qf/PIKV0TwuMH84LR0AQuGJqU/bSr/kKt3zXucPi8ryg77tnqQuPix1YP3CRlyrH0DlN1frtzEQd51M9w11mXZ0rplTT8UhbHObQjZh+Dwmb3kAlHnYlnv4JMCGskWoAtMfw2SUjsrPiJwaN/5cHnhWSxHaWN7LF222fhApUdKQRXGFXakrC3xhPH5tXlcRnSbCQ6DZuv2XkgqQvzAW7FYbAXgpXxF+w0BQy5+NiIEDCNmA==',
  56. MD5OfBody: '884d79963bd8bc0ae9b13a1aa71add73',
  57. Body: '1160' },
  58. { MessageId: '4583806a-9262-4486-bea4-1fe488dc2a8a',
  59. ReceiptHandle: 'AQEBFrmxu57FoI1Ny0W1k96WlJn0i53BW3CDrNWfWn/duz1/4LM3HPU9g7KL/vNAGNj3GJLxs2ZmtladGKvmBChrrVk5XNorigbjWSDAj7UeL3DR74ZedrnU70TZ8hZneb686uoPUK2ueFHfKJDBK3LKANbx9flBFjklL1IUt/fepqldhoTLsohftPhajK7l0JeQbADCFzFxj0W2x+OwKBX3LVlKNh990NI9JURRvZkYJo0at2WgM96aOKv+xrptyasuRGHTvA+zXOuwPUJ9QEPA0WMlzfhMdBPRC3/f5X27lzAtmd9OwnyZgdnapAnYttHtEE93GKTdD17Rc12rtLT6Yp7WjuaJIO8o5qrGMTcovF0eIhyzCGMqvu4gDzBxOO2yB97IQO5M8HORLA6drSocdw==',
  60. MD5OfBody: '2990cb071c6413d6cde1512f6474506a',
  61. Body: '9595' },
  62. { MessageId: 'dbe4fa97-0929-48a9-82b7-8e5f5718956f',
  63. ReceiptHandle: 'AQEBtUwfd7oYB1PREz40rOND/dzsDpxtl2fZ18tktSG/Vw43dRmuW8Sgg5dfQxpvMzV24MakVupxLqu76pe8SK1w5rVwkyhNNqf7VI2tJ4tSZ6T6FJVJ8UVoIBHWL1BhXrBoOK6OUeqEGoubTn2mhDs/9eOX6usk4rRMz606hhEHitSMW3pn5o+gxwKdg/OIQz72v03HVTKqtk2nfIjnow6QIC+22fL1GqjsfSf/8aROpZfVr51gwiVvqLtd1UkrrLIFGxIwCmUVBYgFlREbqUJsb66+OMeixGTLwhHcp3ULBL7Fq7ypO11MYBwAjjLne9UfpEs0No+4KgLNcLwIp5Gj0H9ch7L4v7+AXfd19+QADyvxqkm6lfAdau1Z91WkH6mBSdsx281aTZaI6jEDj3Zivg==',
  64. MD5OfBody: '0b0b0994d12ad343511adfbfc364256e',
  65. Body: '4198' },
  66. { MessageId: 'c8f7c4bd-0aa8-41f4-9c2c-cb1a16d146b5',
  67. ReceiptHandle: 'AQEBLs95smazsMr9tvZNkKYXnigesbPmvmEOYIfo1L5RzE/fqhYn3HaxGpKKhXUT5gUgOjnbgeSbShNi86S4VX9gb7Qnh9vOinPtW8vtkDIbzPMt6FaxBjDUlIpgmiAoBgagiJ49QyfXf6Ks0YMQW8dU5I7q4//BVBLGjz1yHWeSBAZfrP2W5C1ffc8E3KxedHMRNUdAG3Q/ZtaHmaCTM77Nb8JtySiUs4f/hKQp/Kvbha2a2HieyGcxCA5a5HmA81W+i8y6oXV1Z6cEFY8UmtHJ2DGtonYvYWbnbiquSRFQDDthz5zlh4R7ayq9VGaNVYxA3waNMGNPwwa+gq4mmxjmDtd+G/zqzAKdS4NuctzlHbcvjIP7Vu0GCoym6G+WutHdqnJHP8/WQ8QdoHnoMhetbw==',
  68. MD5OfBody: '0cd6a40ae578078bc72e5310df41e918',
  69. Body: '5376' },
  70. { MessageId: '1968f8ef-041c-4a17-8656-b492f88787b1',
  71. ReceiptHandle: 'AQEBoBPlJeLTaAQKMX38UeEZgELweIvmXmmGhYnUSwsCYDar0491X2nmR24TbUsMrOvidgR6q98GUIIo3Zl0uyWxfV54rPXD3NGLcZH2jraJPZ0dd4rx3gCkmAkFdKuwNqMcSIVbYilHDHvfIihzuYK2tX1FAhvrhNNxojfcfFKn4g6re5naVb8Qxiw4sQMUEJ8J3iS5wA3G3CNUwjz9MujvlanzTh/Ictr3N0jOLqGjsiJrTPogsqqo8r/am8drBRDZXsj/2MxCs7RE9JmWha/dTanO+pKdGq5nOMfArDgsLEkeXMrT2RGU/li0+NlnAy3JwbuMDJpO3eFZ59U7uQqp4vpF6Km/lwxyu3F5eMb/u0O/fTMaMNnpch0PURkqsNp8IMieJ2M4A89zhax6jbdUoA==',
  72. MD5OfBody: '6de59d960d3bb8a6346c058930f3cd28',
  73. Body: '5973' },
  74. { MessageId: '95f5c9b0-3366-4c4b-ad94-71e34fc39014',
  75. ReceiptHandle: 'AQEBifsJM6rE+MMDNC6BGg3JO5lit7Io4X6szg/ol41a4y7ZkTHT8A/zUCAzxyT40EKeUVG6hjgVqXPHPoIe2X1npdzMS77CsaJmP+6qY7JCz9G69DuSJhDPuMLkNAbYrwQ7dA6zUfj6TPDHVeD5eBMCkCheKEjVQYrdFxLpPl4ETylOZkYYXxi16cs9E1e2+XHgbB7mn0D7RzLq4TveHdomodNKy+Mfw3uEaGK6sDzh5dGocMh8nposOYv1IE2A8dGKLMdxB1baZHYUBvbnKcmtHOTlXhzJ04xTGrbeXjsZe8/vA9K2w4FT8AerMHXcU8YN/SFwTDMFTp1m7krEhlV0eawYo7qaLPCJBOSn8zUOVj7tBLsgBfxKlKNlcl2s0iLcJNh+XFJALPeILGXA061S9g==',
  76. MD5OfBody: '894a9b94bcc5969b60bd18e8ea9c0ddc',
  77. Body: '6464' },
  78. { MessageId: 'ea6b3182-0663-422e-90da-90871a72ace4',
  79. ReceiptHandle: 'AQEBOX8Qu4blla8csBIv6irIjuW2vJR+D3h99giWz4kNtDGvavFv1TgQqixsV8yUb8vDrOfw573EM0vpH4W+daBtBwOJ4QdS5HPXM92F9Mn2cmXxorr3CXaciYouGXpTUYqqtzw+RoGjJdYul7woJQinwbv3TVfCb+aXvhnHdlZxGksBX5BQFWRA1vwS2MyZRMMJ3H0j2DDLUOh6AdnLwCp5hUlmFAd+AOSA2SgFlW2NJM7AmOOTmV3xOGkxjIFGwwa+es4fUYJ1GMVc1cWMWSptCYAGDy34gbML0U9YRsM7SZ6xiDPcR58J6ecHG4P/XW2nSJZiEFDIwZCErWBqRcHON+ThM0kSZi2hPEaa4XphZKk2tmyd+lpNztUuChVLDMf+HqBX0iPYpKYI1Q+C3mIBDw==',
  80. MD5OfBody: '3953630da28e5181cffca1278517e3cf',
  81. Body: '2924' },
  82. { MessageId: '8f925a85-6248-4fe0-9489-f460f7dc7023',
  83. ReceiptHandle: 'AQEBCmWNamnWM2WYWRGq7iSZ/A5B+Ul17YX9BXj708cutUOKfgs14qaBWNdthzNsq2jfEd9CvYctcwaUmD+SOkY2Hnkr81i5twtN4zOQDgEkTLW5XI1QpIB2H0xWBDjUcZADHhT+i5MTeKEDGybwNqwH26SayNNYLvFfs5zS4Pdwr4uETSOtpNxVo7rHcB3Y8S4LCTui4UOMg48Ry+ekxIc7VWtPvL4fSIsfv5hr9Wgqk6M87BLEczBoS9UVICQjy4Nubmn3gyk9rZP+eoa5PevrMpghjfSyWLZN0b6vhAlljU+kLiPr+pd562Bjjotra/xpNKB0eVZAPFky8SMpx9pS2qZIKz40jYj/11EJ9u7xTyvjLWPA1jxd3PKpt6LBMBKb+KIKCGuaSsjZv709eGKlew==',
  84. MD5OfBody: '6a2feef8ed6a9fe76d6b3f30f02150b4',
  85. Body: '1092' },
  86. { MessageId: 'a1d10dfd-ca15-499f-8cf7-c715d99d6834',
  87. ReceiptHandle: 'AQEBo8vdtjQyaT3bA2E2V51c1lbe5MX8jSfTFGVKcRH+z87JR/1IlL/is2/LxI3ZsEEM/1eKX3Sv5J+ctyTlt+cJ2ar18g2jWdnfmbY/5MWgMS/NHlzCln5dGVEJcZCROQkoq7G+UjWjQXAQq3/XV1aoN9tb6tK44V8qxVQqzHSg5r3l9M/qGJYPwBy+/MbhXmYpThcJUp5CUIsqJHjcbAvD66hTZrCx2FxuweHEmuXmBn509f90MYqGCL+b0AeLbarRS3+HocUOfK6P+JQhPQyYyQD+2LoJ3laVKyO6dL4+IJ19sgXWX0vTj6DhWdVUn3MZuiOSW5qU1WdU0e4Mxy2Xx7FxKX/T5yJzkApp76lbkCkJhqWtkBcxPg06EiN7nZ7uqj5MNpe5muV5SdLFUswEdA==',
  88. MD5OfBody: '018b59ce1fd616d874afad0f44ba338d',
  89. Body: '1283' },
  90. { MessageId: '02761f8c-98ab-456e-85ac-3b009bd4f683',
  91. ReceiptHandle: 'AQEBPYiVgCR1hu09RnzZTTg67c50rXEj24+z/WgLoymsD3X/PRisSS1xcg74CPT+Yht1feejSoJkHq+lWMn42vQTQ1cQnHzNIuvJk8KrCUP3Va2nR9Ohs0y/SyrpLpeDTSlJq1jm6yTCvLNSXJ3NxQ/IUVLE0ZoOjkT3aW7iJtWayDdzFRSwhsCsMd2KKsk/aWBSvq6ZOwyDHmZpRPFhWKP2QU+1bo7I7J+d8tajcKEovrrv3DstF8HrftUh2acAZa387ueos7fCyfyvIvgOcWY46oPMMc2bG0jDWReQULU1loUvbi7eEbLcvHbDm9cCagVV+jC8Wk5lVN/LGUMWznkkNlggcQqDd+edTis9GmA/LQ17Y5lIueSApxHL6gYx7UD/MDPDS/ujW5JeZi9yZRvEDg==',
  92. MD5OfBody: '310b60949d2b6096903d7e8a539b20f5',
  93. Body: '9933' } ] }
  94.  
  95. //Then messages are processed, and the product inventory is updated accordingly.
Add Comment
Please, Sign In to add comment