db.js 28 KB

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