db.js 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820
  1. /**
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. var App = require('app');
  19. App.db = {};
  20. var InitialData = {
  21. 'app': {
  22. 'loginName': '',
  23. 'authenticated': false,
  24. 'configs': [],
  25. 'tables': {
  26. 'filterConditions': {},
  27. 'displayLength': {},
  28. 'startIndex': {},
  29. 'sortingConditions': {}
  30. }
  31. },
  32. 'Installer' : {},
  33. 'AddHost' : {},
  34. 'AddService' : {},
  35. 'StackUpgrade' : {},
  36. 'ReassignMaster' : {},
  37. 'AddSecurity': {},
  38. 'HighAvailabilityWizard': {},
  39. 'RollbackHighAvailabilityWizard': {}
  40. };
  41. if (typeof Storage !== 'undefined') {
  42. Storage.prototype.setObject = function (key, value) {
  43. this.setItem(key, JSON.stringify(value));
  44. };
  45. Storage.prototype.getObject = function (key) {
  46. var value = this.getItem(key);
  47. return value && JSON.parse(value);
  48. };
  49. } else {
  50. // stub for unit testing purposes
  51. window.localStorage = {};
  52. localStorage.setItem = function (key, val) {
  53. this[key] = val;
  54. };
  55. localStorage.getItem = function (key) {
  56. return this[key];
  57. };
  58. window.localStorage.setObject = function (key, value) {
  59. this[key] = value;
  60. };
  61. window.localStorage.getObject = function (key, value) {
  62. return this[key];
  63. };
  64. }
  65. App.db.cleanUp = function () {
  66. console.log('TRACE: Entering db:cleanup function');
  67. App.db.data = InitialData;
  68. console.log("In cleanup./..");
  69. localStorage.setObject('ambari', App.db.data);
  70. };
  71. App.db.updateStorage = function() {
  72. App.db.data = localStorage.getObject('ambari');
  73. if (App.db.data && App.db.data.app && App.db.data.app.tables && App.db.data.app.configs) {
  74. return true;
  75. }
  76. console.warn("local storage is deprecated!");
  77. App.db.cleanUp();
  78. return false;
  79. };
  80. /*
  81. Initialize wizard namespaces if they are not initialized on login.
  82. This will be required during upgrade.
  83. */
  84. App.db.mergeStorage = function() {
  85. if (localStorage.getObject('ambari') == null) {
  86. console.log('doing a cleanup');
  87. App.db.cleanUp();
  88. } else {
  89. localStorage.setObject('ambari', $.extend(true,{}, InitialData, App.db.data));
  90. }
  91. };
  92. // called whenever user logs in
  93. if (localStorage.getObject('ambari') == null) {
  94. console.log('doing a cleanup');
  95. App.db.cleanUp();
  96. }
  97. App.db.get = function (namespace, key) {
  98. console.log('TRACE: Entering db:get' + key);
  99. App.db.data = localStorage.getObject('ambari');
  100. return App.db.data[namespace][key];
  101. };
  102. App.db.set = function (namespace, key, value) {
  103. console.log('TRACE: Entering db:set' + key + ';value: ', value);
  104. App.db.data = localStorage.getObject('ambari');
  105. App.db.data[namespace][key] = value;
  106. localStorage.setObject('ambari', App.db.data);
  107. };
  108. /*
  109. * setter methods
  110. */
  111. App.db.setLoginName = function (name) {
  112. console.log('TRACE: Entering db:setLoginName function');
  113. App.db.data = localStorage.getObject('ambari');
  114. App.db.data.app.loginName = name;
  115. localStorage.setObject('ambari', App.db.data);
  116. };
  117. App.db.setAmbariStacks = function (stacks) {
  118. console.log('TRACE: Entering db:setAmbariStacks function');
  119. App.db.data = localStorage.getObject('ambari');
  120. App.db.data.app.stacks = stacks;
  121. localStorage.setObject('ambari', App.db.data);
  122. };
  123. /**
  124. * Set user model to db
  125. * @param user
  126. */
  127. App.db.setUser = function (user) {
  128. console.log('TRACE: Entering db:setUser function');
  129. App.db.data = localStorage.getObject('ambari');
  130. App.db.data.app.user = user;
  131. localStorage.setObject('ambari', App.db.data);
  132. };
  133. App.db.setAuthenticated = function (authenticated) {
  134. console.log('TRACE: Entering db:setAuthenticated function');
  135. App.db.data = localStorage.getObject('ambari');
  136. console.log('present value of authentication is: ' + App.db.data.app.authenticated);
  137. console.log('desired value of authentication is: ' + authenticated);
  138. App.db.data.app.authenticated = authenticated;
  139. localStorage.setObject('ambari', App.db.data);
  140. App.db.data = localStorage.getObject('ambari');
  141. console.log('Now present value of authentication is: ' + App.db.data.app.authenticated);
  142. };
  143. App.db.setFilterConditions = function(name, filterConditions) {
  144. console.log('TRACE: Entering db:setFilterConditions function');
  145. App.db.data = localStorage.getObject('ambari');
  146. if (!App.db.data.app.tables.filterConditions) {
  147. App.db.data.app.tables.filterConditions = {};
  148. }
  149. App.db.data.app.tables.filterConditions[name] = filterConditions;
  150. localStorage.setObject('ambari', App.db.data);
  151. };
  152. App.db.setDisplayLength = function(name, displayLength) {
  153. console.log('TRACE: Entering db:setDisplayLength function');
  154. App.db.data = localStorage.getObject('ambari');
  155. if (!App.db.data.app.tables.displayLength) {
  156. App.db.data.app.tables.displayLength = {};
  157. }
  158. App.db.data.app.tables.displayLength[name] = displayLength;
  159. localStorage.setObject('ambari', App.db.data);
  160. };
  161. App.db.setStartIndex = function(name, startIndex) {
  162. console.log('TRACE: Entering db:setStartIndex function');
  163. App.db.data = localStorage.getObject('ambari');
  164. if (!App.db.data.app.tables.startIndex) {
  165. App.db.data.app.tables.startIndex = {};
  166. }
  167. App.db.data.app.tables.startIndex[name] = startIndex;
  168. localStorage.setObject('ambari', App.db.data);
  169. };
  170. App.db.setSortingStatuses = function(name, sortingConditions) {
  171. console.log('TRACE: Entering db:setSortingConditions function');
  172. App.db.data = localStorage.getObject('ambari');
  173. if (!App.db.data.app.tables.sortingConditions) {
  174. App.db.data.app.tables.sortingConditions = {};
  175. }
  176. App.db.data.app.tables.sortingConditions[name] = sortingConditions;
  177. localStorage.setObject('ambari', App.db.data);
  178. };
  179. App.db.setAllHostNames = function (hostNames) {
  180. console.log('TRACE: Entering db:setAllHostNames function');
  181. App.db.data = localStorage.getObject('ambari');
  182. App.db.data.Installer.hostNames = hostNames;
  183. localStorage.setObject('ambari', App.db.data);
  184. };
  185. App.db.setAllHostNamesPattern = function (hostNames) {
  186. console.log('TRACE: Entering db:setAllHostNamesPattern function');
  187. App.db.data = localStorage.getObject('ambari');
  188. App.db.data.Installer.hostNamesPattern = hostNames;
  189. localStorage.setObject('ambari', App.db.data);
  190. };
  191. App.db.setHosts = function (hostInfo) {
  192. console.log('TRACE: Entering db:setHosts function');
  193. App.db.data = localStorage.getObject('ambari');
  194. App.db.data.Installer.hostInfo = hostInfo;
  195. localStorage.setObject('ambari', App.db.data);
  196. };
  197. App.db.setInstallOptions = function (installOptions) {
  198. console.log('TRACE: Entering db:setInstallOptions function');
  199. App.db.data = localStorage.getObject('ambari');
  200. App.db.data.Installer.installOptions = installOptions;
  201. localStorage.setObject('ambari', App.db.data);
  202. };
  203. App.db.setBootStatus = function (status) {
  204. console.log('TRACE: Entering db:setBootStatus function');
  205. App.db.data = localStorage.getObject('ambari');
  206. App.db.data.Installer.bootStatus = status;
  207. localStorage.setObject('ambari', App.db.data);
  208. };
  209. App.db.setService = function (serviceInfo) {
  210. App.db.data = localStorage.getObject('ambari');
  211. App.db.data.Installer.serviceInfo = serviceInfo;
  212. localStorage.setObject('ambari', App.db.data);
  213. };
  214. App.db.setSelectedServiceNames = function (serviceNames) {
  215. App.db.data = localStorage.getObject('ambari');
  216. App.db.data.Installer.selectedServiceNames = serviceNames;
  217. localStorage.setObject('ambari', App.db.data);
  218. };
  219. App.db.setClientsForSelectedServices = function (clientInfo) {
  220. App.db.data = localStorage.getObject('ambari');
  221. App.db.data.Installer.clientInfo = clientInfo;
  222. localStorage.setObject('ambari', App.db.data);
  223. };
  224. App.db.setMasterComponentHosts = function (masterComponentHosts) {
  225. App.db.data = localStorage.getObject('ambari');
  226. App.db.data.Installer.masterComponentHosts = masterComponentHosts;
  227. localStorage.setObject('ambari', App.db.data);
  228. };
  229. App.db.setSlaveComponentHosts = function (slaveComponentHosts) {
  230. App.db.data = localStorage.getObject('ambari');
  231. App.db.data.Installer.slaveComponentHosts = slaveComponentHosts;
  232. localStorage.setObject('ambari', App.db.data);
  233. };
  234. App.db.setServiceConfigs = function (serviceConfigs) {
  235. App.db.data = localStorage.getObject('ambari');
  236. App.db.data.Installer.serviceConfigs = serviceConfigs;
  237. localStorage.setObject('ambari', App.db.data);
  238. };
  239. App.db.setAdvancedServiceConfig = function (serviceConfigs) {
  240. App.db.data = localStorage.getObject('ambari');
  241. App.db.data.Installer.advanceServiceConfigs = serviceConfigs;
  242. localStorage.setObject('ambari', App.db.data);
  243. };
  244. App.db.setServiceConfigProperties = function (configProperties) {
  245. App.db.data = localStorage.getObject('ambari');
  246. App.db.data.Installer.configProperties = configProperties;
  247. localStorage.setObject('ambari', App.db.data);
  248. };
  249. App.db.setCluster = function (status) {
  250. App.db.data = localStorage.getObject('ambari');
  251. App.db.data.Installer.clusterStatus = status;
  252. console.log('db.setClusterStatus called: ' + JSON.stringify(status));
  253. localStorage.setObject('ambari', App.db.data);
  254. };
  255. App.db.setUpgradeOptions = function (upgradeOptions) {
  256. App.db.data = localStorage.getObject('ambari');
  257. App.db.data.StackUpgrade.upgradeOptions = upgradeOptions;
  258. console.log('db.setUpgradeOptions called: ' + JSON.stringify(upgradeOptions));
  259. localStorage.setObject('ambari', App.db.data);
  260. };
  261. App.db.setMasterToReassign = function (masterComponent) {
  262. App.db.data = localStorage.getObject('ambari');
  263. App.db.data.ReassignMaster.masterComponent = masterComponent;
  264. localStorage.setObject('ambari', App.db.data);
  265. };
  266. App.db.setReassignTasksStatuses = function (tasksStatuses) {
  267. App.db.data = localStorage.getObject('ambari');
  268. App.db.data.ReassignMaster.tasksStatuses = tasksStatuses;
  269. localStorage.setObject('ambari', App.db.data);
  270. };
  271. App.db.setStacks = function (stacks) {
  272. App.db.data = localStorage.getObject('ambari');
  273. App.db.data.app.stacksVersions = stacks;
  274. localStorage.setObject('ambari', App.db.data);
  275. };
  276. App.db.setServices = function (services) {
  277. App.db.data = localStorage.getObject('ambari');
  278. App.db.data.app.services = services;
  279. localStorage.setObject('ambari', App.db.data);
  280. };
  281. App.db.setConfigs = function (configs) {
  282. App.db.data = localStorage.getObject('ambari');
  283. App.db.data.app.configs = configs;
  284. localStorage.setObject('ambari', App.db.data);
  285. };
  286. /**
  287. * Set current step value for specified Wizard Type
  288. * @param wizardType
  289. * @param currentStep
  290. */
  291. App.db.setWizardCurrentStep = function (wizardType, currentStep) {
  292. console.log('TRACE: Entering db:setWizardCurrentStep function');
  293. App.db.data[wizardType.capitalize()].currentStep = currentStep;
  294. localStorage.setObject('ambari', App.db.data);
  295. };
  296. /**
  297. * Set localStorage with data from server
  298. */
  299. App.db.setLocalStorage = function () {
  300. localStorage.setObject('ambari', App.db.data);
  301. };
  302. App.db.setSecurityWizardStatus = function (status) {
  303. App.db.data = localStorage.getObject('ambari');
  304. if (!App.db.data.AddSecurity) {
  305. App.db.data.AddSecurity = {};
  306. }
  307. App.db.data.AddSecurity.status = status;
  308. localStorage.setObject('ambari', App.db.data);
  309. };
  310. App.db.setDisableSecurityStatus = function (status) {
  311. App.db.data = localStorage.getObject('ambari');
  312. if (!App.db.data.AddSecurity) {
  313. App.db.data.AddSecurity = {};
  314. }
  315. App.db.data.AddSecurity.disableSecurityStatus = status;
  316. localStorage.setObject('ambari', App.db.data);
  317. };
  318. App.db.setSecurityDeployCommands = function (commands) {
  319. App.db.data = localStorage.getObject('ambari');
  320. if (!App.db.data.AddSecurity) {
  321. App.db.data.AddSecurity = {};
  322. }
  323. App.db.data.AddSecurity.securityDeployCommands = commands;
  324. localStorage.setObject('ambari', App.db.data);
  325. };
  326. App.db.setSecureConfigProperties = function (secureConfigs) {
  327. App.db.data = localStorage.getObject('ambari');
  328. if (!App.db.data.AddSecurity) {
  329. App.db.data.AddSecurity = {};
  330. }
  331. App.db.data.AddSecurity.secureConfigProperties = secureConfigs;
  332. localStorage.setObject('ambari', App.db.data);
  333. };
  334. App.db.setSecureUserInfo = function (userInfo) {
  335. App.db.data = localStorage.getObject('ambari');
  336. if (!App.db.data.AddSecurity) {
  337. App.db.data.AddSecurity = {};
  338. }
  339. App.db.data.AddSecurity.secureUserInfo = userInfo;
  340. localStorage.setObject('ambari', App.db.data);
  341. };
  342. App.db.setIsNameNodeHa = function (haStatus) {
  343. App.db.data = localStorage.getObject('ambari');
  344. if (!App.db.data.AddSecurity) {
  345. App.db.data.AddSecurity = {};
  346. }
  347. App.db.data.AddSecurity.haStatus = haStatus;
  348. localStorage.setObject('ambari', App.db.data);
  349. };
  350. App.db.setHighAvailabilityWizardConfigTag = function (tag) {
  351. App.db.data = localStorage.getObject('ambari');
  352. App.db.data.HighAvailabilityWizard[tag.name] = tag.value;
  353. localStorage.setObject('ambari', App.db.data);
  354. };
  355. App.db.setHighAvailabilityWizardHdfsClientHosts = function (hostNames) {
  356. App.db.data = localStorage.getObject('ambari');
  357. App.db.data.HighAvailabilityWizard.hdfsClientHostNames = hostNames;
  358. localStorage.setObject('ambari', App.db.data);
  359. };
  360. App.db.setHighAvailabilityWizardTasksStatuses = function (tasksStatuses) {
  361. App.db.data = localStorage.getObject('ambari');
  362. App.db.data.HighAvailabilityWizard.tasksStatuses = tasksStatuses;
  363. localStorage.setObject('ambari', App.db.data);
  364. };
  365. App.db.setHighAvailabilityWizardHdfsUser = function (hdfsUser) {
  366. App.db.data = localStorage.getObject('ambari');
  367. App.db.data.HighAvailabilityWizard.hdfsUser = hdfsUser;
  368. localStorage.setObject('ambari', App.db.data);
  369. };
  370. App.db.setHighAvailabilityWizardRequestIds = function (requestIds) {
  371. App.db.data = localStorage.getObject('ambari');
  372. App.db.data.HighAvailabilityWizard.requestIds = requestIds;
  373. localStorage.setObject('ambari', App.db.data);
  374. };
  375. App.db.setHighAvailabilityWizardLogs = function (logs) {
  376. App.db.data = localStorage.getObject('ambari');
  377. App.db.data.HighAvailabilityWizard.logs = logs;
  378. localStorage.setObject('ambari', App.db.data);
  379. };
  380. App.db.setHighAvailabilityWizardNameServiceId = function (nameServiceId) {
  381. App.db.data = localStorage.getObject('ambari');
  382. App.db.data.HighAvailabilityWizard.nameServiceId = nameServiceId;
  383. localStorage.setObject('ambari', App.db.data);
  384. };
  385. App.db.setRollBackHighAvailabilityWizardAddNNHost = function (host) {
  386. App.db.data = localStorage.getObject('ambari');
  387. App.db.data.RollbackHighAvailabilityWizard.addNNHost = host;
  388. localStorage.setObject('ambari', App.db.data);
  389. };
  390. App.db.setRollBackHighAvailabilityWizardSNNHost = function (host) {
  391. App.db.data = localStorage.getObject('ambari');
  392. App.db.data.RollbackHighAvailabilityWizard.sNNHost = host;
  393. localStorage.setObject('ambari', App.db.data);
  394. };
  395. App.db.setRollBackHighAvailabilityWizardSelectedAddNN = function (host) {
  396. App.db.data = localStorage.getObject('ambari');
  397. App.db.data.RollbackHighAvailabilityWizard.selectedAddNN = host;
  398. localStorage.setObject('ambari', App.db.data);
  399. };
  400. App.db.setRollBackHighAvailabilityWizardSelectedSNN = function (host) {
  401. App.db.data = localStorage.getObject('ambari');
  402. App.db.data.RollbackHighAvailabilityWizard.selectedSNNH = host;
  403. localStorage.setObject('ambari', App.db.data);
  404. };
  405. App.db.setRollbackHighAvailabilityWizardTasksStatuses = function (tasksStatuses) {
  406. App.db.data = localStorage.getObject('ambari');
  407. App.db.data.RollbackHighAvailabilityWizard.tasksStatuses = tasksStatuses;
  408. localStorage.setObject('ambari', App.db.data);
  409. };
  410. App.db.setRollbackHighAvailabilityWizardRequestIds = function (requestIds) {
  411. App.db.data = localStorage.getObject('ambari');
  412. App.db.data.RollbackHighAvailabilityWizard.requestIds = requestIds;
  413. localStorage.setObject('ambari', App.db.data);
  414. };
  415. App.db.setRollbackHighAvailabilityWizardLogs = function (logs) {
  416. App.db.data = localStorage.getObject('ambari');
  417. App.db.data.RollbackHighAvailabilityWizard.logs = logs;
  418. localStorage.setObject('ambari', App.db.data);
  419. };
  420. App.db.setReassignMasterWizardRequestIds = function (requestIds) {
  421. App.db.data = localStorage.getObject('ambari');
  422. App.db.data.ReassignMaster.requestIds = requestIds;
  423. localStorage.setObject('ambari', App.db.data);
  424. };
  425. App.db.setReassignMasterWizardLogs = function (logs) {
  426. App.db.data = localStorage.getObject('ambari');
  427. App.db.data.ReassignMaster.logs = logs;
  428. localStorage.setObject('ambari', App.db.data);
  429. };
  430. App.db.setReassignMasterWizardComponentDir = function (componentDir) {
  431. App.db.data = localStorage.getObject('ambari');
  432. App.db.data.ReassignMaster.componentDir = componentDir;
  433. localStorage.setObject('ambari', App.db.data);
  434. };
  435. App.db.setReassignMasterWizardReassignHosts = function (reassignHosts) {
  436. App.db.data = localStorage.getObject('ambari');
  437. App.db.data.ReassignMaster.reassignHosts = reassignHosts;
  438. localStorage.setObject('ambari', App.db.data);
  439. };
  440. /*
  441. * getter methods
  442. */
  443. /**
  444. * Get user model from db
  445. * @return {*}
  446. */
  447. App.db.getUser = function () {
  448. console.log('TRACE: Entering db:getUser function');
  449. App.db.data = localStorage.getObject('ambari');
  450. return App.db.data.app.user;
  451. };
  452. App.db.getLoginName = function () {
  453. console.log('Trace: Entering db:getLoginName function');
  454. App.db.data = localStorage.getObject('ambari');
  455. return App.db.data.app.loginName;
  456. };
  457. App.db.getAuthenticated = function () {
  458. console.log('Trace: Entering db:getAuthenticated function');
  459. App.db.data = localStorage.getObject('ambari');
  460. return App.db.data.app.authenticated;
  461. };
  462. App.db.getAmbariStacks = function () {
  463. console.log('TRACE: Entering db:setAmbariStacks function');
  464. App.db.data = localStorage.getObject('ambari');
  465. return App.db.data.app.stacks;
  466. };
  467. App.db.getFilterConditions = function(name) {
  468. console.log('TRACE: Entering db:getFilterConditions function');
  469. App.db.data = localStorage.getObject('ambari');
  470. if (App.db.data.app.tables.filterConditions[name]) {
  471. return App.db.data.app.tables.filterConditions[name];
  472. }
  473. return null;
  474. };
  475. App.db.getDisplayLength = function(name) {
  476. console.log('TRACE: Entering db:getDisplayLength function');
  477. App.db.data = localStorage.getObject('ambari');
  478. if (App.db.data.app.tables.displayLength[name]) {
  479. return App.db.data.app.tables.displayLength[name];
  480. }
  481. return null;
  482. };
  483. App.db.getStartIndex = function(name) {
  484. console.log('TRACE: Entering db:getStartIndex function');
  485. App.db.data = localStorage.getObject('ambari');
  486. if (App.db.data.app.tables.startIndex[name]) {
  487. return App.db.data.app.tables.startIndex[name];
  488. }
  489. return null;
  490. };
  491. App.db.getSortingStatuses = function(name) {
  492. console.log('TRACE: Entering db:getSortingConditions function');
  493. App.db.data = localStorage.getObject('ambari');
  494. if (App.db.data.app.tables.sortingConditions[name]) {
  495. return App.db.data.app.tables.sortingConditions[name];
  496. }
  497. return null;
  498. };
  499. /**
  500. * Return current step for specified Wizard Type
  501. * @param wizardType
  502. * @return {*}
  503. */
  504. App.db.getWizardCurrentStep = function (wizardType) {
  505. console.log('Trace: Entering db:getWizardCurrentStep function for ', wizardType);
  506. if (App.db.data[wizardType.capitalize()]) {
  507. return App.db.data[wizardType.capitalize()].currentStep;
  508. }
  509. return 0;
  510. };
  511. App.db.getAllHostNames = function () {
  512. console.log('TRACE: Entering db:getHostNames function');
  513. App.db.data = localStorage.getObject('ambari');
  514. return App.db.data.Installer.hostNames;
  515. };
  516. App.db.getAllHostNamesPattern = function () {
  517. console.log('TRACE: Entering db:getHostNamesPattern function');
  518. App.db.data = localStorage.getObject('ambari');
  519. return App.db.data.Installer.hostNamesPattern;
  520. };
  521. App.db.getInstallOptions = function () {
  522. console.log('TRACE: Entering db:getInstallOptions function');
  523. App.db.data = localStorage.getObject('ambari');
  524. return App.db.data.Installer.installOptions;
  525. };
  526. App.db.isCompleted = function () {
  527. App.db.data = localStorage.getObject('ambari');
  528. return App.db.data.Installer.completed;
  529. };
  530. App.db.getHosts = function () {
  531. console.log('TRACE: Entering db:getHosts function');
  532. App.db.data = localStorage.getObject('ambari');
  533. return App.db.data.Installer.hostInfo;
  534. };
  535. App.db.getBootStatus = function () {
  536. console.log('TRACE: Entering db:getBootStatus function');
  537. App.db.data = localStorage.getObject('ambari');
  538. return App.db.data.Installer.bootStatus;
  539. };
  540. App.db.getService = function () {
  541. App.db.data = localStorage.getObject('ambari');
  542. return App.db.data.Installer.serviceInfo;
  543. };
  544. App.db.getSelectedServiceNames = function () {
  545. App.db.data = localStorage.getObject('ambari');
  546. return App.db.data.Installer.selectedServiceNames;
  547. };
  548. App.db.getClientsForSelectedServices = function () {
  549. App.db.data = localStorage.getObject('ambari');
  550. return App.db.data.Installer.clientInfo;
  551. };
  552. App.db.getMasterComponentHosts = function () {
  553. App.db.data = localStorage.getObject('ambari');
  554. return App.db.data.Installer.masterComponentHosts;
  555. };
  556. App.db.getSlaveComponentHosts = function () {
  557. App.db.data = localStorage.getObject('ambari');
  558. return App.db.data.Installer.slaveComponentHosts;
  559. };
  560. App.db.getServiceConfigs = function () {
  561. App.db.data = localStorage.getObject('ambari');
  562. return App.db.data.Installer.serviceConfigs;
  563. };
  564. App.db.getAdvancedServiceConfig = function () {
  565. App.db.data = localStorage.getObject('ambari');
  566. return App.db.data.Installer.advanceServiceConfigs;
  567. };
  568. App.db.getServiceConfigProperties = function () {
  569. App.db.data = localStorage.getObject('ambari');
  570. return App.db.data.Installer.configProperties;
  571. };
  572. App.db.getCluster = function () {
  573. console.log('TRACE: Entering db:getClusterStatus function');
  574. App.db.data = localStorage.getObject('ambari');
  575. return App.db.data.Installer.clusterStatus;
  576. };
  577. App.db.getMasterToReassign = function () {
  578. App.db.data = localStorage.getObject('ambari');
  579. return App.db.data.ReassignMaster.masterComponent;
  580. };
  581. App.db.getReassignTasksStatuses = function () {
  582. App.db.data = localStorage.getObject('ambari');
  583. return App.db.data.ReassignMaster.tasksStatuses;
  584. };
  585. App.db.getUpgradeOptions = function () {
  586. console.log('TRACE: Entering db:getUpgradeOptions function');
  587. App.db.data = localStorage.getObject('ambari');
  588. return App.db.data.StackUpgrade.upgradeOptions;
  589. };
  590. App.db.getSecurityWizardStatus = function () {
  591. App.db.data = localStorage.getObject('ambari');
  592. if (!App.db.data.AddSecurity) {
  593. App.db.data.AddSecurity = {};
  594. }
  595. return App.db.data.AddSecurity.status;
  596. };
  597. App.db.getDisableSecurityStatus = function () {
  598. App.db.data = localStorage.getObject('ambari');
  599. if (!App.db.data.AddSecurity) {
  600. App.db.data.AddSecurity = {};
  601. }
  602. return App.db.data.AddSecurity.disableSecurityStatus;
  603. };
  604. App.db.getSecurityDeployCommands = function () {
  605. App.db.data = localStorage.getObject('ambari');
  606. return App.db.data.AddSecurity.securityDeployCommands;
  607. };
  608. App.db.getSecureConfigProperties = function () {
  609. App.db.data = localStorage.getObject('ambari');
  610. return App.db.data.AddSecurity.secureConfigProperties;
  611. };
  612. App.db.getSecureUserInfo = function () {
  613. App.db.data = localStorage.getObject('ambari');
  614. return App.db.data.AddSecurity.secureUserInfo;
  615. };
  616. App.db.getIsNameNodeHa = function (haStatus) {
  617. App.db.data = localStorage.getObject('ambari');
  618. return App.db.data.AddSecurity.haStatus;
  619. };
  620. App.db.getStacks = function () {
  621. App.db.data = localStorage.getObject('ambari');
  622. return App.db.data.app.stacksVersions;
  623. };
  624. App.db.getServices = function () {
  625. App.db.data = localStorage.getObject('ambari');
  626. return App.db.data.app.services;
  627. };
  628. App.db.getHighAvailabilityWizardHdfsUser = function () {
  629. App.db.data = localStorage.getObject('ambari');
  630. return App.db.data.HighAvailabilityWizard.hdfsUser;
  631. };
  632. App.db.getHighAvailabilityWizardTasksStatuses = function () {
  633. App.db.data = localStorage.getObject('ambari');
  634. return App.db.data.HighAvailabilityWizard.tasksStatuses;
  635. };
  636. App.db.getHighAvailabilityWizardFailedTask = function () {
  637. App.db.data = localStorage.getObject('ambari');
  638. return App.db.data.HighAvailabilityWizard.failedTask;
  639. };
  640. App.db.getHighAvailabilityWizardHdfsClientHosts = function () {
  641. App.db.data = localStorage.getObject('ambari');
  642. return App.db.data.HighAvailabilityWizard.hdfsClientHostNames;
  643. };
  644. App.db.getHighAvailabilityWizardConfigTag = function (tag) {
  645. App.db.data = localStorage.getObject('ambari');
  646. return App.db.data.HighAvailabilityWizard[tag];
  647. };
  648. App.db.getHighAvailabilityWizardRequestIds = function () {
  649. App.db.data = localStorage.getObject('ambari');
  650. return App.db.data.HighAvailabilityWizard.requestIds;
  651. };
  652. App.db.getHighAvailabilityWizardLogs = function () {
  653. App.db.data = localStorage.getObject('ambari');
  654. return App.db.data.HighAvailabilityWizard.logs;
  655. };
  656. App.db.getHighAvailabilityWizardNameServiceId = function () {
  657. App.db.data = localStorage.getObject('ambari');
  658. return App.db.data.HighAvailabilityWizard.nameServiceId;
  659. };
  660. App.db.getRollbackHighAvailabilityWizardTasksStatuses = function () {
  661. App.db.data = localStorage.getObject('ambari');
  662. return App.db.data.RollbackHighAvailabilityWizard.tasksStatuses;
  663. };
  664. App.db.getRollbackHighAvailabilityWizardRequestIds = function () {
  665. App.db.data = localStorage.getObject('ambari');
  666. return App.db.data.RollbackHighAvailabilityWizard.requestIds;
  667. };
  668. App.db.getRollbackHighAvailabilityWizardLogs = function () {
  669. App.db.data = localStorage.getObject('ambari');
  670. return App.db.data.RollbackHighAvailabilityWizard.logs;
  671. };
  672. App.db.getRollBackHighAvailabilityWizardAddNNHost = function (host) {
  673. App.db.data = localStorage.getObject('ambari');
  674. return App.db.data.RollbackHighAvailabilityWizard.addNNHost;
  675. };
  676. App.db.getRollBackHighAvailabilityWizardSNNHost = function (host) {
  677. App.db.data = localStorage.getObject('ambari');
  678. return App.db.data.RollbackHighAvailabilityWizard.sNNHost;
  679. };
  680. App.db.getReassignMasterWizardRequestIds = function () {
  681. App.db.data = localStorage.getObject('ambari');
  682. return App.db.data.ReassignMaster.requestIds;
  683. };
  684. App.db.getReassignMasterWizardLogs = function () {
  685. App.db.data = localStorage.getObject('ambari');
  686. return App.db.data.ReassignMaster.logs;
  687. };
  688. App.db.getReassignMasterWizardComponentDir = function () {
  689. App.db.data = localStorage.getObject('ambari');
  690. return App.db.data.ReassignMaster.componentDir;
  691. };
  692. App.db.getConfigs = function () {
  693. App.db.data = localStorage.getObject('ambari');
  694. return App.db.data.app.configs;
  695. };
  696. App.db.getReassignMasterWizardReassignHosts = function () {
  697. App.db.data = localStorage.getObject('ambari');
  698. return App.db.data.ReassignMaster.reassignHosts;
  699. };
  700. module.exports = App.db;