<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
- <version>1.5.4</version>
+ <version>1.6.5</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
- <version>1.5.4</version>
+ <version>1.6.5</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
public AlarmBo() {
}
- public AlarmBo(AlarmsHeader alarmsHeader, List<AlarmsInformation> alarmsInformation) {
- this.alarmsHeader = alarmsHeader;
- this.alarmsInformation = alarmsInformation;
- }
-
public AlarmsHeader getAlarmsHeader() {
return alarmsHeader;
}
public PerformanceBo() {
}
- public PerformanceBo(PerformanceHeader performanceHeader, List<PerformanceInformation> performanceInformation) {
- this.performanceHeader = performanceHeader;
- this.performanceInformation = performanceInformation;
- }
public PerformanceHeader getPerformanceHeader() {
return performanceHeader;
import java.io.OutputStream;\r
import java.text.ParseException;\r
import java.text.SimpleDateFormat;\r
+import java.time.LocalDateTime;\r
+import java.time.ZoneId;\r
+import java.time.ZonedDateTime;\r
import java.util.*;\r
\r
\r
@Resource(name = "AlarmsInformationService")\r
private AlarmsInformationService alarmsInformationService;\r
\r
- private String[] AlarmCSVHeaders = new String[]{"version",\r
- "eventName","domain","eventId","eventType","nfcNamingCode",\r
- "nfNamingCode","sourceId","sourceName","reportingEntityId",\r
- "reportingEntityName","priority","startEpochMicrosec","lastEpochMicroSec",\r
- "sequence","faultFieldsVersion","eventServrity","eventSourceType",\r
- "eventCategory","alarmCondition","specificProblem","vfStatus",\r
- "alarmInterfaceA","status",\r
- "createTime","updateTime","name","value"};\r
-\r
private ObjectMapper omAlarm = new ObjectMapper();\r
\r
+ private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");\r
+\r
@RequestMapping(value = {"/alarm/{currentPage}/{pageSize}",\r
"/alarm/{currentPage}/{pageSize}/{sourceId}/{sourceName}/{priority}/{startTime}/{endTime}/{vfStatus}"},\r
method = RequestMethod.GET , produces = "application/json")\r
alarmsHeaders = pa.getList();\r
if (null != alarmsHeaders && alarmsHeaders.size() > 0) {\r
alarmsHeaders.forEach(a ->{\r
+ logger.info(a.toString());\r
AlarmBo abo = new AlarmBo();\r
if (!a.getStatus().equals("3")){\r
abo.setAlarmsHeader(a);\r
}\r
}\r
\r
- @RequestMapping(value = { "/alarm/genCsv/{eventId}" } , method = RequestMethod.GET , produces = "application/json")\r
- public String generateCsvFile(HttpServletResponse response, @PathVariable String[] eventId) throws JsonProcessingException {\r
- logger.info("transfer generateCsvFile Apis, " +\r
- "Parameter all follows : [eventId : {}]",eventId);\r
- String csvFile = "csvFiles/vnf_alarm_"+new SimpleDateFormat("yy-MM-ddHH:mm:ss").format(new Date())+".csv";\r
- List<AlarmsHeader> alarmsHeaders = alarmsHeaderService.queryId(eventId);\r
- List<String[]> csvData = new ArrayList<>();\r
- try{\r
- alarmsHeaders.forEach(ala ->{\r
- List<AlarmsInformation> information = alarmsInformationService.queryAlarmsInformation(new AlarmsInformation(ala.getEventId()),1,100).getList();\r
- String names = "";\r
- String values = "";\r
- if (0 < information.size() && null != information){\r
- for (AlarmsInformation a : information){\r
- names += a.getName()+",";\r
- values += a.getValue()+",";\r
- }\r
- names = names.substring(0,names.lastIndexOf(','));\r
- values = values.substring(0,values.lastIndexOf(','));\r
- }\r
- csvData.add(new String[]{\r
- ala.getVersion(),ala.getEventName(),ala.getDomain(),ala.getEventId(),ala.getEventType(),\r
- ala.getNfcNamingCode(),ala.getNfNamingCode(),ala.getSourceId(),ala.getSourceName(),\r
- ala.getReportingEntityId(),ala.getReportingEntityName(),ala.getPriority(),ala.getStartEpochMicrosec(),\r
- ala.getLastEpochMicroSec(),ala.getSequence(),ala.getFaultFieldsVersion(),ala.getEventServrity(),\r
- ala.getEventSourceType(),ala.getEventCategory(),ala.getAlarmCondition(),ala.getSpecificProblem(),\r
- ala.getVfStatus(),ala.getAlarmInterfaceA(),ala.getStatus(),DateUtils.dateToString(ala.getCreateTime()),\r
- DateUtils.dateToString(ala.getUpdateTime()),names,values\r
- });\r
- });\r
- CSVUtils.writeCsv(AlarmCSVHeaders,csvData,csvFile);\r
- }catch (Exception e){\r
+ @RequestMapping(value = "/alarm/statusCount",method = RequestMethod.GET , produces = "application/json")\r
+ public String getStatusCount(){\r
+ List<String> statusCount = new ArrayList<>();\r
+ try {\r
+ statusCount.add(alarmsHeaderService.queryStatusCount("0"));\r
+ statusCount.add(alarmsHeaderService.queryStatusCount("1"));\r
+ statusCount.add(alarmsHeaderService.queryStatusCount("2"));\r
+ return omAlarm.writeValueAsString(statusCount);\r
+ } catch (JsonProcessingException e) {\r
+ e.printStackTrace();\r
logger.error(e.getMessage());\r
}\r
- if (ResponseUtil.responseDownload(csvFile,response)){\r
- return omAlarm.writeValueAsString("success");\r
- }else{\r
- return omAlarm.writeValueAsString("failed");\r
- }\r
+ return null;\r
}\r
\r
@RequestMapping(value = {"/alarm/sourceId"},method = RequestMethod.GET)\r
public String getSourceId(){\r
List<String> sourceIds = new ArrayList<>();\r
alarmsHeaderService.queryAlarmsHeader(new AlarmsHeader(),1,Integer.MAX_VALUE).getList().forEach( al ->{\r
- if (!al.getStatus().equals("3") || !sourceIds.contains(al.getSourceId()))\r
+ if (!al.getStatus().equals("3") &&\r
+ !sourceIds.contains(al.getSourceId()))\r
sourceIds.add(al.getSourceId());\r
} );\r
try {\r
}\r
\r
@RequestMapping(value = {"/alarm/diagram"},method = RequestMethod.POST)\r
- public String genDiagram(@RequestParam String sourceId,@RequestParam String startTime,@RequestParam String endTime){\r
+ public String genDiagram(@RequestParam String sourceId,@RequestParam String startTime,@RequestParam String endTime,@RequestParam String showMode){\r
try {\r
- return omAlarm.writeValueAsString(alarmsInformationService.queryDateBetween(sourceId,startTime,endTime));\r
+ return omAlarm.writeValueAsString(diagramDate(sourceId,startTime,endTime,showMode));\r
} catch (JsonProcessingException e) {\r
e.printStackTrace();\r
return "";\r
}\r
}\r
\r
+ private List<List<Long>> dateProcess(String sourceId,long startTimeL,long endTimeL,long timeIteraPlusVal,long keyVal,long keyValIteraVal,String keyUnit) throws ParseException {\r
+ List<List<Long>> dataList = new ArrayList<>();\r
+ long tmpEndTimeL = startTimeL + timeIteraPlusVal;\r
+ while (endTimeL >= tmpEndTimeL){\r
+ List<Map<String,String>> maps = alarmsInformationService.queryDateBetween(sourceId,sdf.format(new Date(startTimeL)),sdf.format(new Date(tmpEndTimeL)));\r
+ maps.forEach( map -> {\r
+ try {\r
+ List<Long> longList = new ArrayList<>();\r
+ if (map.get("Time") != null && !"".equals(map.get("Time")) && !"NULL".equals(map.get("Time")) ){\r
+ longList.add(sdf.parse(map.get("Time")).getTime());\r
+ if (map.get("Count") != null && !"".equals(map.get("Count")))\r
+ longList.add(Long.parseLong(map.get("Count")));\r
+ else\r
+ longList.add(0L);\r
+ }\r
+ if (longList.size() > 0)\r
+ dataList.add(longList);\r
+ } catch (ParseException e) {\r
+ e.printStackTrace();\r
+ }\r
+\r
+ } );\r
+ startTimeL += timeIteraPlusVal;\r
+ tmpEndTimeL += timeIteraPlusVal;\r
+ keyVal += keyValIteraVal;\r
+ }\r
+ return dataList;\r
+ }\r
+\r
+ private List<List<Long>> diagramDate(String sourceId,String startTime,String endTime,String format){\r
+ try {\r
+ long startTimel = sdf.parse(startTime).getTime();\r
+ long endTimel = sdf.parse(endTime).getTime();\r
+ if (format != null && !format.equals("auto")){\r
+ switch (format){\r
+ case "minute":\r
+ return dateProcess(sourceId,startTimel,endTimel,900000,15,15,"minute");\r
+ case "hour":\r
+ return dateProcess(sourceId,startTimel,endTimel,3600000,1,1,"hour");\r
+ case "day":\r
+ return dateProcess(sourceId,startTimel,endTimel,86400000,1,1,"day");\r
+ case "month":\r
+ return dateProcess(sourceId,startTimel,endTimel,2592000000L,1,1,"month");\r
+ case "year":\r
+ return dateProcess(sourceId,startTimel,endTimel,31536000000L,1,1,"year");\r
+ }\r
+ }else if (format != null && format.equals("auto")){\r
+ long minutes = (endTimel - startTimel) / (1000 * 60);\r
+ long hours = minutes / 60;\r
+ if (hours > 12){\r
+ long days = hours / 24;\r
+ if (days > 3){\r
+ long months = days / 31;\r
+ if (months > 2){\r
+ return dateProcess(sourceId,startTimel,endTimel,86400000,1,1,"day");\r
+ }else {\r
+ return dateProcess(sourceId,startTimel,endTimel,2592000000L,1,1,"month");\r
+ }\r
+ }else {\r
+ return dateProcess(sourceId,startTimel,endTimel,3600000,1,1,"hour");\r
+ }\r
+ }else {\r
+ return dateProcess(sourceId,startTimel,endTimel,900000,15,15,"minute");\r
+ }\r
+ }\r
+ } catch (ParseException e) {\r
+ logger.error(e.getMessage());\r
+ e.printStackTrace();\r
+ }\r
+ return null;\r
+ }\r
+\r
}\r
private ObjectMapper omPerformance = new ObjectMapper();
+ private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
+
@RequestMapping(value = {"/performance/{currentPage}/{pageSize}", "/performance/{currentPage}/{pageSize}/{sourceId}/{sourceName}/{priority}/{startTime}/{endTime}"}, method = RequestMethod.GET, produces = "application/json")
public String getPerformanceData(HttpServletResponse response, @PathVariable int currentPage,
@PathVariable int pageSize, @PathVariable(required = false) String sourceId,
}
}
- @RequestMapping(value = {"/performance/genCsv/{eventId}"}, method = RequestMethod.GET, produces = "application/json")
+ /*@RequestMapping(value = {"/performance/genCsv/{eventId}"}, method = RequestMethod.GET, produces = "application/json")
public String generateCsvFile(HttpServletResponse response, @PathVariable String[] eventId) throws JsonProcessingException {
String csvFile = "csvFiles/vnf_performance_" + new SimpleDateFormat("yy-MM-ddHH:mm:ss").format(new Date()) + ".csv";
List<PerformanceHeader> performanceHeaders = performanceHeaderService.queryId(eventId);
} else {
return omPerformance.writeValueAsString("failed");
}
- }
+ }*/
- @RequestMapping(value = {"/performance/genDiaCsv/{dataJson}"}, method = RequestMethod.GET, produces = "application/json")
+ /*@RequestMapping(value = {"/performance/genDiaCsv/{dataJson}"}, method = RequestMethod.GET, produces = "application/json")
public String generateDiaCsvFile(HttpServletResponse response, @PathVariable String dataJson) throws IOException {
List<Map<String, Object>> dataList = omPerformance.readValue(dataJson, List.class);
String csvFileName = "csvFiles/" + dataList.get(0).get("name") + "_" + new SimpleDateFormat("yy-MM-ddHH:mm:ss").format(new Date()) + ".csv";
} else {
return omPerformance.writeValueAsString("failed");
}
- }
-
- @ResponseBody
- @RequestMapping(value = {"/performance/diagram/{unit}/{eventId}"}, method = RequestMethod.GET, produces = "application/json")
- public String generateDiagram(@PathVariable String unit, @PathVariable String eventId) throws ParseException, JsonProcessingException {
- Map<String, List<Integer>> diagramSource = new HashMap<>();
- String[] names = {"cpu", "network", "disk", "memory"};
- switch (unit) {
- case "hour":
- for (int i = 0; i < 4; i++) {
- Date startDateHour = DateUtils.stringToDate(DateUtils.initDate(new Date(), 1, 1, 1, -1, 0, 0));
- Date endDateHour = DateUtils.stringToDate(DateUtils.initDate(new Date(), 1, 1, 1, -1, 0, 0));
- endDateHour = DateUtils.stringToDate(DateUtils.addDate(endDateHour, "minute", 15));
- List<Integer> values = new ArrayList<>();
- for (int j = 0; j < 4; j++) {
- logger.info(DateUtils.dateToString(startDateHour));
- logger.info(DateUtils.dateToString(endDateHour));
- values.add(performanceInformationService.queryDataBetweenSum(eventId, names[i], startDateHour, endDateHour));
- startDateHour = DateUtils.stringToDate(DateUtils.addDate(startDateHour, "minute", 15));
- endDateHour = DateUtils.stringToDate(DateUtils.addDate(endDateHour, "minute", 15));
- }
- diagramSource.put(names[i], values);
- }
- break;
- case "day":
- for (int i = 0; i < 4; i++) {
- Date startDateDay = DateUtils.stringToDate(DateUtils.initDate(new Date(), 1, 1, -1, 0, 0, 0));
- Date endDateDay = DateUtils.stringToDate(DateUtils.initDate(new Date(), 1, 1, -1, 0, 0, 0));
- endDateDay = DateUtils.stringToDate(DateUtils.addDate(endDateDay, "hour", 1));
- List<Integer> values = new ArrayList<>();
- for (int j = 0; j < 24; j++) {
- values.add(performanceInformationService.queryDataBetweenSum(eventId, names[i], startDateDay, endDateDay));
- startDateDay = DateUtils.stringToDate(DateUtils.addDate(startDateDay, "hour", 1));
- endDateDay = DateUtils.stringToDate(DateUtils.addDate(endDateDay, "hour", 1));
- }
- diagramSource.put(names[i], values);
- }
- break;
- case "month":
- for (int i = 0; i < 4; i++) {
- Date startDateMonth = DateUtils.stringToDate(DateUtils.initDate(new Date(), 1, -1, 0, 0, 0, 0));
- Date endDateMonth = DateUtils.stringToDate(DateUtils.initDate(new Date(), 1, -1, 0, 0, 0, 0));
- endDateMonth = DateUtils.stringToDate(DateUtils.addDate(endDateMonth, "day", 1));
- List<Integer> values = new ArrayList<>();
- for (int j = 0; j < 31; j++) {
- values.add(performanceInformationService.queryDataBetweenSum(eventId, names[i], startDateMonth, endDateMonth));
- startDateMonth = DateUtils.stringToDate(DateUtils.addDate(startDateMonth, "day", 1));
- endDateMonth = DateUtils.stringToDate(DateUtils.addDate(endDateMonth, "day", 1));
- }
- diagramSource.put(names[i], values);
- }
- break;
- case "year":
- for (int i = 0; i < 4; i++) {
- Date startDateYear = DateUtils.stringToDate(DateUtils.initDate(new Date(), -1, 0, 0, 0, 0, 0));
- Date endDateYear = DateUtils.stringToDate(DateUtils.initDate(new Date(), -1, 0, 0, 0, 0, 0));
- endDateYear = DateUtils.stringToDate(DateUtils.addDate(endDateYear, "month", 1));
- List<Integer> values = new ArrayList<>();
- for (int j = 0; j < 12; j++) {
- values.add(performanceInformationService.queryDataBetweenSum(eventId, names[i], startDateYear, endDateYear));
- startDateYear = DateUtils.stringToDate(DateUtils.addDate(startDateYear, "month", 1));
- endDateYear = DateUtils.stringToDate(DateUtils.addDate(endDateYear, "month", 1));
- }
- diagramSource.put(names[i], values);
- }
- break;
- }
- omPerformance.setDateFormat(new SimpleDateFormat(Constant.DATE_FORMAT));
- return omPerformance.writeValueAsString(diagramSource);
- }
+ }*/
@RequestMapping(value = {"/performance/diagram"}, method = RequestMethod.POST, produces = "application/json")
- public String generateDiagram(@RequestParam String sourceId, @RequestParam String startTime, @RequestParam String endTime, @RequestParam String nameParent, @RequestParam(required = false) String nameChild) {
- List<Integer> diagramSource = new ArrayList<>();
- try {
- logger.info(sourceId + ":" + startTime + ":" + endTime + ":" + nameParent + ":" + nameChild);
- if (performanceHeaderService.queryPerformanceHeader(new PerformanceHeader(sourceId), 1, 10).getList() != null) {
- if (nameChild != null && !"".equals(nameChild)) {
- sourceId = nameParent;
- nameParent = nameChild;
- }
- performanceInformationService.queryDateBetween(sourceId, nameParent, startTime, endTime)
- .forEach(per -> {
- diagramSource.add(Integer.parseInt(per.getValue()));
- });
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
+ public String generateDiagram(@RequestParam String sourceId, @RequestParam String startTime, @RequestParam String endTime, @RequestParam String nameParent, @RequestParam String format) {
try {
- return omPerformance.writeValueAsString(diagramSource);
+ return omPerformance.writeValueAsString(diagramDate(sourceId,nameParent,startTime,endTime,format));
} catch (JsonProcessingException e) {
logger.error("JsonProcessingException:" + e.getMessage());
- return "";
+ return null;
+ } catch (Exception e) {
+ logger.error(e.getMessage());
+ e.printStackTrace();
+ return null;
}
}
List<String> names = new ArrayList<>();
performanceInformationService.queryDateBetween(sourceId.toString(), null, null, null).forEach(per -> {
if (!names.contains(per.getName()) && per.getValue().matches("[0-9]*"))
- names.add(per.getName());
+ if (Double.parseDouble(per.getValue()) > 0 && !per.getName().equals("Period"))
+ names.add(per.getName());
});
return omPerformance.writeValueAsString(names);
}
}
+ private List<List<Long>> dateProcess(String sourceId,String name,long startTimeL,long endTimeL,long timeIteraPlusVal,long keyVal,long keyValIteraVal,String keyUnit) throws ParseException {
+ List<List<Long>> dataList = new ArrayList<>();
+ long tmpEndTimeL = startTimeL + timeIteraPlusVal;
+ while (endTimeL >= tmpEndTimeL){
+ List<Map<String,String>> maps = performanceInformationService.queryMaxValueByBetweenDate(sourceId,name,sdf.format(new Date(startTimeL)),sdf.format(new Date(tmpEndTimeL)));
+ maps.forEach( map -> {
+ try {
+ List<Long> longList = new ArrayList<>();
+ if (map.get("Time") != null && !"".equals(map.get("Time")) && !"NULL".equals(map.get("Time")) ){
+ longList.add(sdf.parse(map.get("Time")).getTime());
+ if (map.get("Max") != null && !"".equals(map.get("Max")))
+ longList.add(Long.parseLong(map.get("Max")));
+ else
+ longList.add(0L);
+ }
+ if (longList.size() > 0)
+ dataList.add(longList);
+ } catch (ParseException e) {
+ e.printStackTrace();
+ }
+ });
+ startTimeL += timeIteraPlusVal;
+ tmpEndTimeL += timeIteraPlusVal;
+ keyVal += keyValIteraVal;
+ }
+ return dataList;
+ }
+
+ private List<List<Long>> diagramDate(String sourceId,String name,String startTime,String endTime,String format){
+ try {
+ long startTimel = sdf.parse(startTime).getTime();
+ long endTimel = sdf.parse(endTime).getTime();
+ if (format != null && !format.equals("auto")){
+ switch (format){
+ case "minute":
+ return dateProcess(sourceId,name,startTimel,endTimel,900000,15,15,"minute");
+ case "hour":
+ return dateProcess(sourceId,name,startTimel,endTimel,3600000,1,1,"hour");
+ case "day":
+ return dateProcess(sourceId,name,startTimel,endTimel,86400000,1,1,"day");
+ case "month":
+ return dateProcess(sourceId,name,startTimel,endTimel,2592000000L,1,1,"month");
+ case "year":
+ return dateProcess(sourceId,name,startTimel,endTimel,31536000000L,1,1,"year");
+ }
+ }else if (format != null && format.equals("auto")){
+ long minutes = (endTimel - startTimel) / (1000 * 60);
+ long hours = minutes / 60;
+ if (hours > 12){
+ long days = hours / 24;
+ if (days > 3){
+ long months = days / 31;
+ if (months > 2){
+ return dateProcess(sourceId,name,startTimel,endTimel,86400000,1,1,"day");
+ }else {
+ return dateProcess(sourceId,name,startTimel,endTimel,2592000000L,1,1,"month");
+ }
+ }else {
+ return dateProcess(sourceId,name,startTimel,endTimel,3600000,1,1,"hour");
+ }
+ }else {
+ return dateProcess(sourceId,name,startTimel,endTimel,900000,15,15,"minute");
+ }
+ }
+ } catch (ParseException e) {
+ logger.error(e.getMessage());
+ e.printStackTrace();
+ }
+ return null;
+ }
}
private Properties hibernateProperties() {\r
Properties properties = new Properties();\r
properties.put("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");\r
- properties.put("hibernate.show_sql", "true");\r
+ properties.put("hibernate.show_sql", "false");\r
return properties; \r
}\r
\r
Page<AlarmsHeader> queryAlarmsHeader(AlarmsHeader alarmsHeader, int currentPage, int pageSize);
List<AlarmsHeader> queryId(String[] id);
+
+ String queryStatusCount(String status);
}
import java.util.Date;
import java.util.List;
+import java.util.Map;
-import org.onap.usecaseui.server.bean.AlarmsInformation;
import org.onap.usecaseui.server.bean.PerformanceInformation;
import org.onap.usecaseui.server.util.Page;
List<PerformanceInformation> queryDateBetween(String eventId, Date startDate, Date endDate);
- int queryDataBetweenSum(String eventId, String name, Date startDate, Date endDate);
-
List<PerformanceInformation> queryDateBetween(String resourceId, String name, String startTime, String endTime);
+ List<Map<String,String>> queryMaxValueByBetweenDate(String sourceId, String name, String startTime, String endTime);
}
}\r
\r
public int getAllCount(AlarmsHeader alarmsHeader,int currentPage,int pageSize) {\r
- try(Session session = sessionFactory.openSession();){\r
+ try(Session session = sessionFactory.openSession()){\r
StringBuffer count=new StringBuffer("select count(*) from AlarmsHeader a where 1=1");\r
if (null == alarmsHeader) {\r
//logger.error("AlarmsHeaderServiceImpl getAllCount alarmsHeader is null!");\r
count.append(" and a.createTime between :startTime and :endTime");\r
}\r
}\r
+ count.append(" and a.status != 3");\r
Query query = session.createQuery(count.toString());\r
- if(null!=alarmsHeader.getCreateTime() || alarmsHeader.getUpdateTime()!= null) {\r
- query.setDate("startTime",alarmsHeader.getCreateTime());\r
- query.setDate("endTime",alarmsHeader.getUpdateTime());\r
- }\r
+ if (null != alarmsHeader)\r
+ if(null!=alarmsHeader.getCreateTime() || alarmsHeader.getUpdateTime()!= null) {\r
+ query.setDate("startTime",alarmsHeader.getCreateTime());\r
+ query.setDate("endTime",alarmsHeader.getUpdateTime());\r
+ }\r
long q=(long)query.uniqueResult();\r
session.flush();\r
return (int)q;\r
hql.append(" and a.createTime between :startTime and :endTime");\r
}\r
}\r
+ hql.append(" and a.status != 3");\r
logger.info("AlarmsHeaderServiceImpl queryAlarmsHeader: alarmsHeader={}", alarmsHeader);\r
Query query = session.createQuery(hql.toString());\r
- if(null!=alarmsHeader.getCreateTime() || alarmsHeader.getUpdateTime()!= null) {\r
- query.setDate("startTime",alarmsHeader.getCreateTime());\r
- query.setDate("endTime",alarmsHeader.getUpdateTime());\r
- }\r
+ if (null != alarmsHeader)\r
+ if(null!=alarmsHeader.getCreateTime() || alarmsHeader.getUpdateTime()!= null) {\r
+ query.setDate("startTime",alarmsHeader.getCreateTime());\r
+ query.setDate("endTime",alarmsHeader.getUpdateTime());\r
+ }\r
query.setFirstResult(offset);\r
query.setMaxResults(pageSize);\r
List<AlarmsHeader> list= query.list();\r
@SuppressWarnings("unchecked")\r
@Override\r
public List<AlarmsHeader> queryId(String[] id) {\r
- try(Session session = sessionFactory.openSession();){\r
+ try(Session session = sessionFactory.openSession()){\r
if(id.length==0) {\r
logger.error("AlarmsHeaderServiceImpl queryId is null!");\r
}\r
}\r
}\r
\r
- \r
- \r
- \r
- \r
+\r
+ @Override\r
+ public String queryStatusCount(String status) {\r
+ try(Session session = sessionFactory.openSession()){\r
+ String hql = "select count(status) from AlarmsHeader a";\r
+ if (!status.equals("0"))\r
+ hql+=" where a.status = :status";\r
+ else\r
+ hql+=" where a.status != 3";\r
+ Query query = session.createQuery(hql);\r
+ if (!status.equals("0"))\r
+ query.setString("status",status);\r
+ return query.uniqueResult().toString();\r
+ } catch (Exception e) {\r
+ logger.error("exception occurred while performing AlarmsHeaderServiceImpl queryStatusCount. Details:" + e.getMessage());\r
+ return null;\r
+ }\r
+ }\r
}\r
\r
@Override\r
public List<Map<String,String>> queryDateBetween(String sourceId, String startTime, String endTime) {\r
- try(Session session = sessionFactory.openSession();) {\r
+ try(Session session = sessionFactory.openSession()) {\r
List<Map<String,String>> mapList = new ArrayList<>();\r
- String hql = "select a.createTime,count(*) from AlarmsInformation a where 1=1 ";\r
+ String hql = "select a.createTime,count(*) from AlarmsHeader a where 1=1 ";\r
if (sourceId != null && !"".equals(sourceId)){\r
- hql += " and a.eventId = :sourceId";\r
+ hql += " and a.sourceId = :sourceId";\r
}\r
if (startTime != null && !"".equals(startTime) && endTime != null && !"".equals(endTime)){\r
hql += " and a.createTime between :startTime and :endTime ";\r
return null;\r
}\r
}\r
+\r
+\r
}\r
}\r
}\r
Query query = session.createQuery(hql.toString());\r
- if(null!=performanceHeder.getCreateTime() && null!=performanceHeder.getUpdateTime()) {\r
- query.setDate("startTime",performanceHeder.getCreateTime()).setDate("endTime",performanceHeder.getUpdateTime());\r
- }\r
+ if (null != performanceHeder)\r
+ if(null!=performanceHeder.getCreateTime() && null!=performanceHeder.getUpdateTime()) {\r
+ query.setDate("startTime",performanceHeder.getCreateTime()).setDate("endTime",performanceHeder.getUpdateTime());\r
+ }\r
long q=(long)query.uniqueResult();\r
session.flush();\r
return (int)q;\r
}\r
logger.info("PerformanceHeaderServiceImpl queryPerformanceHeader: performanceHeder={}", performanceHeder);\r
Query query = session.createQuery(hql.toString());\r
- if(null!=performanceHeder.getCreateTime() && null!=performanceHeder.getUpdateTime()) {\r
- query.setDate("startTime",performanceHeder.getCreateTime()).setDate("endTime",performanceHeder.getUpdateTime());\r
- }\r
+ if (null != performanceHeder)\r
+ if(null!=performanceHeder.getCreateTime() && null!=performanceHeder.getUpdateTime()) {\r
+ query.setDate("startTime",performanceHeder.getCreateTime()).setDate("endTime",performanceHeder.getUpdateTime());\r
+ }\r
query.setFirstResult(offset);\r
query.setMaxResults(pageSize);\r
List<PerformanceHeader> list= query.list();\r
\r
\r
import java.text.SimpleDateFormat;\r
-import java.util.ArrayList;\r
-import java.util.Date;\r
-import java.util.List;\r
+import java.util.*;\r
\r
import javax.persistence.Id;\r
import javax.transaction.Transactional;\r
int allRow =this.getAllCount(performanceInformation,currentPage,pageSize);\r
int offset = page.countOffset(currentPage, pageSize);\r
\r
- try(Session session = sessionFactory.openSession();){\r
+ try(Session session = sessionFactory.openSession()){\r
StringBuffer hql =new StringBuffer("from PerformanceInformation a where 1=1 ");\r
if (null == performanceInformation) {\r
- //logger.error("AlarmsInformationServiceImpl queryPerformanceInformation performanceInformation is null!");\r
+\r
}else {\r
if(null!=performanceInformation.getName()) {\r
String ver=performanceInformation.getName();\r
@Override\r
public List<PerformanceInformation> queryId(String[] id) {\r
try(Session session = sessionFactory.openSession();) {\r
- if(id.length==0) {\r
- //logger.error("PerformanceInformationServiceImpl queryId is null!");\r
- }\r
- List<PerformanceInformation> list = new ArrayList<>();\r
+ List<PerformanceInformation> list;\r
Query query = session.createQuery("from PerformanceInformation a where a.eventId IN (:alist)");\r
list = query.setParameterList("alist", id).list();\r
return list;\r
@SuppressWarnings("unchecked")\r
@Override\r
public List<PerformanceInformation> queryDateBetween(String eventId,Date startDate, Date endDate) {\r
- try(Session session = sessionFactory.openSession();) {\r
- List<PerformanceInformation> list = new ArrayList<>();\r
+ try(Session session = sessionFactory.openSession()) {\r
+ List<PerformanceInformation> list ;\r
Query query = session.createQuery("from PerformanceInformation a where a.eventId = :eventId and a.createTime BETWEEN :startDate and :endDate");\r
list = query.setParameter("eventId",eventId).setParameter("startDate", startDate).setParameter("endDate",endDate).list();\r
logger.info("PerformanceInformationServiceImpl queryDateBetween: list={}", list);\r
}\r
\r
\r
- @SuppressWarnings("unchecked")\r
- @Override\r
- public int queryDataBetweenSum(String eventId, String name, Date startDate, Date endDate){\r
-\r
- try(Session session = sessionFactory.openSession();) {\r
- int sum = 0;\r
- Query query = session.createQuery("select sum(a.value) from PerformanceInformation a where a.eventId = :eventId and a.name = :name and a.createTime BETWEEN :startDate and :endDate");\r
- sum = Integer.parseInt(query.setParameter("eventId",eventId).setParameter("name",name).setParameter("startDate", startDate).setParameter("endDate",endDate).uniqueResult().toString());\r
- logger.info("PerformanceInformationServiceImpl queryDataBetweenSum: sum={}", sum);\r
- return sum;\r
- } catch (Exception e) {\r
- logger.error("exception occurred while performing PerformanceInformationServiceImpl queryDataBetweenSum. Details:" + e.getMessage());\r
- return 0;\r
- }\r
- }\r
\r
@Override\r
public List<PerformanceInformation> queryDateBetween(String resourceId, String name, String startTime, String endTime) {\r
- try(Session session = sessionFactory.openSession();) {\r
+ try(Session session = sessionFactory.openSession()) {\r
String hql = "from PerformanceInformation a where 1=1 ";\r
if (resourceId != null && !"".equals(resourceId)){\r
hql += " and a.eventId = :resourceId";\r
}\r
}\r
\r
+ @Override\r
+ public List<Map<String,String>> queryMaxValueByBetweenDate(String sourceId, String name, String startTime, String endTime) {\r
+ try(Session session = sessionFactory.openSession()) {\r
+ List<Map<String,String>> mapList = new ArrayList<>();\r
+ String hql = "select a.createTime,max(a.value) from PerformanceInformation a where 1=1 ";\r
+ if (sourceId != null && !"".equals(sourceId)){\r
+ hql += " and a.eventId = :resourceId";\r
+ }\r
+ if (name != null && !"".equals(name)){\r
+ hql += " and a.name = :name ";\r
+ }\r
+ if (startTime != null && !"".equals(startTime) && endTime != null && !"".equals(endTime)){\r
+ hql += " and a.createTime between :startTime and :endTime ";\r
+ }\r
+ hql += " group by a.createTime";\r
+ Query query = session.createQuery(hql);\r
+ if (sourceId != null && !"".equals(sourceId)){\r
+ query.setString("resourceId",sourceId);\r
+ }\r
+ if (name != null && !"".equals(name)){\r
+ query.setString("name",name);\r
+ }\r
+ if (startTime != null && !"".equals(startTime) && endTime != null && !"".equals(endTime)){\r
+ query.setString("startTime", startTime).setString("endTime", endTime);\r
+ }\r
+ Iterator it= query.list().iterator();\r
+ while(it.hasNext()){\r
+ Object[] res=(Object[]) it.next();\r
+ Map<String,String> map = new HashMap<>();\r
+ map.put("Time",res[0].toString());\r
+ map.put("Max",res[1].toString());\r
+ mapList.add(map);\r
+ }\r
+ logger.info("PerformanceInformationServiceImpl queryMaxValueByBetweenDate: maxValue={}", mapList.size());\r
+ return mapList;\r
+ } catch (Exception e) {\r
+ e.printStackTrace();\r
+ logger.error("exception occurred while performing PerformanceInformationServiceImpl queryMaxValueByBetweenDate. Details:" + e.getMessage());\r
+ return null;\r
+ }\r
+ }\r
}\r
- public static String initDate(Date d,int year,int month,int day,int hour,int minute,int second) throws ParseException {
- Instant instant = d.toInstant();
- ZoneId zone = ZoneId.systemDefault();
- LocalDateTime ldt = LocalDateTime.ofInstant(instant,zone);
- if(year >= 0){
- if(year == 0)
- ldt = ldt.withYear(1);
- } else
- ldt = ldt.withYear(ldt.getYear()-1);
- if(month >= 0){
- if(month == 0)
- ldt = ldt.withMonth(1);
- } else
- ldt = ldt.withMonth(ldt.getMonthValue()-1);
- if(day >= 0){
- if(day == 0)
- ldt = ldt.withDayOfMonth(1);
- } else
- ldt = ldt.withDayOfMonth(ldt.getDayOfMonth()-1<1?ldt.getDayOfMonth():ldt.getDayOfMonth()+-1);
- if(hour >= 0){
- if(hour == 0)
- ldt = ldt.withHour(0);
- } else
- ldt = ldt.withHour(ldt.getHour()-1);
- if(minute >= 0){
- if(minute == 0)
- ldt = ldt.withMinute(0);
- } else
- ldt = ldt.withMinute(ldt.getMinute()-1);
- if(second >= 0){
- if(second == 0)
- ldt = ldt.withSecond(0);
- } else
- ldt = ldt.withMinute(ldt.getSecond()-1);
- return ldt.format(DateTimeFormatter.ofPattern(Constant.DATE_FORMAT));
- }
-
-
-
-
- /**
- * param except data ,if int equal 0 then cleared zero,
- * if equal -1 then minus 1 ,else unchanging
- * @param d
- * @param year
- * @param month
- * @param hour
- * @param minute
- * @param second
- * @return
- * @throws ParseException
- */
- public static Date initProcessDate(Date d,int year,int month,int day,int hour,int minute,int second) throws ParseException {
- SimpleDateFormat sdf = new SimpleDateFormat(Constant.DATE_FORMAT);
- Calendar c = Calendar.getInstance();
- c.setTime(d);
- if(year >= 0){
- if(year == 0)
- c.set(Calendar.YEAR,0);
- } else
- c.set(Calendar.YEAR,c.get(Calendar.YEAR)-1);
- if(month >= 0){
- if(month == 0)
- c.set(Calendar.MONTH,0);
- } else
- c.set(Calendar.MONTH,c.get(Calendar.MONTH)-1);
- if(day >= 0){
- if(day == 0)
- c.set(Calendar.DAY_OF_MONTH,0);
- } else
- c.set(Calendar.DAY_OF_MONTH,c.get(Calendar.DAY_OF_MONTH)-1);
- if(hour >= 0){
- if(hour == 0)
- c.set(Calendar.HOUR_OF_DAY,0);
- } else
- c.set(Calendar.HOUR_OF_DAY,c.get(Calendar.HOUR_OF_DAY)-1);
- if(minute >= 0){
- if(minute == 0)
- c.set(Calendar.MINUTE,0);
- } else
- c.set(Calendar.MINUTE,c.get(Calendar.MINUTE)-1);
- if(second >= 0){
- if(second == 0)
- c.set(Calendar.SECOND,0);
- } else
- c.set(Calendar.SECOND,c.get(Calendar.SECOND)-1);
- return sdf.parse(sdf.format(c.getTime()));
- }
-
/**
*
* @param d
import org.onap.usecaseui.server.service.AlarmsInformationService;
import org.onap.usecaseui.server.service.PerformanceHeaderService;
import org.onap.usecaseui.server.service.PerformanceInformationService;
-import org.onap.usecaseui.server.service.impl.AlarmsHeaderServiceImpl;
-import org.onap.usecaseui.server.service.impl.AlarmsInformationServiceImpl;
-import org.onap.usecaseui.server.service.impl.PerformanceHeaderServiceImpl;
-import org.onap.usecaseui.server.service.impl.PerformanceInformationServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.EnableAspectJAutoProxy;
import org.springframework.stereotype.Component;
-import org.springframework.stereotype.Controller;
-import org.springframework.stereotype.Repository;
-import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.Response;
-import java.io.*;
+import java.io.IOException;
+import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
}
}
});
- alarm_informations.forEach(ai -> {
- ai.setCreateTime(alarm_header.getCreateTime());
- ai.setUpdateTime(new Date());
- });
- if (alarm_header.getEventName().contains("Cleared")) {
- alarm_header.setStatus("3");
- logger.info("alarmCleared data header insert is starting......");
- alarmsHeaderService.saveAlarmsHeader(alarm_header);
- logger.info("alarmCleared data header insert has finished.");
- logger.info("alarmCleared data detail insert is starting......");
- alarm_informations.forEach(information ->
- alarmsInformationService.saveAlarmsInformation(information));
- logger.info("alarmCleared data detail insert has finished. " + alarm_informations.size() + " records have been inserted.");
- AlarmsHeader header1 = new AlarmsHeader();
- header1.setEventName(alarm_header.getEventName().substring(0, alarm_header.getEventName().indexOf("Cleared")));
- List<AlarmsHeader> alarmsHeaders = alarmsHeaderService.queryAlarmsHeader(header1, 1, 10).getList();
- alarmsHeaders.forEach(alarms -> {
- alarms.setStatus("2");
- alarms.setUpdateTime(new Date());
- alarmsHeaderService.updateAlarmsHeader(alarms);
- });
- } else {
- alarm_header.setUpdateTime(new Date());
- alarm_header.setStatus("1");
- logger.info("alarm data header insert is starting......");
- alarmsHeaderService.saveAlarmsHeader(alarm_header);
- logger.info("alarm data header insert has finished.");
- logger.info("alarm data detail insert is starting......");
- alarm_informations.forEach(information ->
- alarmsInformationService.saveAlarmsInformation(information));
- logger.info("alarm data detail insert has finished. " + alarm_informations.size() + " records have been inserted.");
- }
+
}
});
+ if (alarm_header.getEventName() != null && alarm_informations.size() > 0){
+ alarm_informations.forEach(ai -> {
+ ai.setCreateTime(alarm_header.getCreateTime());
+ ai.setUpdateTime(new Date());
+ });
+ if (alarm_header.getEventName().contains("Cleared")) {
+ alarm_header.setStatus("3");
+ logger.info("alarmCleared data header insert is starting......");
+ alarmsHeaderService.saveAlarmsHeader(alarm_header);
+ logger.info("alarmCleared data header insert has finished.");
+ logger.info("alarmCleared data detail insert is starting......");
+ alarm_informations.forEach(information ->
+ alarmsInformationService.saveAlarmsInformation(information));
+ logger.info("alarmCleared data detail insert has finished. " + alarm_informations.size() + " records have been inserted.");
+ AlarmsHeader header1 = new AlarmsHeader();
+ header1.setEventName(alarm_header.getEventName().substring(0, alarm_header.getEventName().indexOf("Cleared")));
+ List<AlarmsHeader> alarmsHeaders = alarmsHeaderService.queryAlarmsHeader(header1, 1, 10).getList();
+ alarmsHeaders.forEach(alarms -> {
+ alarms.setStatus("2");
+ alarms.setUpdateTime(new Date());
+ alarmsHeaderService.updateAlarmsHeader(alarms);
+ });
+ } else {
+ alarm_header.setUpdateTime(new Date());
+ alarm_header.setStatus("1");
+ logger.info("alarm data header insert is starting......");
+ alarmsHeaderService.saveAlarmsHeader(alarm_header);
+ logger.info("alarm data header insert has finished.");
+ logger.info("alarm data detail insert is starting......");
+ alarm_informations.forEach(information ->
+ alarmsInformationService.saveAlarmsInformation(information));
+ logger.info("alarm data detail insert has finished. " + alarm_informations.size() + " records have been inserted.");
+ }
+ }
}
private void performanceProcess(Map<String, Object> eventMap) {
}
}
});
-
- logger.info("performance data header insert is starting......");
- performanceHeaderService.savePerformanceHeader(performance_header);
- logger.info("performance data header insert has finished.");
- logger.info("performance data detail insert is starting......");
- performance_informations.forEach(ai -> {
- ai.setCreateTime(performance_header.getCreateTime());
- performanceInformationService.savePerformanceInformation(ai);
- });
- logger.info("performance data detail insert has finished. " + performance_informations.size() + " records have been inserted.");
}
});
+ if (performance_header.getSourceId() !=null && performance_informations.size() > 0 ){
+ logger.info("performance data header insert is starting......");
+ performanceHeaderService.savePerformanceHeader(performance_header);
+ logger.info("performance data header insert has finished.");
+ logger.info("performance data detail insert is starting......");
+ performance_informations.forEach(ai -> {
+ ai.setCreateTime(performance_header.getCreateTime());
+ performanceInformationService.savePerformanceInformation(ai);
+ });
+ logger.info("performance data detail insert has finished. " + performance_informations.size() + " records have been inserted.");
-
+ }
}
}
\ No newline at end of file
+++ /dev/null
-/*
- * Copyright (C) 2017 CMCC, Inc. and others. 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.wrapper;
-
-import org.onap.usecaseui.server.bean.AlarmsHeader;
-import org.onap.usecaseui.server.bean.AlarmsInformation;
-
-public class AlarmWrapper {
-
- private AlarmsHeader alarmsHeader;
-
- private AlarmsInformation alarmsInformation;
-
- private int currentPage = 1;
-
- private int pageSize = 100;
-
-
- public AlarmsHeader getAlarmsHeader() {
- return alarmsHeader;
- }
-
- public void setAlarmsHeader(AlarmsHeader alarmsHeader) {
- this.alarmsHeader = alarmsHeader;
- }
-
- public AlarmsInformation getAlarmsInformation() {
- return alarmsInformation;
- }
-
- public void setAlarmsInformation(AlarmsInformation alarmsInformation) {
- this.alarmsInformation = alarmsInformation;
- }
-
- public int getCurrentPage() {
- return currentPage;
- }
-
- public void setCurrentPage(int currentPage) {
- this.currentPage = currentPage;
- }
-
- public int getPageSize() {
- return pageSize;
- }
-
- public void setPageSize(int pageSize) {
- this.pageSize = pageSize;
- }
-}
package org.onap.usecaseui.server;
import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.onap.usecaseui.server.util.DateUtils;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
+import java.io.IOException;
import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
@RunWith(SpringRunner.class)
@SpringBootTest
@Test
- public void contextLoads() throws JsonProcessingException, ParseException {
+ public void contextLoads() throws IOException, ParseException {
/*ObjectMapper objectMapper = new ObjectMapper();
AlarmsHeader alarmsHeader = new AlarmsHeader();
alarmsHeader.setAlarmCondition("send to my phone");
String jsonStr = objectMapper.writeValueAsString(map);
System.out.println(jsonStr);*/
//System.out.println(alarmsInformationService.saveAlarmsInformation(new AlarmsInformation("11","22","123",new Date(),new Date())));
+ long interval = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse("2017-11-18 11:00").getTime() - new SimpleDateFormat("yyyy-MM-dd HH:mm").parse("2017-11-18 12:00").getTime();
+ long hour = new SimpleDateFormat("yyyy-MM-dd HH:mm").parse("2017-11-18 11:00").getTime() - (1000 * 60 * 15);
+ System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date(hour)));
+ //System.out.println(ss.replaceAll("\"\\{\"","{\""));
+
}
}
*/
package org.onap.usecaseui.server.controller;
-import com.fasterxml.jackson.core.JsonProcessingException;
+
+import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.onap.usecaseui.server.bean.AlarmsHeader;
-import org.onap.usecaseui.server.bean.AlarmsInformation;
-import org.onap.usecaseui.server.service.AlarmsHeaderService;
-import org.onap.usecaseui.server.service.AlarmsInformationService;
-import org.onap.usecaseui.server.util.CSVUtils;
-import org.onap.usecaseui.server.util.DateUtils;
+import org.onap.usecaseui.server.UsecaseuiServerApplication;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-
-import javax.annotation.Resource;
-import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import org.springframework.http.MediaType;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.web.WebAppConfiguration;
+import org.springframework.test.web.servlet.MockMvc;
+import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
+import org.springframework.test.web.servlet.result.MockMvcResultHandlers;
+import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
+import org.springframework.test.web.servlet.setup.MockMvcBuilders;
+import org.springframework.web.context.WebApplicationContext;
-@RunWith(SpringRunner.class)
-@SpringBootTest
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringBootTest(classes = UsecaseuiServerApplication.class)
+@WebAppConfiguration
public class AlarmControllerTest {
@Autowired
- AlarmController alarmController;
+ private WebApplicationContext context;
+
+ private MockMvc mvc;
+
+ @Before
+ public void setup(){
+ mvc = MockMvcBuilders.webAppContextSetup(context).build();
+ }
@Test
- public void getDataNotParam() throws JsonProcessingException {
- System.out.println(alarmController.getAlarmData(null,null,null,null,null,null,1,100));
+ public void test1() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/alarm/1/100")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
}
@Test
- public void getDataCarryParam() throws JsonProcessingException {
- System.out.println(alarmController.getAlarmData("110","a","drop","down","1506331166000","2",1,100));
+ public void test2() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/alarm/1/100/null/null/null/null/null/null")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.get("/alarm/1/100/502fe15c-aa07-ed26-3f87-4d5c1784bc5b/management-server-backup/High/null/null/1")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
}
@Test
- public void csvFile() throws JsonProcessingException {
- System.out.println(alarmController.generateCsvFile(null,new String[]{"110"}));
+ public void test3() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/alarm/statusCount")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
}
+ @Test
+ public void test4() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/alarm/sourceId")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ }
+
+ @Test
+ public void test5() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.post("/alarm/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","").param("startTime","2017-10-1 16:34")
+ .param("endTime","2017-12-5 0:0").param("showMode","auto")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/alarm/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","").param("startTime","2017-10-1 16:34")
+ .param("endTime","2017-12-5 0:0").param("showMode","year")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/alarm/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","").param("startTime","2017-10-1 16:34")
+ .param("endTime","2017-12-5 0:0").param("showMode","month")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/alarm/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","").param("startTime","2017-10-1 16:34")
+ .param("endTime","2017-12-5 0:0").param("showMode","day")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/alarm/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","").param("startTime","2017-10-1 16:34")
+ .param("endTime","2017-12-5 0:0").param("showMode","hour")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/alarm/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","").param("startTime","2017-10-1 16:34")
+ .param("endTime","2017-12-5 0:0").param("showMode","minute")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ }
}
-/*
+ /*
* Copyright (C) 2017 CMCC, Inc. and others. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
*/
package org.onap.usecaseui.server.controller;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
+import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.onap.usecaseui.server.bean.PerformanceHeader;
-import org.onap.usecaseui.server.bean.PerformanceInformation;
-import org.onap.usecaseui.server.service.PerformanceHeaderService;
-import org.onap.usecaseui.server.service.PerformanceInformationService;
-import org.onap.usecaseui.server.util.CSVUtils;
-import org.onap.usecaseui.server.util.DateUtils;
+import org.onap.usecaseui.server.UsecaseuiServerApplication;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.http.MediaType;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import org.springframework.test.context.web.WebAppConfiguration;
+import org.springframework.test.web.servlet.MockMvc;
+import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
+import org.springframework.test.web.servlet.result.MockMvcResultHandlers;
+import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
+import org.springframework.test.web.servlet.setup.MockMvcBuilders;
+import org.springframework.web.context.WebApplicationContext;
-import javax.annotation.Resource;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringBootTest(classes = UsecaseuiServerApplication.class)
+@WebAppConfiguration
public class PerformanceControllerTest {
@Autowired
- private PerformanceController performanceController;
+ private WebApplicationContext context;
- @Test
- public void getPerformanceData() throws JsonProcessingException {
- System.out.println(performanceController.getPerformanceData(null,1,100,null,null,null,null,null));
+ private MockMvc mvc;
+
+ @Before
+ public void setup(){
+ mvc = MockMvcBuilders.webAppContextSetup(context).build();
}
@Test
- public void generateCsvFile() throws JsonProcessingException {
- System.out.println(performanceController.getPerformanceData(null,1,100,"110","fxc","efw","fre","2017-09-28 10:00:00"));
- System.out.println(performanceController.getPerformanceData(null,1,100,"110","fxc","efw","fre","null"));
- System.out.println(performanceController.getPerformanceData(null,1,100,"110","fxc","efw","null","null"));
- System.out.println(performanceController.getPerformanceData(null,1,100,"110","fxc","null","null","null"));
- System.out.println(performanceController.getPerformanceData(null,1,100,"110","null","null","null","null"));
- System.out.println(performanceController.getPerformanceData(null,1,100,"null","null","null","null","null"));
- System.out.println(performanceController.getPerformanceData(null,1,100,"110","fxc","efw","null","asdasdasda"));
-
+ public void test1() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/performance/1/100")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ }
+ @Test
+ public void test2() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/performance/1/100/null/null/null/null/null")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.get("/performance/1/100/1101ZTHX1MMEGJM1W1/1101ZTHX1MMEGJM1W1/Normal/null/null")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
}
@Test
- public void generateDiaCsvFile() throws JsonProcessingException {
- Map<String,String> p = new HashMap<>();
- p.put("eventId","110");
- p.put("name","110");
- p.put("value","110");
- p.put("createTime","110");
- p.put("updateTime","110");
- //System.out.println(performanceController.generateDiaCsvFile(null,p));
+ public void test3() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.get("/performance/resourceIds")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
}
@Test
- public void generateDiagram(){
- try {
- System.out.println(performanceController.generateDiagram("hour","110"));
- System.out.println(performanceController.generateDiagram("day","110"));
- System.out.println(performanceController.generateDiagram("month","110"));
- System.out.println(performanceController.generateDiagram("year","110"));
- } catch (ParseException e) {
- e.printStackTrace();
- } catch (JsonProcessingException e) {
- e.printStackTrace();
- }
+ public void test4() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.post("/performance/names")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
}
+ @Test
+ public void test5() throws Exception {
+ mvc.perform(MockMvcRequestBuilders.post("/performance/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .param("nameParent","SIG.SctpDataChunkReceived")
+ .param("startTime","2017-10-1 17:4")
+ .param("endTime","2017-12-5 17:4")
+ .param("format","auto")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/performance/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .param("nameParent","SIG.SctpDataChunkReceived")
+ .param("startTime","2017-10-1 17:4")
+ .param("endTime","2017-12-5 17:4")
+ .param("format","year")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/performance/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .param("nameParent","SIG.SctpDataChunkReceived")
+ .param("startTime","2017-10-1 17:4")
+ .param("endTime","2017-12-5 17:4")
+ .param("format","month")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/performance/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .param("nameParent","SIG.SctpDataChunkReceived")
+ .param("startTime","2017-10-1 17:4")
+ .param("endTime","2017-12-5 17:4")
+ .param("format","day")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/performance/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .param("nameParent","SIG.SctpDataChunkReceived")
+ .param("startTime","2017-10-1 17:4")
+ .param("endTime","2017-12-5 17:4")
+ .param("format","hour")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ mvc.perform(MockMvcRequestBuilders.post("/performance/diagram")
+ .contentType(MediaType.APPLICATION_JSON_UTF8)
+ .param("sourceId","1101ZTHX1SCT3JNRXOOW2")
+ .param("nameParent","SIG.SctpDataChunkReceived")
+ .param("startTime","2017-10-1 17:4")
+ .param("endTime","2017-12-5 17:4")
+ .param("format","minute")
+ .accept(MediaType.APPLICATION_JSON))
+ .andExpect(MockMvcResultMatchers.status().isOk())
+ .andDo(MockMvcResultHandlers.print());
+ }
-}
+}
\ No newline at end of file
*/
package org.onap.usecaseui.server.service;
+import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+import org.junit.Assert;
+import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.MockitoAnnotations;
+import org.onap.usecaseui.server.UsecaseuiServerApplication;
import org.onap.usecaseui.server.bean.AlarmsHeader;
import org.onap.usecaseui.server.util.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.junit4.SpringRunner;
+import org.springframework.test.context.web.WebAppConfiguration;
import javax.annotation.Resource;
import java.text.ParseException;
-@RunWith(SpringRunner.class)
-@SpringBootTest
+
+@RunWith(SpringJUnit4ClassRunner.class)
+@SpringBootTest(classes = UsecaseuiServerApplication.class)
+@WebAppConfiguration
public class AlarmsHeaderServiceTest {
- @Resource(name = "AlarmsHeaderService")
+ @Autowired
private AlarmsHeaderService alarmsHeaderService;
@Test
performanceInformationService.queryDateBetween("2202", DateUtils.stringToDate("2017-10-15 01:00:00"), DateUtils.stringToDate("2017-10-15 02:00:00")).forEach(p -> System.out.println(p));
}
- @Test
- public void sum() throws ParseException {
- System.out.println(performanceInformationService.queryDataBetweenSum("2202", "cpu", DateUtils.stringToDate("2017-10-18 09:00:00"), DateUtils.stringToDate("2017-10-18 10:00:00")));
- }
+
}
*/
package org.onap.usecaseui.server.util;
+import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.ArrayList;
import java.util.List;
-@RunWith(SpringRunner.class)
-@SpringBootTest
public class CSVUtilsTest {
@Test
*/
package org.onap.usecaseui.server.util;
+import org.junit.Assert;
+import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.onap.usecaseui.server.constant.Constant;
+import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.PowerMockRunner;
+import org.powermock.modules.junit4.PowerMockRunnerDelegate;
import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.junit4.SpringRunner;
import java.text.ParseException;
import java.time.format.DateTimeFormatter;
import java.util.Date;
-@RunWith(SpringRunner.class)
-@SpringBootTest
public class DateUtilsTest {
-
@Test
- public void stringToDate(){
- try {
- System.out.println(DateUtils.stringToDate("2017-09-28 16:00:00"));
- } catch (ParseException e) {
- e.printStackTrace();
- }
+ public void stringToDate() throws ParseException {
+ Date result = DateUtils.stringToDate("2017-08-12 13:12:12");
+ Assert.assertEquals(result,new SimpleDateFormat(Constant.DATE_FORMAT).parse("2017-08-12 13:12:12"));
}
@Test
public void dateToString(){
- System.out.println(DateUtils.dateToString(new Date()));
- }
-
- @Test
- public void initDate(){
- try {
- System.out.println(DateUtils.initDate(new Date(),0,0,0,0,0,0));
- } catch (ParseException e) {
- e.printStackTrace();
- }
- }
-
- @Test
- public void initProcessDate(){
- try {
- System.out.println(DateUtils.initProcessDate(new Date(),0,0,0,0,0,0));
- } catch (ParseException e) {
- e.printStackTrace();
- }
- }
+ Assert.assertEquals(DateUtils.dateToString(new Date()),new SimpleDateFormat(Constant.DATE_FORMAT).format(new Date()));
+ }
@Test
- public void now(){
- try {
- System.out.println(DateUtils.now());
- } catch (ParseException e) {
- e.printStackTrace();
- }
+ public void now() throws ParseException {
+ Assert.assertNotNull(DateUtils.now());
}
@Test
- public void addDate(){
- try {
- LocalDateTime localDateTime = LocalDateTime.now();
- System.out.println(localDateTime.withDayOfMonth(0));
- System.out.println(DateUtils.addDate(new Date(),"day",1));
- /*System.out.println(DateUtils.addDate(new Date(),"month",1));
- System.out.println(DateUtils.addDate(new Date(),"year",-1));*/
- } catch (ParseException e) {
- e.printStackTrace();
- }
+ public void addDate() throws ParseException {
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"year",1));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"month",1));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"month",13));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"day",1));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"day",10));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"hour",1));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"hour",24));
+ Assert.assertNotNull(DateUtils.addDate(new Date(),"minute",1));
}