diff options
author | deepikasatheesh <deepika.s84@wipro.com> | 2022-08-30 08:48:17 +0000 |
---|---|---|
committer | deepikasatheesh <deepika.s84@wipro.com> | 2022-08-30 08:49:18 +0000 |
commit | d8424ef4e21880f5dc97131b0adb89509586031c (patch) | |
tree | 3c963fdb7e0980b0f1086874e9fe90306943f6ae | |
parent | 61070cf915619fc52b07bd1b44030b4aa93ce052 (diff) |
Implement Network slicing KPI Monitoring for new KPI5.1.0
Issue-ID: USECASEUI-715
Signed-off-by: deepikasatheesh <deepika.s84@wipro.com>
Change-Id: Ic02250ea79b6e0894ae2b0218bb22fbf1828744d
18 files changed, 585 insertions, 0 deletions
diff --git a/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfo.java b/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfo.java new file mode 100644 index 00000000..c60533de --- /dev/null +++ b/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfo.java @@ -0,0 +1,30 @@ +/*
+ * Copyright (C) 2022 Wipro Limited. 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.
+ */
+package org.onap.usecaseui.server.bean.nsmf.monitor;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class PDUSessionEstSRInfo {
+
+ private String timestamp;
+
+ private String pduSessionEstSR;
+
+}
diff --git a/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfo.java b/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfo.java new file mode 100644 index 00000000..0c71346a --- /dev/null +++ b/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfo.java @@ -0,0 +1,32 @@ +/*
+ * Copyright (C) 2022 Wipro Limited. 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.
+ */
+package org.onap.usecaseui.server.bean.nsmf.monitor;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class ServicePDUSessionEstSRInfo {
+
+ @JsonProperty("service_id")
+ private String id;
+
+ private List<PDUSessionEstSRInfo> pDUSessionEstSRInfoList;
+
+}
diff --git a/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRList.java b/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRList.java new file mode 100644 index 00000000..f87e2fdf --- /dev/null +++ b/server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRList.java @@ -0,0 +1,30 @@ +/*
+ * Copyright (C) 2022 Wipro Limited. 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.
+ */
+package org.onap.usecaseui.server.bean.nsmf.monitor;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.List;
+import lombok.Getter;
+import lombok.Setter;
+
+@Getter
+@Setter
+public class ServicePDUSessionEstSRList {
+
+ @JsonProperty("slicing_pDUSessionEstSR_list")
+ private List<ServicePDUSessionEstSRInfo> servicePDUSessionEstSRInfoList;
+
+}
diff --git a/server/src/main/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorController.java b/server/src/main/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorController.java index 2819b115..8f35b68b 100644 --- a/server/src/main/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorController.java +++ b/server/src/main/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorController.java @@ -68,4 +68,13 @@ public class ResourceMonitorController { ServiceList serviceList) { return resourceMonitorService.querySlicingTotalBandwidth(queryTimestamp, serviceList); } + + @ResponseBody + @PostMapping(value = { + "/queryTimestamp/{queryTimestamp}/pDUSessionEstSR"}, produces = "application/json") + public ServiceResult querySlicingPDUSessionEstSR(@PathVariable(value = "queryTimestamp") String queryTimestamp, + @RequestBody + ServiceList serviceList) { + return resourceMonitorService.querySlicingPDUSessionEstSR(queryTimestamp, serviceList); + } } diff --git a/server/src/main/java/org/onap/usecaseui/server/service/nsmf/ResourceMonitorService.java b/server/src/main/java/org/onap/usecaseui/server/service/nsmf/ResourceMonitorService.java index 7a2a249e..19f4e234 100644 --- a/server/src/main/java/org/onap/usecaseui/server/service/nsmf/ResourceMonitorService.java +++ b/server/src/main/java/org/onap/usecaseui/server/service/nsmf/ResourceMonitorService.java @@ -25,4 +25,6 @@ public interface ResourceMonitorService { ServiceResult querySlicingOnlineUserNumber(String queryTimestamp, ServiceList serviceList); ServiceResult querySlicingTotalBandwidth(String queryTimestamp, ServiceList serviceList); + + ServiceResult querySlicingPDUSessionEstSR(String queryTimestamp, ServiceList serviceList); } diff --git a/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvert.java b/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvert.java index 64e12846..227ce2f7 100644 --- a/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvert.java +++ b/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvert.java @@ -27,12 +27,16 @@ import org.onap.usecaseui.server.bean.nsmf.monitor.TotalBandwidthInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.TrafficReqInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.UsageTrafficInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.UserNumberInfo; +import org.onap.usecaseui.server.bean.nsmf.monitor.ServicePDUSessionEstSRInfo; +import org.onap.usecaseui.server.bean.nsmf.monitor.PDUSessionEstSRInfo; import org.onap.usecaseui.server.constant.nsmf.NsmfParamConstant; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalBandwidth; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalTraffic; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiUserNumber; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.TotalBandwidth; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.UserNumbers; +import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiPDUSessionEstSR; +import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.PDUSessionEstSR; import org.onap.usecaseui.server.util.nsmf.NsmfCommonUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -66,6 +70,14 @@ public class ResourceMonitorServiceConvert { return slicingKpiReqInfo; } + SlicingKpiReqInfo buildSlicingPDUSessionEstSRKpiReqInfo(ServiceInfo serviceInfo, String queryTimestamp, int kpiHours) { + SlicingKpiReqInfo slicingKpiReqInfo = new SlicingKpiReqInfo(); + slicingKpiReqInfo.setId("PDUSessionEstSR"+"."+serviceInfo.getServiceId()); + slicingKpiReqInfo.setTimeStamp(queryTimestamp); + slicingKpiReqInfo.setHours(kpiHours); + return slicingKpiReqInfo; + } + void convertServiceOnlineUserInfo(ServiceOnlineUserInfo serviceOnlineUserInfo, KpiUserNumber kpiUserNumber) throws InvocationTargetException, IllegalAccessException, ParseException { @@ -105,4 +117,21 @@ public class ResourceMonitorServiceConvert { serviceTotalBandwidthInfo.setTotalBandwidthInfoList(totalBandwidthInfoList); } + + void convertServicePDUSessionEstSRInfo(ServicePDUSessionEstSRInfo servicePDUSessionEstSRInfo, + KpiPDUSessionEstSR kpiPDUSessionEstSR) + throws InvocationTargetException, IllegalAccessException, ParseException { + + List<PDUSessionEstSRInfo> kpiPDUSessionEstSRInfoList = new ArrayList<>(); + servicePDUSessionEstSRInfo.setId(kpiPDUSessionEstSR.getRequest().getId().substring(kpiPDUSessionEstSR.getRequest().getId().lastIndexOf(".") + 1)); + if (kpiPDUSessionEstSR.getResult() != null) { + for (PDUSessionEstSR pDUSessionEstSR : kpiPDUSessionEstSR.getResult()) { + PDUSessionEstSRInfo kpiPDUSessionEstSRInfo = new PDUSessionEstSRInfo(); + kpiPDUSessionEstSRInfo.setTimestamp(pDUSessionEstSR.getTimeStamp()); + kpiPDUSessionEstSRInfo.setPduSessionEstSR(String.valueOf(pDUSessionEstSR.getPDUSessionEstSR())); + kpiPDUSessionEstSRInfoList.add(kpiPDUSessionEstSRInfo); + } + } + servicePDUSessionEstSRInfo.setPDUSessionEstSRInfoList(kpiPDUSessionEstSRInfoList); + } } diff --git a/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImpl.java b/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImpl.java index c9c16041..57de5338 100644 --- a/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImpl.java +++ b/server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImpl.java @@ -34,7 +34,9 @@ import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceList; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceOnlineUserInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceOnlineUserList; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceTotalBandwidthInfo; +import org.onap.usecaseui.server.bean.nsmf.monitor.ServicePDUSessionEstSRInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceTotalBandwidthList; +import org.onap.usecaseui.server.bean.nsmf.monitor.ServicePDUSessionEstSRList; import org.onap.usecaseui.server.bean.nsmf.monitor.SlicingKpiReqInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.TrafficReqInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.UsageTrafficInfo; @@ -46,6 +48,7 @@ import org.onap.usecaseui.server.service.slicingdomain.kpi.KpiSliceService; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalBandwidth; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalTraffic; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiUserNumber; +import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiPDUSessionEstSR; import org.onap.usecaseui.server.util.RestfulServices; import org.onap.usecaseui.server.util.nsmf.NsmfCommonUtil; import org.slf4j.Logger; @@ -250,4 +253,57 @@ public class ResourceMonitorServiceImpl implements ResourceMonitorService { serviceResult.setResult_body(serviceTotalBandwidthList); return serviceResult; } + + @Override + public ServiceResult querySlicingPDUSessionEstSR(String queryTimestamp, ServiceList serviceList) { + ServiceResult serviceResult = new ServiceResult(); + ResultHeader resultHeader = new ResultHeader(); + initConfig(); + ServicePDUSessionEstSRList servicePDUSessionEstSRList = new ServicePDUSessionEstSRList(); + + List<ServicePDUSessionEstSRInfo> servicePDUSessionEstSRInfoList = new ArrayList<>(); + List<ServiceInfo> serviceInfoList = serviceList.getServiceInfoList(); + + String resultMsg = ""; + + try { + for (ServiceInfo serviceInfo : serviceInfoList) { + SlicingKpiReqInfo slicingKpiReqInfo = resourceMonitorServiceConvert + .buildSlicingPDUSessionEstSRKpiReqInfo(serviceInfo, queryTimestamp, kpiHours); + String jsonstr = JSON.toJSONString(slicingKpiReqInfo); + RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), jsonstr); + Response<KpiPDUSessionEstSR> response =this.kpiSliceService.listPDUSessionEstSR(requestBody).execute(); + if (response.isSuccessful()) { + KpiPDUSessionEstSR kpiPDUSessionEstSR = response.body(); + logger.info("querySlicingPDUSessionEstSR: listPDUSessionEstSR reponse is:{}", + gson.toJson(kpiPDUSessionEstSR)); + ServicePDUSessionEstSRInfo servicePDUSessionEstSRInfo = new ServicePDUSessionEstSRInfo(); + resourceMonitorServiceConvert + .convertServicePDUSessionEstSRInfo(servicePDUSessionEstSRInfo, kpiPDUSessionEstSR); + servicePDUSessionEstSRInfoList.add(servicePDUSessionEstSRInfo); + resultMsg = "5G slicing service PDUSessionEstSR query result."; + resultHeader.setResult_code(NsmfCodeConstant.SUCCESS_CODE); + } else { + logger.error(String + .format("querySlicingPDUSessionEstSR: Can not get KpiUserNumber[code={}, message={}]", + response.code(), + response.message())); + resultMsg = "5G slicing PDUSessionEstSR query failed!"; + resultHeader.setResult_code(NsmfCodeConstant.ERROR_CODE_UNKNOWN); + } + } + } catch (Exception e) { + resultMsg = "5G slicing PDUSessionEstSR query failed. Unknown exception occurred!"; + resultHeader.setResult_code(NsmfCodeConstant.ERROR_CODE_UNKNOWN); + logger.error("Exception in querySlicingPDUSessionEstSR :{}",e); + } + + logger.info(resultMsg); + logger.info("querySlicingPDUSessionEstSR: 5G slicing kpiPDUSessionEstSR query has been finished."); + servicePDUSessionEstSRList.setServicePDUSessionEstSRInfoList(servicePDUSessionEstSRInfoList); + resultHeader.setResult_message(resultMsg); + serviceResult.setResult_header(resultHeader); + serviceResult.setResult_body(servicePDUSessionEstSRList); + return serviceResult; + } } diff --git a/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/KpiSliceService.java b/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/KpiSliceService.java index 084616be..9522b45f 100644 --- a/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/KpiSliceService.java +++ b/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/KpiSliceService.java @@ -19,6 +19,7 @@ package org.onap.usecaseui.server.service.slicingdomain.kpi; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalBandwidth; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalTraffic; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiUserNumber; +import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiPDUSessionEstSR; import okhttp3.RequestBody; import retrofit2.Call; import retrofit2.http.Body; @@ -39,4 +40,8 @@ public interface KpiSliceService { @POST("/api/datalake/v1/exposure/totalTraffic") Call<KpiTotalTraffic> listTotalTraffic(@Body RequestBody body); + @Headers({"Authorization: Basic SW5mcmFQb3J0YWxDbGllbnQ6cGFzc3dvcmQxJA==", "Accept: application/json"}) + @POST("/api/datalake/v1/exposure/pDUSessionEstSR") + Call<KpiPDUSessionEstSR> listPDUSessionEstSR(@Body RequestBody body); + } diff --git a/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSR.java b/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSR.java new file mode 100644 index 00000000..1a41f262 --- /dev/null +++ b/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSR.java @@ -0,0 +1,35 @@ +/**
+ * Copyright (C) 2022 Wipro Limited. 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.
+ */
+package org.onap.usecaseui.server.service.slicingdomain.kpi.bean;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+import java.util.List;
+import lombok.Getter;
+import lombok.Setter;
+import org.onap.usecaseui.server.bean.nsmf.monitor.SlicingKpiReqInfo;
+
+@Getter
+@Setter
+@JsonIgnoreProperties(ignoreUnknown=true)
+public class KpiPDUSessionEstSR {
+
+ private List<PDUSessionEstSR> result;
+
+ private SlicingKpiReqInfo request;
+
+ private int result_count;
+
+}
diff --git a/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSR.java b/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSR.java new file mode 100644 index 00000000..73da0f46 --- /dev/null +++ b/server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSR.java @@ -0,0 +1,38 @@ +/*
+ * Copyright (C) 2022 Wipro Limited. 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.
+ */
+package org.onap.usecaseui.server.service.slicingdomain.kpi.bean;
+
+public class PDUSessionEstSR {
+ private String timeStamp;
+
+ private int pDUSessionEstSR;
+
+ public String getTimeStamp() {
+ return timeStamp;
+ }
+
+ public void setTimeStamp(String timeStamp) {
+ this.timeStamp = timeStamp;
+ }
+
+ public int getPDUSessionEstSR() {
+ return pDUSessionEstSR;
+ }
+
+ public void setPDUSessionEstSR(int pDUSessionEstSR) {
+ this.pDUSessionEstSR = pDUSessionEstSR;
+ }
+}
diff --git a/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfoTest.java b/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfoTest.java new file mode 100644 index 00000000..20eb4b35 --- /dev/null +++ b/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfoTest.java @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2022 Wipro Limited. 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. + */ +package org.onap.usecaseui.server.bean.nsmf.monitor; + +import org.junit.After; +import org.junit.Before; +import org.junit.jupiter.api.Test; + +public class PDUSessionEstSRInfoTest { + + @Before + public void before() throws Exception { + } + + @After + public void after() throws Exception { + } + + @Test + public void testSetAndGetPDUSessionEstSRInfo() throws Exception { + + PDUSessionEstSRInfo pDUSessionEstSRInfo = new PDUSessionEstSRInfo(); + pDUSessionEstSRInfo.setPduSessionEstSR("188"); + pDUSessionEstSRInfo.setTimestamp("1576143554000"); + + pDUSessionEstSRInfo.getPduSessionEstSR(); + pDUSessionEstSRInfo.getTimestamp(); + } + +} diff --git a/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfoTest.java b/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfoTest.java new file mode 100644 index 00000000..be75fbcc --- /dev/null +++ b/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfoTest.java @@ -0,0 +1,53 @@ +/* + * Copyright (C) 2022 Wipro Limited. 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. + */ +package org.onap.usecaseui.server.bean.nsmf.monitor; + +import java.util.ArrayList; +import java.util.List; +import org.junit.After; +import org.junit.Before; +import org.junit.jupiter.api.Test; + +public class ServicePDUSessionEstSRInfoTest { + + @Before + public void before() throws Exception { + } + + @After + public void after() throws Exception { + } + + @Test + public void testSetAndGetServicePDUSessionEstSRInfo() throws Exception { + + ServicePDUSessionEstSRInfo servicePDUSessionEstSRInfo = new ServicePDUSessionEstSRInfo(); + + List<PDUSessionEstSRInfo> pDUSessionEstSRInfoList = new ArrayList<>(); + + PDUSessionEstSRInfo pDUSessionEstSRInfo = new PDUSessionEstSRInfo(); + pDUSessionEstSRInfo.setPduSessionEstSR("188"); + pDUSessionEstSRInfo.setTimestamp("1576143554000"); + pDUSessionEstSRInfoList.add(pDUSessionEstSRInfo); + + servicePDUSessionEstSRInfo.setId("01000001"); + servicePDUSessionEstSRInfo.setPDUSessionEstSRInfoList(pDUSessionEstSRInfoList); + + servicePDUSessionEstSRInfo.getId(); + servicePDUSessionEstSRInfo.getPDUSessionEstSRInfoList(); + } + +} diff --git a/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRListTest.java b/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRListTest.java new file mode 100644 index 00000000..49593dd0 --- /dev/null +++ b/server/src/test/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRListTest.java @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2022 Wipro Limited. 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. + */ +package org.onap.usecaseui.server.bean.nsmf.monitor; + +import java.util.ArrayList; +import java.util.List; +import org.junit.After; +import org.junit.Before; +import org.junit.jupiter.api.Test; + +public class ServicePDUSessionEstSRListTest { + + @Before + public void before() throws Exception { + } + + @After + public void after() throws Exception { + } + + @Test + public void testSetAndGetServicePDUSessionEstSRList() throws Exception { + + ServicePDUSessionEstSRList servicePDUSessionEstSRList = new ServicePDUSessionEstSRList(); + List<ServicePDUSessionEstSRInfo> servicePDUSessionEstSRInfoList = new ArrayList<>(); + + ServicePDUSessionEstSRInfo servicePDUSessionEstSRInfo = new ServicePDUSessionEstSRInfo(); + + List<PDUSessionEstSRInfo> pDUSessionEstSRInfoList = new ArrayList<>(); + + PDUSessionEstSRInfo pDUSessionEstSRInfo = new PDUSessionEstSRInfo(); + pDUSessionEstSRInfo.setPduSessionEstSR("188"); + pDUSessionEstSRInfo.setTimestamp("1576143554000"); + pDUSessionEstSRInfoList.add(pDUSessionEstSRInfo); + + servicePDUSessionEstSRInfo.setId("01000001"); + servicePDUSessionEstSRInfo.setPDUSessionEstSRInfoList(pDUSessionEstSRInfoList); + + servicePDUSessionEstSRInfoList.add(servicePDUSessionEstSRInfo); + servicePDUSessionEstSRList.setServicePDUSessionEstSRInfoList(servicePDUSessionEstSRInfoList); + + servicePDUSessionEstSRList.getServicePDUSessionEstSRInfoList(); + + } + +} diff --git a/server/src/test/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorControllerTest.java b/server/src/test/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorControllerTest.java index 451852a1..0371187e 100644 --- a/server/src/test/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorControllerTest.java +++ b/server/src/test/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorControllerTest.java @@ -80,4 +80,21 @@ public class ResourceMonitorControllerTest { resourceMonitorController.querySlicingTotalBandwidth("1577016963000", serviceList); verify(resourceMonitorService, times(1)).querySlicingTotalBandwidth("1577016963000", serviceList); } + + @Test + public void testQuerySlicingPDUSessionEstSR() { + ResourceMonitorService resourceMonitorService = mock(ResourceMonitorService.class); + ResourceMonitorController resourceMonitorController = new ResourceMonitorController(); + resourceMonitorController.setResourceMonitorService(resourceMonitorService); + + ServiceList serviceList = new ServiceList(); + List<ServiceInfo> serviceInfoList = new ArrayList<>(); + ServiceInfo serviceInfo = new ServiceInfo(); + serviceInfo.setServiceId("1234-9067-4356-9876"); + serviceInfoList.add(serviceInfo); + serviceList.setServiceInfoList(serviceInfoList); + + resourceMonitorController.querySlicingTotalBandwidth("1577016963000", serviceList); + verify(resourceMonitorService, times(1)).querySlicingPDUSessionEstSR("1577016963000", serviceList); + } } diff --git a/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvertTest.java b/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvertTest.java index 13869751..8d0e9db4 100644 --- a/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvertTest.java +++ b/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvertTest.java @@ -23,13 +23,16 @@ import org.junit.Before; import org.junit.Test; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceOnlineUserInfo; +import org.onap.usecaseui.server.bean.nsmf.monitor.ServicePDUSessionEstSRInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.ServiceTotalBandwidthInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.SlicingKpiReqInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.TrafficReqInfo; import org.onap.usecaseui.server.bean.nsmf.monitor.UsageTrafficInfo; +import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiPDUSessionEstSR; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalBandwidth; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiTotalTraffic; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.KpiUserNumber; +import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.PDUSessionEstSR; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.TotalBandwidth; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.TotalTraffic; import org.onap.usecaseui.server.service.slicingdomain.kpi.bean.UserNumbers; @@ -137,4 +140,35 @@ public class ResourceMonitorServiceConvertTest { } } + @Test + public void itCanConvertconvertServicePDUSessionEstSRInfo() { + ServicePDUSessionEstSRInfo servicePDUSessionEstSRInfo = new ServicePDUSessionEstSRInfo(); + KpiPDUSessionEstSR kpiPDUSessionEstSR = new KpiPDUSessionEstSR(); + + List<PDUSessionEstSR> kpiPDUSessionEstSRInfoList = new ArrayList<>(); + PDUSessionEstSR kpiPDUSessionEstSRInfo = new PDUSessionEstSR(); + kpiPDUSessionEstSRInfo.setPDUSessionEstSR(100); + kpiPDUSessionEstSRInfo.setTimeStamp("2019-12-23 11:31:19"); + kpiPDUSessionEstSRInfoList.add(kpiPDUSessionEstSRInfo); + kpiPDUSessionEstSR.setResult(kpiPDUSessionEstSRInfoList); + + + SlicingKpiReqInfo slicingKpiReqInfo = new SlicingKpiReqInfo(); + slicingKpiReqInfo.setTimeStamp("2019-12-23 11:31:19"); + slicingKpiReqInfo.setId("112233"); + slicingKpiReqInfo.setHours(4); + kpiPDUSessionEstSR.setRequest(slicingKpiReqInfo); + + try { + resourceMonitorServiceConvert + .convertServicePDUSessionEstSRInfo(servicePDUSessionEstSRInfo, kpiPDUSessionEstSR); + } catch (InvocationTargetException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } catch (ParseException e) { + e.printStackTrace(); + } + } + } diff --git a/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImplTest.java b/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImplTest.java index 19ca5dbb..1352309f 100644 --- a/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImplTest.java +++ b/server/src/test/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImplTest.java @@ -143,4 +143,19 @@ public class ResourceMonitorServiceImplTest { when(kpiSliceService.listTotalBandwidth(body)).thenReturn(failedCall("kpi is not exist!")); resourceMonitorService.querySlicingTotalBandwidth(queryTimestamp, serviceList); } + + @Test + public void querySlicingPDUSessionEstSRWithThrowsException() { + ServiceList serviceList = new ServiceList(); + List<ServiceInfo> serviceInfoList = new ArrayList<>(); + ServiceInfo serviceInfo = new ServiceInfo(); + serviceInfo.setServiceId("123e-456t-567t-yui8"); + serviceInfoList.add(serviceInfo); + serviceList.setServiceInfoList(serviceInfoList); + String queryTimestamp = "1577071879000"; + + RequestBody body = null; + when(kpiSliceService.listPDUSessionEstSR(body)).thenReturn(failedCall("kpi is not exist!")); + resourceMonitorService.querySlicingPDUSessionEstSR(queryTimestamp, serviceList); + } } diff --git a/server/src/test/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSRTest.java b/server/src/test/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSRTest.java new file mode 100644 index 00000000..933bcff3 --- /dev/null +++ b/server/src/test/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSRTest.java @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2022 Wipro Limited. 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. + */ +package org.onap.usecaseui.server.service.slicingdomain.kpi.bean; + +import java.util.ArrayList; +import java.util.List; +import org.junit.After; +import org.junit.Before; +import org.junit.jupiter.api.Test; +import org.onap.usecaseui.server.bean.nsmf.monitor.SlicingKpiReqInfo; + +class KpiPDUSessionEstSRTest { + + @Before + public void before() throws Exception { + } + + @After + public void after() throws Exception { + } + + @Test + public void testSetAndGetKpiPDUSessionEstSR() throws Exception { + + KpiPDUSessionEstSR kpiPDUSessionEstSR = new KpiPDUSessionEstSR(); + + List<PDUSessionEstSR> pDUSessionEstSRList = new ArrayList<>(); + PDUSessionEstSR pDUSessionEstSR = new PDUSessionEstSR(); + pDUSessionEstSR.setTimeStamp("12345634456"); + pDUSessionEstSR.setPDUSessionEstSR(123); + + pDUSessionEstSRList.add(pDUSessionEstSR); + kpiPDUSessionEstSR.setResult(pDUSessionEstSRList); + SlicingKpiReqInfo slicingKpiReqInfo = new SlicingKpiReqInfo(); + kpiPDUSessionEstSR.setRequest(slicingKpiReqInfo); + kpiPDUSessionEstSR.setResult_count(1); + + kpiPDUSessionEstSR.getResult(); + kpiPDUSessionEstSR.getRequest(); + kpiPDUSessionEstSR.getResult_count(); + } + +} diff --git a/server/src/test/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSRTest.java b/server/src/test/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSRTest.java new file mode 100644 index 00000000..9b2db5d5 --- /dev/null +++ b/server/src/test/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSRTest.java @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2022 Wipro Limited. 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. + */ +package org.onap.usecaseui.server.service.slicingdomain.kpi.bean; + +import org.junit.After; +import org.junit.Before; +import org.junit.jupiter.api.Test; + +public class PDUSessionEstSRTest { + + @Before + public void before() throws Exception { + } + + @After + public void after() throws Exception { + } + + @Test + public void testSetAndGetPDUSessionEstSR() throws Exception { + PDUSessionEstSR pDUSessionEstSR = new PDUSessionEstSR(); + pDUSessionEstSR.setTimeStamp("12345634456"); + pDUSessionEstSR.setPDUSessionEstSR(123); + + pDUSessionEstSR.getTimeStamp(); + pDUSessionEstSR.getPDUSessionEstSR(); + } + +} |