WsDfu.js 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. /*##############################################################################
  2. # Copyright (C) 2011 HPCC Systems.
  3. #
  4. # All rights reserved. This program is free software: you can redistribute it and/or modify
  5. # it under the terms of the GNU Affero General Public License as
  6. # published by the Free Software Foundation, either version 3 of the
  7. # License, or (at your option) any later version.
  8. #
  9. # This program is distributed in the hope that it will be useful,
  10. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. # GNU Affero General Public License for more details.
  13. #
  14. # You should have received a copy of the GNU Affero General Public License
  15. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  16. ############################################################################## */
  17. define([
  18. "dojo/_base/declare",
  19. "dojo/_base/lang",
  20. "dojo/_base/Deferred",
  21. "dojo/_base/array",
  22. "dojo/store/util/QueryResults",
  23. "hpcc/ESPRequest"
  24. ], function (declare, lang, Deferred, arrayUtil, QueryResults,
  25. ESPRequest) {
  26. return {
  27. DFUArrayAction: function (logicalFiles, actionType, callback) {
  28. arrayUtil.forEach(logicalFiles, function (item, idx) {
  29. item.qualifiedName = item.Name + "@" + item.ClusterName;
  30. });
  31. var request = {
  32. LogicalFiles: logicalFiles,
  33. Type: actionType
  34. };
  35. ESPRequest.flattenArray(request, "LogicalFiles", "qualifiedName");
  36. return ESPRequest.send("WsDfu", "DFUArrayAction", {
  37. request: request,
  38. load: function (response) {
  39. if (lang.exists("DFUArrayActionResponse.DFUArrayActionResult", response)) {
  40. dojo.publish("hpcc/brToaster", {
  41. message: response.DFUArrayActionResponse.DFUArrayActionResult,
  42. type: "error",
  43. duration: -1
  44. });
  45. }
  46. if (callback && callback.load) {
  47. callback.load(response);
  48. }
  49. },
  50. error: function (err) {
  51. if (callback && callback.error) {
  52. callback.error(err);
  53. }
  54. }
  55. });
  56. },
  57. SuperfileAction: function (action, superfile, subfiles, removeSuperfile, callback) {
  58. var request = {
  59. action: action,
  60. superfile: superfile,
  61. subfiles: subfiles,
  62. removeSuperfile: removeSuperfile
  63. };
  64. ESPRequest.flattenArray(request, "subfiles", "Name");
  65. return ESPRequest.send("WsDfu", "SuperfileAction", {
  66. request: request,
  67. load: function (response) {
  68. if (lang.exists("SuperfileActionResponse", response)) {
  69. dojo.publish("hpcc/brToaster", {
  70. message: response.AddtoSuperfileResponse.Subfiles,
  71. type: "error",
  72. duration: -1
  73. });
  74. }
  75. if (callback && callback.load) {
  76. callback.load(response);
  77. }
  78. },
  79. error: function (err) {
  80. if (callback && callback.error) {
  81. callback.error(err);
  82. }
  83. }
  84. });
  85. },
  86. AddtoSuperfile: function (logicalFiles, superfile, existingFile, callback) {
  87. var request = {
  88. names: logicalFiles,
  89. Superfile: superfile,
  90. ExistingFile: existingFile ? 1 : 0
  91. };
  92. ESPRequest.flattenArray(request, "names", "Name");
  93. return ESPRequest.send("WsDfu", "AddtoSuperfile", {
  94. request: request,
  95. load: function (response) {
  96. if (lang.exists("AddtoSuperfileResponse.Subfiles", response)) {
  97. dojo.publish("hpcc/brToaster", {
  98. message: response.AddtoSuperfileResponse.Subfiles,
  99. type: "error",
  100. duration: -1
  101. });
  102. }
  103. if (callback && callback.load) {
  104. callback.load(response);
  105. }
  106. },
  107. error: function (err) {
  108. if (callback && callback.error) {
  109. callback.error(err);
  110. }
  111. }
  112. });
  113. },
  114. DFUQuery: function (params) {
  115. return ESPRequest.send("WsDfu", "DFUQuery", params);
  116. },
  117. DFUInfo: function (params) {
  118. return ESPRequest.send("WsDfu", "DFUInfo", params);
  119. },
  120. DFUDefFile: function (params) {
  121. lang.mixin(params, {
  122. handleAs: "text"
  123. });
  124. return ESPRequest.send("WsDfu", "DFUDefFile", params);
  125. }
  126. };
  127. });