2 * Copyright (C) 2017 CMCC, Inc. and others. All rights reserved.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org.onap.usecaseui.server.service.impl;
19 import java.util.Date;
20 import java.util.List;
22 import javax.transaction.Transactional;
24 import org.hibernate.Query;
25 import org.hibernate.Session;
26 import org.hibernate.SessionFactory;
27 import org.hibernate.Transaction;
28 import org.onap.usecaseui.server.bean.PerformanceHeader;
29 import org.onap.usecaseui.server.service.PerformanceHeaderService;
30 import org.onap.usecaseui.server.util.Page;
31 import org.slf4j.Logger;
32 import org.slf4j.LoggerFactory;
33 import org.springframework.beans.factory.annotation.Autowired;
34 import org.springframework.context.annotation.EnableAspectJAutoProxy;
35 import org.springframework.stereotype.Service;
38 @Service("PerformanceHeaderService")
40 @org.springframework.context.annotation.Configuration
41 @EnableAspectJAutoProxy
42 public class PerformanceHeaderServiceImpl implements PerformanceHeaderService {
44 private static final Logger logger = LoggerFactory.getLogger(PerformanceHeaderServiceImpl.class);
47 private SessionFactory sessionFactory;
51 public String savePerformanceHeader(PerformanceHeader performanceHeder) {
53 if (null == performanceHeder){
54 logger.error("PerformanceHeaderServiceImpl savePerformanceHeader performanceHeder is null!");
56 logger.info("PerformanceHeaderServiceImpl savePerformanceHeader: performanceHeder={}", performanceHeder);
57 Session session = sessionFactory.openSession();
58 Transaction tx = session.beginTransaction();
59 session.save(performanceHeder);
64 } catch (Exception e) {
65 logger.error("Exception occurred while performing PerformanceHeaderServiceImpl savePerformanceHeader. Details:" + e.getMessage());
73 public String updatePerformanceHeader(PerformanceHeader performanceHeder) {
75 if (null == performanceHeder){
76 logger.error("PerformanceHeaderServiceImpl updatePerformanceHeader performanceHeder is null!");
78 logger.info("PerformanceHeaderServiceImpl savePerformanceHeader: performanceHeder={}", performanceHeder);
79 Session session = sessionFactory.openSession();
80 Transaction tx = session.beginTransaction();
81 session.update(performanceHeder);
86 } catch (Exception e) {
87 logger.error("Exception occurred while performing PerformanceHeaderServiceImpl updatePerformanceHeader. Details:" + e.getMessage());
93 public int getAllCount() {
95 Session session = sessionFactory.openSession();
96 Transaction tx = session.beginTransaction();
97 long q=(long)session.createQuery("select count(*) from PerformanceHeader").uniqueResult();
102 } catch (Exception e) {
103 logger.error("Exception occurred while performing PerformanceHeaderServiceImpl getAllCount. Details:" + e.getMessage());
108 @SuppressWarnings("unchecked")
110 public Page<PerformanceHeader> queryPerformanceHeader(PerformanceHeader performanceHeder, int currentPage,
112 Page<PerformanceHeader> page = new Page<PerformanceHeader>();
113 int allRow =this.getAllCount();
114 int offset = page.countOffset(currentPage, pageSize);
117 StringBuffer hql =new StringBuffer("from PerformanceHeader a where 1=1");
118 if (null == performanceHeder) {
119 logger.error("PerformanceHeaderServiceImpl queryAlarmsHeader performanceHeder is null!");
120 }else if(null!=performanceHeder.getVersion()) {
121 String ver=performanceHeder.getVersion();
122 hql.append(" and a.version like '%"+ver+"%'");
123 }else if(null!=performanceHeder.getEventName()) {
124 String ver=performanceHeder.getEventName();
125 hql.append(" and a.eventName like '%"+ver+"%'");
126 }else if(null!=performanceHeder.getDomain()) {
127 String ver=performanceHeder.getDomain();
128 hql.append(" and a.domain like '%"+ver+"%'");
129 }else if(null!=performanceHeder.getEventId()) {
130 String ver=performanceHeder.getEventId();
131 hql.append(" and a.eventId like '%"+ver+"%'");
132 }else if(null!=performanceHeder.getNfcNamingCode()) {
133 String ver=performanceHeder.getNfcNamingCode();
134 hql.append(" and a.nfcNamingCode like '%"+ver+"%'");
135 }else if(null!=performanceHeder.getNfNamingCode()) {
136 String ver=performanceHeder.getNfNamingCode();
137 hql.append(" and a.nfNamingCode like '%"+ver+"%'");
138 }else if(null!=performanceHeder.getSourceId()) {
139 String ver =performanceHeder.getSourceId();
140 hql.append(" and a.sourceId like '%"+ver+"%'");
141 }else if(null!=performanceHeder.getSourceName()) {
142 String ver =performanceHeder.getSourceName();
143 hql.append(" and a.sourceName like '%"+ver+"%'");
144 }else if(null!=performanceHeder.getReportingEntityId()) {
145 String ver =performanceHeder.getReportingEntityId();
146 hql.append(" and a.reportingEntityId like '%"+ver+"%'");
147 }else if(null!=performanceHeder.getReportingEntityName()) {
148 String ver =performanceHeder.getReportingEntityName();
149 hql.append(" and a.reportingEntityName like '%"+ver+"%'");
150 }else if(null!=performanceHeder.getPriority()) {
151 String ver =performanceHeder.getPriority();
152 hql.append(" and a.priority like '%"+ver+"%'");
153 }else if(null!=performanceHeder.getStartEpochMicrosec()) {
154 String ver =performanceHeder.getStartEpochMicrosec();
155 hql.append(" and a.startEpochMicrosec like '%"+ver+"%'");
156 }else if(null!=performanceHeder.getLastEpochMicroSec()) {
157 String ver =performanceHeder.getLastEpochMicroSec();
158 hql.append(" and a.lastEpochMicroSec like '%"+ver+"%'");
159 }else if(null!=performanceHeder.getSequence()) {
160 String ver =performanceHeder.getSequence();
161 hql.append(" and a.sequence like '%"+ver+"%'");
162 }else if(null!=performanceHeder.getMeasurementsForVfScalingVersion()) {
163 String ver =performanceHeder.getMeasurementsForVfScalingVersion();
164 hql.append(" and a.measurementsForVfScalingVersion like '%"+ver+"%'");
165 }else if(null!=performanceHeder.getMeasurementInterval()) {
166 String ver =performanceHeder.getMeasurementInterval();
167 hql.append(" and a.measurementInterval like '%"+ver+"%'");
168 }else if(null!=performanceHeder.getEventType()) {
169 String ver =performanceHeder.getEventType();
170 hql.append(" and a.eventSourceType like '%"+ver+"%'");
171 }else if(null!=performanceHeder.getCreateTime()) {
172 Date ver =performanceHeder.getCreateTime();
173 hql.append(" and a.createTime like '%"+ver+"%'");
174 }else if(null!=performanceHeder.getUpdateTime()) {
175 Date ver =performanceHeder.getUpdateTime();
176 hql.append(" and a.updateTime like '%"+ver+"%'");
178 logger.info("PerformanceHeaderServiceImpl queryPerformanceHeader: performanceHeder={}", performanceHeder);
179 Session session = sessionFactory.openSession();
180 Transaction tx = session.beginTransaction();
181 Query query = session.createQuery(hql.toString());
182 query.setFirstResult(offset);
183 query.setMaxResults(pageSize);
184 List<PerformanceHeader> list= query.list();
185 page.setPageNo(currentPage);
186 page.setPageSize(pageSize);
187 page.setTotalRecords(allRow);
193 } catch (Exception e) {
194 logger.error("Exception occurred while performing PerformanceHeaderServiceImpl queryPerformanceHeader. Details:" + e.getMessage());