aboutsummaryrefslogtreecommitdiffstats
path: root/vid/src/main/webapp/app/vid/scripts/services/detailsService.js
blob: 38f161d059fe746ee26944fc3e505034a22b6208 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
/*-
 * ============LICENSE_START=======================================================
 * VID
 * ================================================================================
 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
 * ================================================================================
 * 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.
 * ============LICENSE_END=========================================================
 */

"use strict";

var DetailsService = function($log, DataService, ComponentService, COMPONENT,
	FIELD, UtilityService) {

    var _this = this;

    var getSummaryList = function() {
	switch (_this.componentId) {
	case COMPONENT.NETWORK:
	case COMPONENT.SERVICE:
	case COMPONENT.VNF:
	case COMPONENT.VF_MODULE:
	case COMPONENT.VOLUME_GROUP:
	    return [ {
		name : FIELD.NAME.SUBSCRIBER_NAME,
		value : DataService.getSubscriberName()
	    }, {
		name : FIELD.NAME.SERVICE_INSTANCE_ID,
		value : DataService.getServiceInstanceId()
	    }, {
		name : FIELD.NAME.SERVICE_TYPE,
		value : DataService.getServiceType()
	    } ];
	}
    };

    var getDetailsList = function() {
	switch (_this.componentId) {
	case COMPONENT.NETWORK:
	case COMPONENT.SERVICE:
	case COMPONENT.VNF:
	case COMPONENT.VF_MODULE:
	case COMPONENT.VOLUME_GROUP:
	    return ComponentService.getDisplayNames(ComponentService
		    .getInventoryParameterList(_this.componentId, DataService
			    .getInventoryItem()));
	}
    };

    var getMsoFilterString = function() {

	var instanceId = "";

	switch (_this.componentId) {
	case COMPONENT.NETWORK:
	    instanceId = DataService.getNetworkInstanceId();
	    break;
	case COMPONENT.SERVICE:
	    instanceId = DataService.getServiceInstanceId();
	    break;
	case COMPONENT.VNF:
	    instanceId = DataService.getVnfInstanceId();
	    break;
	case COMPONENT.VF_MODULE:
	    instanceId = DataService.getVfModuleInstanceId();
	    break;
	case COMPONENT.VOLUME_GROUP:
	    instanceId = DataService.getVolumeGroupInstanceId();
	}

	return "filter=" + _this.componentId + "InstanceId:EQUALS:"
		+ instanceId;
    };

    return {
	initializeComponent : function(componentId) {
	    _this.componentId = ComponentService.initialize(componentId);
	},
	getComponentDisplayName : ComponentService.getComponentDisplayName,
	getSummaryList : getSummaryList,
	getDetailsList : getDetailsList,
	getMsoFilterString : getMsoFilterString
    }
}

app.factory("DetailsService", [ "$log", "DataService", "ComponentService",
	"COMPONENT", "FIELD", "UtilityService", DetailsService ]);