db.js 28 KB

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