2 * Copyright 2016 2015-2016 ZTE, Inc. and others. All rights reserved.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 * Author: Zhaoxing Meng
17 * email: meng.zhaoxing1@zte.com.cn
22 $id : "routeController",
24 targetFullServiceUrl:"",
25 iuiRootPath:iuiRootPath,
26 apiRootPath:apiRootPath,
30 routeTargetTitle:$.i18n.prop("org_openo_msb_route_content_title"),
37 showAPITypeName:[$.i18n.prop("org_openo_msb_route_swagger_type_predefined"),$.i18n.prop("org_openo_msb_route_swagger_type_custominput")],
38 $msbProtocol :["REST","UI","HTTP","MQ","FTP","SNMP","TCP","UDP"],
39 $msbType:["UI","NAF","SAF"],
44 setAPIType:function(type){
45 vm.apiRouteInfo.apiJsonType=type;
47 vm.apiJson.local=vm.jsonApiSelectList.selectItems[0];
53 component_type : 'select',
58 "sProcessing": "<img src='../img/loading-spinner-grey.gif'/><span> Loadding...</span>",
59 "sLengthMenu": $.i18n.prop("org_openo_msb_route-table-sLengthMenu"),
60 "sZeroRecords": $.i18n.prop("org_openo_msb_route-table-sZeroRecords"),
61 "sInfo": "<span class='seperator'> </span>" + $.i18n.prop("org_openo_msb_route-table-sInfo"),
62 "sInfoEmpty": $.i18n.prop("org_openo_msb_route-table-sInfoEmpty"),
63 "sGroupActions": $.i18n.prop("org_openo_msb_route-table-sGroupActions"),
64 "sAjaxRequestGeneralError": $.i18n.prop("org_openo_msb_route-table-sAjaxRequestGeneralError"),
65 "sEmptyTable": $.i18n.prop("org_openo_msb_route-table-sEmptyTable"),
67 "sPrevious": $.i18n.prop("org_openo_msb_route-table-sPrevious"),
68 "sNext": $.i18n.prop("org_openo_msb_route-table-sNext"),
69 "sPage": $.i18n.prop("org_openo_msb_route-table-sPage"),
70 "sPageOf": $.i18n.prop("org_openo_msb_route-table-sPageOf")
72 "sSearch": $.i18n.prop("org_openo_msb_route-table-search"),
73 "sInfoFiltered": $.i18n.prop("org_openo_msb_route-table-infofilter")
75 $apiRouteUrl :apiBasePath+'/apiRoute',
76 $apiRouteInstanceUrl :apiBasePath+'/apiRoute/{serviceName}/version/{version}',
77 $apiRouteStatusUrl :apiBasePath+'/apiRoute/{serviceName}/version/{version}/status/{status}',
78 $apiDocsUrl :apiBasePath+'/apiRoute/apiDocs',
79 $apiGatewayPortUrl :apiBasePath+'/apiRoute/apiGatewayPort',
80 $discoverInfoUrl :apiBasePath+'/apiRoute/discoverInfo',
81 $iuiRouteUrl :apiBasePath+'/iuiRoute',
82 $iuiRouteInstanceUrl :apiBasePath+'/iuiRoute/{serviceName}',
83 $iuiRouteStatusUrl :apiBasePath+'/iuiRoute/{serviceName}/status/{status}',
84 $customRouteUrl :apiBasePath+'/customRoute/all',
85 $customRouteInstanceUrl :apiBasePath+'/customRoute/instance',
86 $customRouteStatusUrl :apiBasePath+'/customRoute/status',
87 $msbRouteUrl:apiBasePath+'/services',
88 $msbRouteInstanceUrl :apiBasePath+'/services/{serviceName}/version/{version}',
98 metricsUrl:"/admin/metrics",
99 apiJson:"/swagger.json",
115 customRouteArray : [],
116 customGroupRouteArray : [],
148 selectedRouteType:"",
153 $initRoute : function() {
157 vm.routeLoading=true;
162 "url": vm.$discoverInfoUrl,
164 success: function (resp) {
166 vm.discoverInfo = (resp==null)?"":resp;
169 error: function(XMLHttpRequest, textStatus, errorThrown) {
170 bootbox.alert("get discoverInfo fails:"+textStatus+":"+errorThrown);
176 "url": vm.$apiRouteUrl,
178 success: function (resp) {
179 vm.apiRouteArray = (resp==null)?[]:resp;
180 vm.apiRouteArray.sort(function(a,b){return a.serviceName>b.serviceName?1:-1});
182 error: function(XMLHttpRequest, textStatus, errorThrown) {
183 bootbox.alert("get api services fails:"+textStatus+":"+errorThrown);
187 vm.routeLoading=false;
188 routeUtil.refreshRoute();
191 "url": vm.$apiGatewayPortUrl,
193 success: function (resp) {
195 vm.targetServiceUrl=location.hostname+":"+resp;
198 error: function(XMLHttpRequest, textStatus, errorThrown) {
199 bootbox.alert("get apiGateway published port fails:"+textStatus+":"+errorThrown);
209 "url": vm.$iuiRouteUrl,
211 success: function (resp) {
212 vm.iuiRouteArray = (resp==null)?[]:resp;
213 vm.iuiRouteArray.sort(function(a,b){return a.serviceName>b.serviceName?1:-1});
215 error: function(XMLHttpRequest, textStatus, errorThrown) {
216 bootbox.alert("get iui services fails:"+textStatus+":"+errorThrown);
220 routeUtil.refreshRoute();
228 "url": vm.$customRouteUrl,
230 success: function (resp) {
231 vm.customRouteArray = (resp==null)?[]:resp;
233 if(resp!=null && resp.length>0)
235 routeUtil.groupRoute(resp);
239 error: function(XMLHttpRequest, textStatus, errorThrown) {
240 bootbox.alert("get custom services fails:"+textStatus+":"+errorThrown);
244 routeUtil.refreshRoute();
251 "url": vm.$apiDocsUrl,
253 success: function (resp) {
254 vm.jsonApiSelectList.selectItems= (resp==null)?[]:resp;
256 error: function(XMLHttpRequest, textStatus, errorThrown) {
257 bootbox.alert("get local apiDocs fails:"+textStatus+":"+errorThrown);
269 initMSBRoute:function(){
274 "url": vm.$msbRouteUrl,
276 success: function (resp) {
277 vm.msbRouteArray = (resp==null)?[]:resp;
279 vm.msbRouteArray.sort(function(a,b){return a.serviceName>b.serviceName?1:-1});
282 error: function(XMLHttpRequest, textStatus, errorThrown) {
283 bootbox.alert("get msb services fails:"+XMLHttpRequest.responseText);
288 table=$('#msbTable').DataTable({
290 "oLanguage": vm.dataTableLanguage,
296 "order": [[2, 'asc']]
305 clickDisplayGraphAlink: function () {
306 vm.boxVisible = !vm.boxVisible;
308 addmsbHost:function(){
309 if(vm.msbRouteInfo.newHost==""){
310 vm.server_rtn.warning_block=true;
311 vm.server_rtn.info_block=false;
312 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_empty");
316 if(vm.msbRouteInfo.newttl==""){
317 vm.server_rtn.warning_block=true;
318 vm.server_rtn.info_block=false;
319 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_ttl_empty");
323 var reg=/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.)(([0-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.){2}([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5]))):(\d{1,5})$/
325 if(!reg.test(vm.msbRouteInfo.newHost)){
326 vm.server_rtn.warning_block=true;
327 vm.server_rtn.info_block=false;
328 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_format");
333 var hosts=vm.msbRouteInfo.newHost.split(":");
340 if(!reg_ttl.test(vm.msbRouteInfo.newttl)){
341 vm.server_rtn.warning_block=true;
342 vm.server_rtn.info_block=false;
343 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_ttl_format");
349 // determine whether host repeated
350 for(var i=0;i<vm.msbRouteInfo.nodes.length;i++){
352 if(vm.msbRouteInfo.nodes[i].ip==ip && vm.msbRouteInfo.nodes[i].port==port )
354 vm.server_rtn.warning_block=true;
355 vm.server_rtn.info_block=false;
356 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_host_repeat',[vm.msbRouteInfo.newHost]);
362 vm.msbRouteInfo.nodes.push({"ip":ip,"port":port,"ttl":vm.msbRouteInfo.newttl});
363 vm.msbRouteInfo.newHost="";
364 vm.msbRouteInfo.newttl="";
365 vm.server_rtn.warning_block=false;
366 vm.server_rtn.info_block=false;
367 vm.server_rtn.rtn_info= "";
371 delmsbHost:function(ip,port){
373 bootbox.confirm( $.i18n.prop('org_openo_msb_route_err_host_del',[ip],[port]),function(result){
376 for(var i=0;i<vm.msbRouteInfo.nodes.length;i++){
377 if(vm.msbRouteInfo.nodes[i].ip == ip && vm.msbRouteInfo.nodes[i].port == port){
378 vm.msbRouteInfo.nodes.splice(i, 1);
387 vm.server_rtn.warning_block=false;
388 vm.server_rtn.info_block=false;
389 vm.server_rtn.rtn_info= "";
392 addapiHost:function(){
393 if(vm.apiRouteInfo.server==""){
394 vm.server_rtn.warning_block=true;
395 vm.server_rtn.info_block=false;
396 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_empty");
400 var reg=/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.)(([0-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.){2}([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5]))):(\d{1,5})$/
402 if(!reg.test(vm.apiRouteInfo.server)){
403 vm.server_rtn.warning_block=true;
404 vm.server_rtn.info_block=false;
405 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_format");
409 var hosts=vm.apiRouteInfo.server.split(":")
414 // determine whether host repeated
415 for(var i=0;i<vm.apiRouteInfo.servers.length;i++){
417 if(vm.apiRouteInfo.servers[i].ip==ip && vm.apiRouteInfo.servers[i].port==port)
419 vm.server_rtn.warning_block=true;
420 vm.server_rtn.info_block=false;
421 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_host_repeat',[vm.apiRouteInfo.server]);
426 var server={ip:ip,port:port,weight: 0};
427 vm.apiRouteInfo.servers.push(server);
428 vm.apiRouteInfo.server="";
429 vm.server_rtn.warning_block=false;
430 vm.server_rtn.info_block=false;
431 vm.server_rtn.rtn_info= "";
435 delapiHost:function(ip,port){
437 bootbox.confirm( $.i18n.prop('org_openo_msb_route_err_host_del',[ip],[port]),function(result){
440 for(var i=0;i<vm.apiRouteInfo.servers.length;i++){
441 if(vm.apiRouteInfo.servers[i].ip == ip && vm.apiRouteInfo.servers[i].port == port ){
442 vm.apiRouteInfo.servers.splice(i, 1);
451 vm.server_rtn.warning_block=false;
452 vm.server_rtn.info_block=false;
453 vm.server_rtn.rtn_info= "";
456 addcustomHost:function(){
457 if(vm.customRouteInfo.server==""){
458 vm.server_rtn.warning_block=true;
459 vm.server_rtn.info_block=false;
460 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_empty");
464 var reg=/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.)(([0-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.){2}([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5]))):(\d{1,5})$/
466 if(!reg.test(vm.customRouteInfo.server)){
467 vm.server_rtn.warning_block=true;
468 vm.server_rtn.info_block=false;
469 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_format");
473 var hosts=vm.customRouteInfo.server.split(":")
479 for(var i=0;i<vm.customRouteInfo.servers.length;i++){
481 if(vm.customRouteInfo.servers[i].ip==ip && vm.customRouteInfo.servers[i].port==port)
483 vm.server_rtn.warning_block=true;
484 vm.server_rtn.info_block=false;
485 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_host_repeat',[vm.apiRouteInfo.server]);
490 var server={ip:ip,port:port,weight: 0};
491 vm.customRouteInfo.servers.push(server);
492 vm.customRouteInfo.server="";
493 vm.server_rtn.warning_block=false;
494 vm.server_rtn.info_block=false;
495 vm.server_rtn.rtn_info= "";
499 delcustomHost:function(ip,port){
501 bootbox.confirm( $.i18n.prop('org_openo_msb_route_err_host_del',[ip],[port]),function(result){
504 for(var i=0;i<vm.customRouteInfo.servers.length;i++){
505 if(vm.customRouteInfo.servers[i].ip == ip && vm.customRouteInfo.servers[i].port == port ){
506 vm.customRouteInfo.servers.splice(i, 1);
515 vm.server_rtn.warning_block=false;
516 vm.server_rtn.info_block=false;
517 vm.server_rtn.rtn_info= "";
520 addiuiHost:function(){
521 if(vm.iuiRouteInfo.server==""){
522 vm.server_rtn.warning_block=true;
523 vm.server_rtn.info_block=false;
524 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_empty");
528 var reg=/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.)(([0-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.){2}([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5]))):(\d{1,5})$/
530 if(!reg.test(vm.iuiRouteInfo.server)){
531 vm.server_rtn.warning_block=true;
532 vm.server_rtn.info_block=false;
533 vm.server_rtn.rtn_info= $.i18n.prop("org_openo_msb_route_err_host_format");
537 var hosts=vm.iuiRouteInfo.server.split(":")
543 for(var i=0;i<vm.iuiRouteInfo.servers.length;i++){
545 if(vm.iuiRouteInfo.servers[i].ip==ip && vm.iuiRouteInfo.servers[i].port==port)
547 vm.server_rtn.warning_block=true;
548 vm.server_rtn.info_block=false;
549 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_host_repeat',[vm.apiRouteInfo.server]);
554 var server={ip:ip,port:port,weight: 0};
555 vm.iuiRouteInfo.servers.push(server);
556 vm.iuiRouteInfo.server="";
557 vm.server_rtn.warning_block=false;
558 vm.server_rtn.info_block=false;
559 vm.server_rtn.rtn_info= "";
563 deliuiHost:function(ip,port){
565 bootbox.confirm($.i18n.prop('org_openo_msb_route_err_host_del',[ip],[port]),function(result){
568 for(var i=0;i<vm.iuiRouteInfo.servers.length;i++){
569 if(vm.iuiRouteInfo.servers[i].ip == ip && vm.iuiRouteInfo.servers[i].port == port ){
570 vm.iuiRouteInfo.servers.splice(i, 1);
579 vm.server_rtn.warning_block=false;
580 vm.server_rtn.info_block=false;
581 vm.server_rtn.rtn_info= "";
584 $showmsbRouteDlg:function() {
585 vm.msbRouteInfo.serviceName="";
586 vm.msbRouteInfo.version="";
587 vm.msbRouteInfo.url="";
588 vm.msbRouteInfo.protocol="";
589 vm.msbRouteInfo.visualRange="";
590 vm.msbRouteInfo.visualRangeArray=[];
591 vm.msbRouteInfo.newHost="";
592 vm.msbRouteInfo.nodes=[];
593 vm.msbRouteInfo.status="1";
596 vm.routeDlgInfo.saveType = "add";
597 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_add_msb');
598 vm.server_rtn.warning_block=false;
599 vm.server_rtn.info_block=false;
603 $(".form-group").each(function () {
604 $(this).removeClass('has-success');
605 $(this).removeClass('has-error');
606 $(this).find(".help-block[id]").remove();
607 $(this).find(".form-tip").removeClass('form-input-focus');
608 $(this).find(".item-tip").removeClass('item-tip-focus');
611 $("#msbrouteDlg").modal("show");
613 $showiuiRouteDlg:function() {
615 vm.iuiRouteInfo.serviceName="";
616 vm.iuiRouteInfo.url="";
617 vm.iuiRouteInfo.server="";
618 vm.iuiRouteInfo.servers=[];
619 vm.iuiRouteInfo.control="0";
620 vm.iuiRouteInfo.status="1";
623 vm.routeDlgInfo.saveType = "add";
624 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_add_iui');
625 vm.server_rtn.warning_block=false;
626 vm.server_rtn.info_block=false;
628 //$("input[name='iuioriService']").val("");
630 $(".form-group").each(function () {
631 $(this).removeClass('has-success');
632 $(this).removeClass('has-error');
633 $(this).find(".help-block[id]").remove();
634 $(this).find(".form-tip").removeClass('form-input-focus');
635 $(this).find(".item-tip").removeClass('item-tip-focus');
638 $("#iuirouteDlg").modal("show");
640 $showcustomRouteDlg:function() {
642 vm.customRouteInfo.serviceName="";
643 vm.customRouteInfo.url="";
644 vm.customRouteInfo.server="";
645 vm.customRouteInfo.servers=[];
646 vm.customRouteInfo.control="0";
647 vm.customRouteInfo.status="1";
650 vm.routeDlgInfo.saveType = "add";
651 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_add_custom');
652 vm.server_rtn.warning_block=false;
653 vm.server_rtn.info_block=false;
655 //$("input[name='customoriService']").val("");
657 $(".form-group").each(function () {
658 $(this).removeClass('has-success');
659 $(this).removeClass('has-error');
660 $(this).find(".help-block[id]").remove();
661 $(this).find(".form-tip").removeClass('form-input-focus');
662 $(this).find(".item-tip").removeClass('item-tip-focus');
665 $("#customrouteDlg").modal("show");
667 $showApiRouteDlg : function() {
669 $('#apiTab a:first').tab('show');
670 vm.apiRouteInfo.serviceName="";
671 vm.apiRouteInfo.version="";
672 vm.apiRouteInfo.url="";
673 vm.apiRouteInfo.metricsUrl="/admin/metrics";
674 vm.apiRouteInfo.control="0";
675 vm.apiRouteInfo.status="1";
676 // vm.apiRouteInfo.apiJson="/service/swagger.json";
677 vm.apiRouteInfo.apiJsonType="1";
678 vm.apiRouteInfo.server="";
679 vm.apiRouteInfo.servers=[];
681 vm.apiJson.custom="/swagger.json";
683 //$("input[name='oriService']").val("");
685 $('#metricsFullurl').collapse('hide');
686 $('#apiJsonFullurl').collapse('hide');
690 vm.routeDlgInfo.saveType = "add";
691 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_add_api');
692 vm.server_rtn.warning_block=false;
693 vm.server_rtn.info_block=false;
695 $(".form-group").each(function () {
696 $(this).removeClass('has-success');
697 $(this).removeClass('has-error');
698 $(this).find(".help-block[id]").remove();
699 $(this).find(".form-tip").removeClass('form-input-focus');
700 $(this).find(".item-tip").removeClass('item-tip-focus');
704 $("#routeDlg").modal("show");
706 $saveiuiRoute : function() {
710 if (iuiform.valid() == false) {
714 vm.server_rtn.warning_block=false;
715 vm.server_rtn.info_block=true;
717 vm.iuiRouteInfo.serviceName=$.trim(vm.iuiRouteInfo.serviceName);
720 for(var i=0;i<vm.iuiRouteInfo.servers.length;i++){
721 var server={ip:vm.iuiRouteInfo.servers[i].ip,port:vm.iuiRouteInfo.servers[i].port,weight: 0};
722 servers.push(server);
727 var iuiRouteUrl=vm.iuiRouteInfo.url=="/"?"":vm.iuiRouteInfo.url;
728 var data= JSON.stringify({
729 "serviceName": vm.iuiRouteInfo.serviceName,
731 "control":vm.iuiRouteInfo.control,
732 "status":vm.iuiRouteInfo.status,
736 if(vm.routeDlgInfo.saveType=="add")
739 //Determine whether to repeat
740 for(var i=0;i<vm.iuiRouteArray.length;i++){
742 if(vm.iuiRouteArray[i].serviceName==vm.iuiRouteInfo.serviceName)
744 vm.server_rtn.warning_block=true;
745 vm.server_rtn.info_block=false;
746 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_repeat',[vm.iuiRouteInfo.serviceName]);
757 "url": vm.$iuiRouteUrl,
760 "contentType":"application/json",
761 success: function (resp) {
763 vm.iuiRouteArray.push(JSON.parse(data));
764 vm.iuiRouteArray.sort(function(a,b){return a.serviceName>b.serviceName?1:-1});
766 routeUtil.refreshRoute();
767 $('#iuirouteDlg').modal('hide');
768 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_iui'),$.i18n.prop('org_openo_msb_route_service_save'),"success");
770 error: function(XMLHttpRequest, textStatus, errorThrown) {
772 vm.server_rtn.warning_block=true;
773 vm.server_rtn.info_block=false;
774 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+textStatus+":"+errorThrown;
781 var url= vm.$iuiRouteInstanceUrl;
782 url=url.replace("{serviceName}",vm.iuiRouteInfo.oldServiceName);
784 //Determine whether to repeat
785 if(vm.iuiRouteInfo.serviceName!=vm.iuiRouteInfo.oldServiceName) //Has been modified service name
787 for(var i=0;i<vm.iuiRouteArray.length;i++){
789 if(vm.iuiRouteArray[i].serviceName==vm.iuiRouteInfo.serviceName)
791 vm.server_rtn.warning_block=true;
792 vm.server_rtn.info_block=false;
793 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_repeat',[vm.iuiRouteInfo.serviceName]);
805 "contentType":"application/json",
806 success: function (resp) {
808 for(var i=0;i<vm.iuiRouteArray.length;i++){
809 if(vm.iuiRouteArray[i].serviceName == vm.iuiRouteInfo.oldServiceName)
811 vm.iuiRouteArray[i].serviceName=vm.iuiRouteInfo.serviceName;
812 vm.iuiRouteArray[i].url=iuiRouteUrl;
813 vm.iuiRouteArray[i].servers=vm.iuiRouteInfo.servers;
821 $('#iuirouteDlg').modal('hide');
822 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_iui'),$.i18n.prop('org_openo_msb_route_service_update'),"success");
826 error: function(XMLHttpRequest, textStatus, errorThrown) {
828 vm.server_rtn.warning_block=true;
829 vm.server_rtn.info_block=false;
830 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+textStatus+":"+errorThrown;
838 $savecustomRoute : function() {
840 customsuccess.hide();
842 if (customform.valid() == false) {
846 if(vm.customRouteInfo.servers.length==0){
847 vm.server_rtn.warning_block=true;
848 vm.server_rtn.info_block=false;
849 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_host_leastone');
853 vm.server_rtn.warning_block=false;
854 vm.server_rtn.info_block=true;
856 vm.customRouteInfo.serviceName=$.trim(vm.customRouteInfo.serviceName);
859 for(var i=0;i<vm.customRouteInfo.servers.length;i++){
860 var server={ip:vm.customRouteInfo.servers[i].ip,port:vm.customRouteInfo.servers[i].port,weight: 0};
861 servers.push(server);
864 var customRouteUrl=vm.customRouteInfo.url=="/"?"":vm.customRouteInfo.url;
865 var data= JSON.stringify({
866 "serviceName": vm.customRouteInfo.serviceName,
867 "url": customRouteUrl,
868 "control":vm.customRouteInfo.control,
869 "status":vm.customRouteInfo.status,
873 if(vm.routeDlgInfo.saveType=="add")
876 //Determine whether to repeat
877 for(var i=0;i<vm.customRouteArray.length;i++){
879 if(vm.customRouteArray[i].serviceName==vm.customRouteInfo.serviceName)
881 vm.server_rtn.warning_block=true;
882 vm.server_rtn.info_block=false;
883 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_repeat',[vm.customRouteInfo.serviceName]);
894 "url": vm.$customRouteInstanceUrl,
897 "contentType":"application/json",
898 success: function (resp) {
900 vm.customRouteArray.push(JSON.parse(data));
901 routeUtil.groupRoute(vm.customRouteArray);
904 routeUtil.refreshRoute();
905 $('#customrouteDlg').modal('hide');
906 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_custom'),$.i18n.prop('org_openo_msb_route_service_save'),"success");
908 error: function(XMLHttpRequest, textStatus, errorThrown) {
910 vm.server_rtn.warning_block=true;
911 vm.server_rtn.info_block=false;
912 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+textStatus+":"+errorThrown;
919 //Determine whether to repeat
920 if(vm.customRouteInfo.serviceName!=vm.customRouteInfo.oldServiceName) //Has been modified service name
922 for(var i=0;i<vm.customRouteArray.length;i++){
924 if(vm.customRouteArray[i].serviceName==vm.customRouteInfo.serviceName)
926 vm.server_rtn.warning_block=true;
927 vm.server_rtn.info_block=false;
928 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_repeat',[vm.customRouteInfo.serviceName]);
935 var url= vm.$customRouteInstanceUrl+"?serviceName="+vm.customRouteInfo.oldServiceName;
942 "contentType":"application/json",
943 success: function (resp) {
945 for(var i=0;i<vm.customRouteArray.length;i++){
946 if(vm.customRouteArray[i].serviceName == vm.customRouteInfo.oldServiceName)
948 vm.customRouteArray[i].serviceName=vm.customRouteInfo.serviceName;
949 vm.customRouteArray[i].url=customRouteUrl;
950 vm.customRouteArray[i].servers=vm.customRouteInfo.servers;
955 routeUtil.groupRoute(vm.customRouteArray);
959 $('#customrouteDlg').modal('hide');
960 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_custom'),$.i18n.prop('org_openo_msb_route_service_update'),"success");
964 error: function(XMLHttpRequest, textStatus, errorThrown) {
966 vm.server_rtn.warning_block=true;
967 vm.server_rtn.info_block=false;
968 vm.server_rtn.rtn_info=$.i18n.prop('org_openo_msb_route_err_service_save')+textStatus+":"+errorThrown;
976 $saveApiRoute : function() {
980 if (form.valid() == false) {
984 if(vm.apiRouteInfo.servers.length==0){
985 vm.server_rtn.warning_block=true;
986 vm.server_rtn.info_block=false;
987 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_host_leastone');
991 vm.server_rtn.warning_block=false;
992 vm.server_rtn.info_block=true;
995 var apiRouteUrl=vm.apiRouteInfo.url=="/"?"":vm.apiRouteInfo.url;
996 var apiJson=vm.apiRouteInfo.apiJsonType=="1"?vm.apiJson.custom:vm.apiJson.local;
999 for(var i=0;i<vm.apiRouteInfo.servers.length;i++){
1000 var server={ip:vm.apiRouteInfo.servers[i].ip,port:vm.apiRouteInfo.servers[i].port,weight: 0};
1001 servers.push(server);
1005 var data= JSON.stringify({
1006 "serviceName": vm.apiRouteInfo.serviceName,
1007 "version": vm.apiRouteInfo.version,
1009 "metricsUrl":vm.apiRouteInfo.metricsUrl,
1011 "apiJsonType":vm.apiRouteInfo.apiJsonType,
1012 "control":vm.apiRouteInfo.control,
1013 "status":vm.apiRouteInfo.status,
1018 if(vm.routeDlgInfo.saveType=="add")
1021 //Determine whether to repeat
1022 for(var i=0;i<vm.apiRouteArray.length;i++){
1024 if(vm.apiRouteArray[i].serviceName==vm.apiRouteInfo.serviceName
1025 && vm.apiRouteArray[i].version==vm.apiRouteInfo.version )
1027 vm.server_rtn.warning_block=true;
1028 vm.server_rtn.info_block=false;
1029 vm.server_rtn.rtn_info=$.i18n.prop('org_openo_msb_route_err_api_repeat',[vm.apiRouteInfo.serviceName],[vm.apiRouteInfo.version]);
1040 "url": vm.$apiRouteUrl,
1043 "contentType":"application/json",
1044 success: function (resp) {
1046 vm.apiRouteArray.push(JSON.parse(data));
1047 vm.apiRouteArray.sort(function(a,b){return a.serviceName>b.serviceName?1:-1});
1049 routeUtil.refreshRoute();
1050 $('#routeDlg').modal('hide');
1051 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_api'),$.i18n.prop('org_openo_msb_route_service_save'),"success");
1053 error: function(XMLHttpRequest, textStatus, errorThrown) {
1055 vm.server_rtn.warning_block=true;
1056 vm.server_rtn.info_block=false;
1057 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+textStatus+":"+errorThrown;
1065 //Determine whether to repeat
1066 if(vm.apiRouteInfo.serviceName!=vm.apiRouteInfo.oldServiceName ||
1067 vm.apiRouteInfo.version!=vm.apiRouteInfo.oldVersion) //Has been modified service name
1069 for(var i=0;i<vm.apiRouteArray.length;i++){
1071 if(vm.apiRouteArray[i].serviceName==vm.apiRouteInfo.serviceName
1072 && vm.apiRouteArray[i].version==vm.apiRouteInfo.version )
1074 vm.server_rtn.warning_block=true;
1075 vm.server_rtn.info_block=false;
1076 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_api_repeat',[vm.apiRouteInfo.serviceName],[vm.apiRouteInfo.version]);
1083 var url= vm.$apiRouteInstanceUrl;
1084 var version=vm.apiRouteInfo.oldVersion==""?"null":vm.apiRouteInfo.oldVersion;
1085 url=url.replace("{serviceName}",vm.apiRouteInfo.oldServiceName).replace("{version}",version);
1093 "contentType":"application/json",
1094 success: function (resp) {
1096 for(var i=0;i<vm.apiRouteArray.length;i++){
1097 if(vm.apiRouteArray[i].serviceName == vm.apiRouteInfo.oldServiceName &&
1098 vm.apiRouteArray[i].version == vm.apiRouteInfo.oldVersion)
1100 //vm.apiRouteArray[i] = JSON.parse(data);
1101 vm.apiRouteArray[i].serviceName=vm.apiRouteInfo.serviceName;
1102 vm.apiRouteArray[i].version= vm.apiRouteInfo.version;
1103 vm.apiRouteArray[i].url=apiRouteUrl;
1104 vm.apiRouteArray[i].metricsUrl=vm.apiRouteInfo.metricsUrl;
1105 vm.apiRouteArray[i].apiJson=apiJson;
1106 vm.apiRouteArray[i].apiJsonType=vm.apiRouteInfo.apiJsonType;
1108 vm.apiRouteArray[i].servers=vm.apiRouteInfo.servers;
1117 $('#routeDlg').modal('hide');
1118 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_api'),$.i18n.prop('org_openo_msb_route_service_update'),"success");
1122 error: function(XMLHttpRequest, textStatus, errorThrown) {
1124 vm.server_rtn.warning_block=true;
1125 vm.server_rtn.info_block=false;
1126 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+textStatus+":"+errorThrown;
1134 $savemsbRoute : function() {
1138 if (msbform.valid() == false) {
1142 if(vm.msbRouteInfo.nodes.length==0){
1143 vm.server_rtn.warning_block=true;
1144 vm.server_rtn.info_block=false;
1145 vm.server_rtn.rtn_info=$.i18n.prop('org_openo_msb_route_err_host_leastone');
1149 if(vm.msbRouteInfo.visualRangeArray.length==0){
1150 vm.server_rtn.warning_block=true;
1151 vm.server_rtn.info_block=false;
1152 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_visualrange_empty');
1156 vm.server_rtn.warning_block=false;
1157 vm.server_rtn.info_block=true;
1159 var msbUrl=vm.msbRouteInfo.url=="/"?"":vm.msbRouteInfo.url;
1163 for(var i=0;i<vm.msbRouteInfo.nodes.length;i++){
1164 var node={ip:vm.msbRouteInfo.nodes[i].ip,port:vm.msbRouteInfo.nodes[i].port,ttl: vm.msbRouteInfo.nodes[i].ttl};
1168 var data= JSON.stringify({
1169 "serviceName": vm.msbRouteInfo.serviceName,
1170 "version": vm.msbRouteInfo.version,
1173 "protocol":vm.msbRouteInfo.protocol,
1174 "visualRange":vm.msbRouteInfo.visualRangeArray.join("|")
1177 if(vm.routeDlgInfo.saveType=="add")
1180 //Determine whether to repeat
1181 for(var i=0;i<vm.msbRouteArray.length;i++){
1183 if(vm.msbRouteArray[i].serviceName==vm.msbRouteInfo.serviceName
1184 && vm.msbRouteArray[i].version==vm.msbRouteInfo.version )
1186 vm.server_rtn.warning_block=true;
1187 vm.server_rtn.info_block=false;
1188 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_api_repeat',[vm.msbRouteInfo.serviceName],[vm.msbRouteInfo.version]);
1198 "url": vm.$msbRouteUrl,
1201 "contentType":"application/json",
1202 success: function (resp) {
1204 // vm.msbRouteArray.push(JSON.parse(data));
1208 // table=$('#msbTable').DataTable({
1210 // "oLanguage": vm.$dataTableLanguage,
1213 // "searchable": false,
1214 // "bSortable": false,
1218 $('#msbrouteDlg').modal('hide');
1219 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_msb'),$.i18n.prop('org_openo_msb_route_service_save'),"success");
1221 error: function(XMLHttpRequest, textStatus, errorThrown) {
1223 vm.server_rtn.warning_block=true;
1224 vm.server_rtn.info_block=false;
1225 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+XMLHttpRequest.responseText;
1233 //Determine whether to repeat
1234 if(vm.msbRouteInfo.serviceName!=vm.msbRouteInfo.oldServiceName ||
1235 vm.msbRouteInfo.version!=vm.msbRouteInfo.oldVersion) //Has been modified service name or version
1237 for(var i=0;i<vm.msbRouteArray.length;i++){
1239 if(vm.msbRouteArray[i].serviceName==vm.msbRouteInfo.serviceName
1240 && vm.msbRouteArray[i].version==vm.msbRouteInfo.version )
1242 vm.server_rtn.warning_block=true;
1243 vm.server_rtn.info_block=false;
1244 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_api_repeat',[vm.msbRouteInfo.serviceName],[vm.msbRouteInfo.version]);
1251 var url= vm.$msbRouteInstanceUrl;
1252 var version=vm.msbRouteInfo.oldVersion==""?"null":vm.msbRouteInfo.oldVersion;
1253 var serviceName2= vm.msbRouteInfo.oldServiceName.replace(/\//g,"*");
1254 url=url.replace("{serviceName}",serviceName2).replace("{version}",version);
1262 "contentType":"application/json",
1263 success: function (resp) {
1265 for(var i=0;i<vm.msbRouteArray.length;i++){
1266 if(vm.msbRouteArray[i].serviceName == vm.msbRouteInfo.oldServiceName &&
1267 vm.msbRouteArray[i].version == vm.msbRouteInfo.oldVersion)
1269 //vm.apiRouteArray[i] = JSON.parse(data);
1270 vm.msbRouteArray[i].serviceName=vm.msbRouteInfo.serviceName;
1271 vm.msbRouteArray[i].version= vm.msbRouteInfo.version;
1272 vm.msbRouteArray[i].url=msbUrl;
1273 vm.msbRouteArray[i].protocol=vm.msbRouteInfo.protocol;
1274 vm.msbRouteArray[i].visualRange=vm.msbRouteInfo.visualRange;
1275 vm.msbRouteArray[i].visualRangeArray=vm.msbRouteInfo.visualRangeArray;
1276 vm.msbRouteArray[i].nodes=nodes;
1284 $('#msbrouteDlg').modal('hide');
1285 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_msb'),$.i18n.prop('org_openo_msb_route_service_update'),"success");
1289 error: function(XMLHttpRequest, textStatus, errorThrown) {
1291 vm.server_rtn.warning_block=true;
1292 vm.server_rtn.info_block=false;
1293 vm.server_rtn.rtn_info= $.i18n.prop('org_openo_msb_route_err_service_save')+XMLHttpRequest.responseText;
1302 updateApiRouteStatus:function(serviceName,version,status){
1304 var url= vm.$apiRouteStatusUrl;
1305 var version2=version==""?"null":version;
1306 url=url.replace("{serviceName}",serviceName).replace("{version}",version2).replace("{status}",status);
1312 success: function (resp) {
1315 for(var i=0;i<vm.apiRouteArray.length;i++){
1316 if(vm.apiRouteArray[i].serviceName == serviceName &&
1317 vm.apiRouteArray[i].version == version){
1318 vm.apiRouteArray[i].status=status;
1325 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_api'),$.i18n.prop('org_openo_msb_route_status_enable'),"success");
1328 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_api'),$.i18n.prop('org_openo_msb_route_status_disable'),"success");
1334 error: function(XMLHttpRequest, textStatus, errorThrown) {
1336 bootbox.alert($.i18n.prop('org_openo_msb_route_err_status')+textStatus+":"+errorThrown);
1342 updateiuiRouteStatus:function(serviceName,status){
1344 var url= vm.$iuiRouteStatusUrl;
1346 url=url.replace("{serviceName}",serviceName).replace("{status}",status);
1352 success: function (resp) {
1355 for(var i=0;i<vm.iuiRouteArray.length;i++){
1356 if(vm.iuiRouteArray[i].serviceName == serviceName){
1357 vm.iuiRouteArray[i].status=status;
1364 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_iui'),$.i18n.prop('org_openo_msb_route_status_enable'),"success");
1367 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_iui'),$.i18n.prop('org_openo_msb_route_status_disable'),"success");
1372 error: function(XMLHttpRequest, textStatus, errorThrown) {
1374 bootbox.alert($.i18n.prop('org_openo_msb_route_err_status')+textStatus+":"+errorThrown);
1380 updatecustomRouteStatus:function(serviceName,status){
1383 var url= vm.$customRouteStatusUrl+"?serviceName="+serviceName+"&status="+status;
1390 success: function (resp) {
1393 for(var i=0;i<vm.customRouteArray.length;i++){
1394 if(vm.customRouteArray[i].serviceName == serviceName){
1395 vm.customRouteArray[i].status=status;
1401 routeUtil.groupRoute(vm.customRouteArray);
1405 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_custom'),$.i18n.prop('org_openo_msb_route_status_enable'),"success");
1408 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_custom'),$.i18n.prop('org_openo_msb_route_status_disable'),"success");
1414 error: function(XMLHttpRequest, textStatus, errorThrown) {
1416 bootbox.alert($.i18n.prop('org_openo_msb_route_err_status')+textStatus+":"+errorThrown);
1422 updateApiRoute:function(apiRouteInfo,type){
1427 $('#metricsFullurl').collapse('hide');
1428 $('#apiJsonFullurl').collapse('hide');
1429 $('#apiTab a:first').tab('show');
1431 vm.apiRouteInfo.serviceName=apiRouteInfo.serviceName;
1432 vm.apiRouteInfo.oldServiceName=apiRouteInfo.serviceName;
1433 vm.apiRouteInfo.version= apiRouteInfo.version;
1434 vm.apiRouteInfo.oldVersion=apiRouteInfo.version;
1435 vm.apiRouteInfo.url=apiRouteInfo.url==""?"/":apiRouteInfo.url;
1436 vm.apiRouteInfo.metricsUrl=apiRouteInfo.metricsUrl;
1437 vm.apiRouteInfo.apiJson=apiRouteInfo.apiJson;
1438 vm.apiRouteInfo.apiJsonType=apiRouteInfo.apiJsonType;
1439 vm.apiRouteInfo.control=apiRouteInfo.control;
1440 vm.apiRouteInfo.status= apiRouteInfo.status;
1442 if(vm.apiRouteInfo.apiJsonType=="1"){
1443 vm.apiJson.custom=apiRouteInfo.apiJson;
1446 vm.apiJson.local=apiRouteInfo.apiJson;
1447 vm.apiJson.custom="/swagger.json";
1448 $("#apiJsonSelect").val(apiRouteInfo.apiJson);
1451 vm.apiRouteInfo.server="";
1452 vm.apiRouteInfo.servers=[];
1453 vm.apiRouteInfo.servers=apiRouteInfo.servers;
1458 // vm.apiRouteInfo= jQuery.extend({},apiRouteInfo);
1460 vm.routeDlgInfo.saveType = type;
1462 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_edit_api');
1464 else if(type=='view'){
1465 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_view_api');
1468 vm.server_rtn.warning_block=false;
1469 vm.server_rtn.info_block=false;
1472 $(".form-group").each(function () {
1473 $(this).removeClass('has-success');
1474 $(this).removeClass('has-error');
1475 $(this).find(".help-block[id]").remove();
1476 $(this).find(".item-tip").addClass("item-tip-focus");
1477 $(this).find(".form-tip").removeClass('form-input-focus');
1480 $("#routeDlg").modal("show");
1482 updateiuiRoute:function(iuiRouteInfo,type){
1485 vm.iuiRouteInfo.serviceName=iuiRouteInfo.serviceName;
1486 vm.iuiRouteInfo.oldServiceName=iuiRouteInfo.serviceName;
1487 vm.iuiRouteInfo.url=iuiRouteInfo.url==""?"/":iuiRouteInfo.url;
1488 vm.iuiRouteInfo.server="";
1489 vm.iuiRouteInfo.servers=[];
1490 vm.iuiRouteInfo.servers=iuiRouteInfo.servers;
1491 vm.iuiRouteInfo.control=iuiRouteInfo.control;
1492 vm.iuiRouteInfo.status=iuiRouteInfo.status;
1495 // vm.apiRouteInfo= jQuery.extend({},apiRouteInfo);
1498 vm.routeDlgInfo.saveType = type;
1500 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_edit_iui');
1502 else if(type=='view'){
1503 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_view_iui');
1506 vm.server_rtn.warning_block=false;
1507 vm.server_rtn.info_block=false;
1510 $(".form-group").each(function () {
1511 $(this).removeClass('has-success');
1512 $(this).removeClass('has-error');
1513 $(this).find(".help-block[id]").remove();
1514 $(this).find(".item-tip").addClass("item-tip-focus");
1515 $(this).find(".form-tip").removeClass('form-input-focus');
1518 $("#iuirouteDlg").modal("show");
1520 updatecustomRoute:function(customRouteInfo,type){
1523 vm.customRouteInfo.serviceName=customRouteInfo.serviceName;
1524 vm.customRouteInfo.oldServiceName=customRouteInfo.serviceName;
1526 vm.customRouteInfo.url=customRouteInfo.url==""?"/":customRouteInfo.url;
1527 vm.customRouteInfo.server="";
1528 vm.customRouteInfo.servers=[];
1529 vm.customRouteInfo.servers=customRouteInfo.servers;
1530 vm.customRouteInfo.control=customRouteInfo.control;
1531 vm.customRouteInfo.status=customRouteInfo.status;
1533 // vm.apiRouteInfo= jQuery.extend({},apiRouteInfo);
1535 vm.routeDlgInfo.saveType = type;
1537 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_edit_custom');
1539 else if(type=='view'){
1540 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_view_custom');
1542 vm.server_rtn.warning_block=false;
1543 vm.server_rtn.info_block=false;
1546 $(".form-group").each(function () {
1547 $(this).removeClass('has-success');
1548 $(this).removeClass('has-error');
1549 $(this).find(".help-block[id]").remove();
1550 $(this).find(".item-tip").addClass("item-tip-focus");
1551 $(this).find(".form-tip").removeClass('form-input-focus');
1554 $("#customrouteDlg").modal("show");
1556 updatemsbRoute:function(msbRouteInfo){
1558 vm.msbRouteInfo.serviceName=msbRouteInfo.serviceName;
1559 vm.msbRouteInfo.oldServiceName=msbRouteInfo.serviceName;
1560 vm.msbRouteInfo.version= msbRouteInfo.version;
1561 vm.msbRouteInfo.oldVersion= msbRouteInfo.version
1562 vm.msbRouteInfo.url=msbRouteInfo.url==""?"/":msbRouteInfo.url;
1563 vm.msbRouteInfo.protocol=msbRouteInfo.protocol;
1564 vm.msbRouteInfo.visualRange=msbRouteInfo.visualRange;
1565 vm.msbRouteInfo.visualRangeArray=msbRouteInfo.visualRange.split("|");
1566 vm.msbRouteInfo.nodes=msbRouteInfo.nodes;
1567 vm.msbRouteInfo.newHost="";
1568 vm.msbRouteInfo.newttl="";
1570 routeUtil.changeTargetServiceUrl();
1572 vm.routeDlgInfo.saveType = "update";
1573 vm.routeDlgInfo.titleName=$.i18n.prop('org_openo_msb_route_title_edit_msb');
1574 vm.server_rtn.warning_block=false;
1575 vm.server_rtn.info_block=false;
1578 $(".form-group").each(function () {
1579 $(this).removeClass('has-success');
1580 $(this).removeClass('has-error');
1581 $(this).find(".help-block[id]").remove();
1582 $(this).find(".item-tip").addClass("item-tip-focus");
1583 $(this).find(".form-tip").removeClass('form-input-focus');
1586 $("#msbrouteDlg").modal("show");
1588 delApiRoute:function(serviceName,version){
1589 bootbox.confirm($.i18n.prop('org_openo_msb_route_err_service_del_ask',[serviceName],[version]),function(result){
1591 var url= vm.$apiRouteInstanceUrl;
1592 var version2=version==""?"null":version;
1593 url=url.replace("{serviceName}",serviceName).replace("{version}",version2);
1599 success: function (resp) {
1601 for(var i=0;i<vm.apiRouteArray.length;i++){
1602 if(vm.apiRouteArray[i].serviceName == serviceName &&
1603 vm.apiRouteArray[i].version == version){
1604 vm.apiRouteArray.splice(i, 1);
1609 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_api'),$.i18n.prop('org_openo_msb_route_service_del_success'),"success");
1612 error: function(XMLHttpRequest, textStatus, errorThrown) {
1614 bootbox.alert($.i18n.prop('org_openo_msb_route_service_del_fail')+textStatus+":"+errorThrown);
1625 deliuiRoute:function(serviceName){
1626 bootbox.confirm($.i18n.prop('org_openo_msb_route_err_service2_del_ask',[serviceName]),function(result){
1628 var url= vm.$iuiRouteInstanceUrl;
1630 url=url.replace("{serviceName}",serviceName);
1636 success: function (resp) {
1638 for(var i=0;i<vm.iuiRouteArray.length;i++){
1639 if(vm.iuiRouteArray[i].serviceName == serviceName){
1640 vm.iuiRouteArray.splice(i, 1);
1645 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_iui'),$.i18n.prop('org_openo_msb_route_service_del_success'),"success");
1649 error: function(XMLHttpRequest, textStatus, errorThrown) {
1651 bootbox.alert($.i18n.prop('org_openo_msb_route_service_del_fail')+textStatus+":"+errorThrown);
1662 delcustomRoute:function(serviceName){
1663 bootbox.confirm($.i18n.prop('org_openo_msb_route_err_service2_del_ask',[serviceName]),function(result){
1665 var url= vm.$customRouteInstanceUrl+"?serviceName="+serviceName;
1671 success: function (resp) {
1673 for(var i=0;i<vm.customRouteArray.length;i++){
1674 if(vm.customRouteArray[i].serviceName == serviceName){
1675 vm.customRouteArray.splice(i, 1);
1680 routeUtil.groupRoute(vm.customRouteArray);
1683 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_custom'),$.i18n.prop('org_openo_msb_route_service_del_success'),"success");
1686 error: function(XMLHttpRequest, textStatus, errorThrown) {
1688 bootbox.alert($.i18n.prop('org_openo_msb_route_service_del_fail')+textStatus+":"+errorThrown);
1699 delmsbRoute:function(serviceName,version,obj){
1700 bootbox.confirm($.i18n.prop('org_openo_msb_route_err_service_del_ask',[serviceName],[version]),function(result){
1702 var url= vm.$msbRouteInstanceUrl;
1703 var version2=version==""?"null":version;
1704 var serviceName2= serviceName.replace(/\//g,"*");
1705 url=url.replace("{serviceName}",serviceName2).replace("{version}",version2);
1711 success: function (resp) {
1712 $(obj).parent().parent().addClass('selected');
1714 for(var i=0;i<vm.msbRouteArray.length;i++){
1715 if(vm.msbRouteArray[i].serviceName == serviceName &&
1716 vm.msbRouteArray[i].version==version ){
1717 vm.msbRouteArray.splice(i, 1);
1722 table.row('.selected').remove().draw( false );
1724 routeUtil.growl($.i18n.prop('org_openo_msb_route_tab_msb'),$.i18n.prop('org_openo_msb_route_service_del_success'),"success");
1728 error: function(XMLHttpRequest, textStatus, errorThrown) {
1730 bootbox.alert($.i18n.prop('org_openo_msb_route_service_del_fail')+XMLHttpRequest.responseText);
1743 exportServices:function(){
1744 var url=apiBasePath+"/apiRoute/export";
1748 gotoTarget:function(route,type){
1749 vm.selectedRoute=route;
1750 vm.selectedRouteType=type;
1756 else if(type=="iui"){
1761 gotoRestDoc:function(){
1762 vm.routeTargetTitle=vm.selectedRoute.serviceName+"-"+$.i18n.prop("org_openo_msb_route_content_title");
1764 var version=vm.selectedRoute.version==""?"":"/"+vm.selectedRoute.version;
1766 if(vm.selectedRoute.apiJsonType=="1")
1769 var sourceUrl= "/apijson/"+vm.selectedRoute.serviceName+version;
1772 var sourceUrl= iuiBasePath+"/ext/initSwaggerJson/"+vm.selectedRoute.apiJson;
1774 //Local json data read from the real API service service address parameter
1775 var url=iuiBasePath+"/api-doc/index.html?url="+sourceUrl+"&api=/api/"+vm.selectedRoute.serviceName+version;
1777 $('#msbSubPage').attr("src",url);
1778 vm.apiIframeUrl=url;
1781 vm.routeTargetTitle=vm.selectedRoute.serviceName+"-"+$.i18n.prop('org_openo_msb_route_metric_content_title');
1783 var version=vm.selectedRoute.version==""?"":"/"+vm.selectedRoute.version;
1785 var sourceUrl= "/admin/"+vm.selectedRoute.serviceName+version;
1788 var url=iuiBasePath+"/metrics/index.html?url="+sourceUrl;
1790 $('#msbSubPage').attr("src",url);
1793 vm.routeTargetTitle=vm.selectedRoute.serviceName+"-"+$.i18n.prop('org_openo_msb_route_iui_content_title');
1794 var url= "/iui/"+vm.selectedRoute.serviceName+"/";
1795 $('#msbSubPage').attr("src",url);
1796 vm.iuiIframeUrl=url;
1798 initIUIfori18n:function(){
1799 vm.routeTargetTitle=$.i18n.prop("org_openo_msb_route_content_title");
1800 vm.showAPITypeName=[$.i18n.prop("org_openo_msb_route_swagger_type_predefined"),$.i18n.prop("org_openo_msb_route_swagger_type_custominput")];
1801 vm.dataTableLanguage={
1802 "sProcessing": "<img src='../img/loading-spinner-grey.gif'/><span> Loadding...</span>",
1803 "sLengthMenu": $.i18n.prop("org_openo_msb_route-table-sLengthMenu"),
1804 "sZeroRecords": $.i18n.prop("org_openo_msb_route-table-sZeroRecords"),
1805 "sInfo": "<span class='seperator'> </span>" + $.i18n.prop("org_openo_msb_route-table-sInfo"),
1806 "sInfoEmpty": $.i18n.prop("org_openo_msb_route-table-sInfoEmpty"),
1807 "sGroupActions": $.i18n.prop("org_openo_msb_route-table-sGroupActions"),
1808 "sAjaxRequestGeneralError": $.i18n.prop("org_openo_msb_route-table-sAjaxRequestGeneralError"),
1809 "sEmptyTable": $.i18n.prop("org_openo_msb_route-table-sEmptyTable"),
1811 "sPrevious": $.i18n.prop("org_openo_msb_route-table-sPrevious"),
1812 "sNext": $.i18n.prop("org_openo_msb_route-table-sNext"),
1813 "sPage": $.i18n.prop("org_openo_msb_route-table-sPage"),
1814 "sPageOf": $.i18n.prop("org_openo_msb_route-table-sPageOf")
1816 "sSearch": $.i18n.prop("org_openo_msb_route-table-search"),
1817 "sInfoFiltered": $.i18n.prop("org_openo_msb_route-table-infofilter")