aboutsummaryrefslogtreecommitdiffstats
path: root/server/src/main/java/org/onap/usecaseui
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/main/java/org/onap/usecaseui')
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/PDUSessionEstSRInfo.java30
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRInfo.java32
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/bean/nsmf/monitor/ServicePDUSessionEstSRList.java30
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/controller/nsmf/ResourceMonitorController.java9
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/nsmf/ResourceMonitorService.java2
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceConvert.java29
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/nsmf/impl/ResourceMonitorServiceImpl.java56
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/KpiSliceService.java5
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/KpiPDUSessionEstSR.java35
-rw-r--r--server/src/main/java/org/onap/usecaseui/server/service/slicingdomain/kpi/bean/PDUSessionEstSR.java38
10 files changed, 266 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;
+ }
+}