diff options
Diffstat (limited to 'solr-8.1.1/server/solr-webapp/webapp/js/angular/controllers/plugins.js')
-rw-r--r-- | solr-8.1.1/server/solr-webapp/webapp/js/angular/controllers/plugins.js | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/solr-8.1.1/server/solr-webapp/webapp/js/angular/controllers/plugins.js b/solr-8.1.1/server/solr-webapp/webapp/js/angular/controllers/plugins.js deleted file mode 100644 index a537b37d7..000000000 --- a/solr-8.1.1/server/solr-webapp/webapp/js/angular/controllers/plugins.js +++ /dev/null @@ -1,167 +0,0 @@ -/* - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You 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. -*/ - -solrAdminApp.controller('PluginsController', - function($scope, $rootScope, $routeParams, $location, Mbeans, Constants) { - $scope.resetMenu("plugins", Constants.IS_CORE_PAGE); - - if ($routeParams.legacytype) { - // support legacy URLs. Angular cannot change #path without reloading controller - $location.path("/"+$routeParams.core+"/plugins"); - $location.search("type", $routeParams.legacytype); - return; - } - - $scope.refresh = function() { - Mbeans.stats({core: $routeParams.core}, function (data) { - var type = $location.search().type; - $scope.types = getPluginTypes(data, type); - $scope.type = getSelectedType($scope.types, type); - - if ($scope.type && $routeParams.entry) { - $scope.plugins = $routeParams.entry.split(","); - openPlugins($scope.type, $scope.plugins); - } else { - $scope.plugins = []; - } - }); - }; - - $scope.selectPluginType = function(type) { - $location.search({entry:null, type: type.lower}); - $scope.type = type; - }; - - $scope.selectPlugin = function(plugin) { - plugin.open = !plugin.open; - - if (plugin.open) { - $scope.plugins.push(plugin.name); - } else { - $scope.plugins.splice($scope.plugins.indexOf(plugin.name), 1); - } - - if ($scope.plugins.length==0) { - $location.search("entry", null); - } else { - $location.search("entry", $scope.plugins.join(',')); - } - } - - $scope.startRecording = function() { - $scope.isRecording = true; - Mbeans.reference({core: $routeParams.core}, function(data) { - $scope.reference = data.reference; - console.log($scope.reference); - }) - } - - $scope.stopRecording = function() { - $scope.isRecording = false; - console.log($scope.reference); - Mbeans.delta({core: $routeParams.core}, $scope.reference, function(data) { - parseDelta($scope.types, data); - }); - } - - $scope.refresh(); - }); - -var getPluginTypes = function(data, selected) { - var keys = []; - var mbeans = data["solr-mbeans"]; - for (var i=0; i<mbeans.length; i+=2) { - var key = mbeans[i]; - var lower = key.toLowerCase(); - var plugins = getPlugins(mbeans[i+1]); - if (plugins.length == 0) continue; - keys.push({name: key, - selected: lower == selected, - changes: 0, - lower: lower, - plugins: plugins - }); - } - keys.sort(function(a,b) {return a.name > b.name}); - return keys; -}; - -var getPlugins = function(data) { - var plugins = []; - for (var key in data) { - var pluginProperties = data[key]; - var stats = pluginProperties.stats; - delete pluginProperties.stats; - for (var stat in stats) { - // add breaking space after a bracket or @ to handle wrap long lines: - stats[stat] = new String(stats[stat]).replace( /([\(@])/g, '$1​'); - } - plugin = {name: key, changed: false, stats: stats, open:false}; - plugin.properties = pluginProperties; - plugins.push(plugin); - } - plugins.sort(function(a,b) {return a.name > b.name}); - return plugins; -}; - -var getSelectedType = function(types, selected) { - if (selected) { - for (var i in types) { - if (types[i].lower == selected) { - return types[i]; - } - } - } -}; - -var parseDelta = function(types, data) { - - var getByName = function(list, name) { - for (var i in list) { - if (list[i].name == name) return list[i]; - } - } - - var mbeans = data["solr-mbeans"] - for (var i=0; i<mbeans.length; i+=2) { - var typeName = mbeans[i]; - var type = getByName(types, typeName); - var plugins = mbeans[i+1]; - for (var key in plugins) { - var changedPlugin = plugins[key]; - if (changedPlugin._changed_) { - var plugin = getByName(type.plugins, key); - var stats = changedPlugin.stats; - delete changedPlugin.stats; - plugin.properties = changedPlugin; - for (var stat in stats) { - // add breaking space after a bracket or @ to handle wrap long lines: - plugin.stats[stat] = new String(stats[stat]).replace( /([\(@])/g, '$1​'); - } - plugin.changed = true; - type.changes++; - } - } - } -}; - -var openPlugins = function(type, selected) { - for (var i in type.plugins) { - var plugin = type.plugins[i]; - plugin.open = selected.indexOf(plugin.name)>=0; - } -} |