Files
entaxy-public/ui/entaxy-hawtio/entaxy-h2-plugin/src/main/webapp/plugin/js/entaxyH2Plugin.js

85 lines
3.0 KiB
JavaScript

/*-
* ~~~~~~licensing~~~~~~
* entaxy-management-plugin
* ==========
* Copyright (C) 2020 - 2023 EmDev LLC
* ==========
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ~~~~~~/licensing~~~~~~
*/
/**
* The main entry point for the Simple module
*/
var EntaxyH2 = (function (EntaxyH2) {
/**
* The name of this plugin
*/
EntaxyH2.pluginName = 'entaxy-h2';
/**
* This plugin's logger instance
*/
EntaxyH2.log = Logger.get('entaxy-h2');
/**
* The top level path of this plugin on the server
*/
EntaxyH2.contextPath = "/entaxy-h2/";
EntaxyH2.log.info("loading entaxy h2 plugin")
EntaxyH2._module = angular.module(EntaxyH2.pluginName, [
'angularResizable'
])
.component('entaxyH2', {
template:
`<div class="tree-nav-layout">
<div class="sidebar-pf sidebar-pf-left" resizable r-directions="['right']">
<entaxy-h2-tree-header></entaxy-h2-tree-header>
<entaxy-h2-tree></entaxy-h2-tree>
</div>
<div class="tree-nav-main">
<jmx-header></jmx-header>
<entaxy-h2-navigation></entaxy-h2-navigation>
<div class="contents" ng-view></div>
</div>
</div>
`
})
.run(configurePlugin);
function configurePlugin(mainNavService, workspace, helpRegistry, preferencesRegistry, localStorage, preLogoutTasks, documentBase, $templateCache) {
var entaxyH2JmxDomain = localStorage['entaxyH2JmxDomain'] || "org.h2";
mainNavService.addItem({
title: 'H2',
basePath: '/h2',
template: '<entaxy-h2></entaxy-h2>',
isValid: function () { return workspace.treeContainsDomainAndProperties(entaxyH2JmxDomain); }
});
// clean up local storage upon logout
/* preLogoutTasks.addTask('CleanupArtemisCredentials', function () {
Artemis.log.debug("Clean up Artemis credentials in local storage");
localStorage.removeItem('artemisUserName');
localStorage.removeItem('artemisPassword');
}); */
}
configurePlugin.$inject = ['mainNavService', 'workspace', 'helpRegistry', 'preferencesRegistry', 'localStorage', 'preLogoutTasks', 'documentBase', '$templateCache'];
return EntaxyH2;
})(EntaxyH2 || {});
// tell the Hawtio plugin loader about our plugin so it can be
// bootstrapped with the rest of AngularJS
hawtioPluginLoader.addModule(EntaxyH2.pluginName);