frontend/app/scripts/modules/serviceCenter/controllers/serviceInfoCtrl.js (84 lines of code) (raw):

/* * 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. */ 'use strict'; angular.module('serviceCenter.sc') .controller('serviceInfoController', ['$scope', 'httpService', 'commonService', '$q', 'apiConstant', '$state', '$stateParams','serviceInfo' ,function($scope, httpService, commonService, $q, apiConstant, $state, $stateParams, serviceInfo){ var serviceId = $stateParams.serviceId; if(serviceInfo && serviceInfo.data && serviceInfo.data.service){ var service = serviceInfo.data.service; $scope.serviceDetail = { serviceName: service.serviceName, status: service.status, appId: service.appId, version: service.version, createdAt: commonService.timeFormat(service.timestamp), serviceId: service.serviceId }; } var apis = []; var instanceUrl = apiConstant.api.instances.url; var instanceApi = instanceUrl.replace('{{serviceId}}', serviceId); apis.push(instanceApi); var consumerUrl = apiConstant.api.consumer.url; var consumerApi = consumerUrl.replace('{{consumerId}}', serviceId); apis.push(consumerApi); var providerUrl = apiConstant.api.provider.url; var providerApi = providerUrl.replace('{{providerId}}', serviceId); apis.push(providerApi); var serviceUrl = apiConstant.api.specifiedService.url; var specifiedServiceAPI = serviceUrl.replace('{{serviceId}}', serviceId); apis.push(specifiedServiceAPI) var promises =[]; for (var i = 0; i < apis.length; i++) { var url = apis[i]; var method = "GET"; var headers = {"X-ConsumerId": serviceId}; promises.push(httpService.apiRequest(url,method,null,headers,null)); } $q.all(promises).then(function(response){ $scope.instances = response[0].data.instances || []; $scope.providers = response[1].data.providers || []; $scope.consumers = response[2].data.consumers || []; $scope.service = response[3].data.service || []; },function(error){ $scope.instances = []; $scope.providers = []; $scope.consumers = []; $scope.service = []; }); $scope.getInstance = function(){ $state.go('sc.info.instance') }; $scope.getProvider = function(){ $state.go('sc.info.provider') }; $scope.getConsumer = function(){ $state.go('sc.info.consumer') }; $scope.getSchema = function() { $state.go('sc.info.schema'); }; $scope.getProperties = function() { $state.go('sc.info.properties'); }; $scope.convertTime = function(timestamp){ return commonService.timeFormat(timestamp); }; $scope.getActiveTab = function(){ if($state.current.name == "sc.info.instance"){ $scope.selectedTab = 0; } if($state.current.name == "sc.info.provider"){ $scope.selectedTab = 1; } if($state.current.name == "sc.info.consumer"){ $scope.selectedTab = 2; } if($state.current.name == "sc.info.schema"){ $scope.selectedTab = 3; } if($state.current.name == "sc.info.properties"){ $scope.selectedTab = 4; } } $scope.getActiveTab(); }]);