X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=engine-d%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fholmes%2Fengine%2Fdb%2FAlarmInfoDaoService.java;fp=engine-d%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fholmes%2Fengine%2Fdb%2FAlarmInfoDao.java;h=5c3444ef011bd93664547c63b451dc991efc5e45;hb=c4bd70c1f74cd04c441f76de4359e166a089660a;hp=83fa3f6a1371dff960014886a06e1db7e09e0c42;hpb=61da3e3d053548815054384e5e18750e87463ee9;p=holmes%2Fengine-management.git diff --git a/engine-d/src/main/java/org/onap/holmes/engine/db/AlarmInfoDao.java b/engine-d/src/main/java/org/onap/holmes/engine/db/AlarmInfoDaoService.java similarity index 55% rename from engine-d/src/main/java/org/onap/holmes/engine/db/AlarmInfoDao.java rename to engine-d/src/main/java/org/onap/holmes/engine/db/AlarmInfoDaoService.java index 83fa3f6..5c3444e 100644 --- a/engine-d/src/main/java/org/onap/holmes/engine/db/AlarmInfoDao.java +++ b/engine-d/src/main/java/org/onap/holmes/engine/db/AlarmInfoDaoService.java @@ -1,70 +1,62 @@ -/** - * Copyright 2017 ZTE Corporation. - *

- * 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.holmes.engine.db; - -import org.onap.holmes.common.api.entity.AlarmInfo; -import org.onap.holmes.common.exception.AlarmInfoException; -import org.onap.holmes.common.utils.AlarmInfoMapper; -import org.skife.jdbi.v2.sqlobject.*; -import org.skife.jdbi.v2.sqlobject.customizers.RegisterMapper; - -import java.util.List; - -@RegisterMapper(AlarmInfoMapper.class) -public abstract class AlarmInfoDao { - - @GetGeneratedKeys - @SqlUpdate("INSERT INTO ALARM_INFO (EVENTID,EVENTNAME,STARTEPOCHMICROSEC,SOURCEID,SOURCENAME,SEQUENCE,ALARMISCLEARED,ROOTFLAG,LASTEPOCHMICROSEC) VALUES (:eventId,:eventName,:startEpochMicroSec,:sourceId,:sourceName,:sequence,:alarmIsCleared,:rootFlag,:lastEpochMicroSec)") - protected abstract String addAlarm(@BindBean AlarmInfo alarmInfo); - - @SqlQuery("SELECT * FROM ALARM_INFO") - protected abstract List queryAlarm(); - - @SqlUpdate("DELETE FROM ALARM_INFO WHERE EVENTNAME=:eventName AND SOURCEID=:sourceId AND SOURCENAME=:sourceName") - protected abstract int deleteAlarmByAlarmIsCleared(@Bind("eventName") String eventName, - @Bind("sourceId") String sourceId, - @Bind("sourceName") String sourceName); - - public AlarmInfo saveAlarm(AlarmInfo alarmInfo) throws AlarmInfoException { - try { - addAlarm(alarmInfo); - return alarmInfo; - } catch (Exception e) { - throw new AlarmInfoException("Can not access the database. Please contact the administrator for help.", e); - } - } - - public List queryAllAlarm() throws AlarmInfoException { - try { - return queryAlarm(); - } catch (Exception e) { - throw new AlarmInfoException("Can not access the database. Please contact the administrator for help.", e); - } - } - - public void deleteAlarm(AlarmInfo alarmInfo) { - if (alarmInfo.getAlarmIsCleared() != 1) { - return; - } - - String sourceId = alarmInfo.getSourceId(); - String sourceName = alarmInfo.getSourceName(); - String eventName = alarmInfo.getEventName(); - eventName = eventName.substring(0, eventName.lastIndexOf("Cleared")); - - deleteAlarmByAlarmIsCleared(eventName, sourceId, sourceName); - } -} +/** + * Copyright 2021-2022 ZTE Corporation. + *

+ * 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.holmes.engine.db; + +import org.onap.holmes.common.api.entity.AlarmInfo; +import org.onap.holmes.common.exception.AlarmInfoException; +import org.onap.holmes.engine.db.jdbi.AlarmInfoDao; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service + +public class AlarmInfoDaoService { + + @Autowired + private AlarmInfoDao alarmInfoDao; + + public AlarmInfo saveAlarm(AlarmInfo alarmInfo) throws AlarmInfoException { + try { + alarmInfoDao.addAlarm(alarmInfo); + return alarmInfo; + } catch (Exception e) { + throw new AlarmInfoException("Can not access the database. Please contact the administrator for help.", e); + } + } + + public List queryAllAlarm() throws AlarmInfoException { + try { + return alarmInfoDao.queryAlarm(); + } catch (Exception e) { + throw new AlarmInfoException("Can not access the database. Please contact the administrator for help.", e); + } + } + + public void deleteAlarm(AlarmInfo alarmInfo) { + if (alarmInfo.getAlarmIsCleared() != 1) { + return; + } + + String sourceId = alarmInfo.getSourceId(); + String sourceName = alarmInfo.getSourceName(); + String eventName = alarmInfo.getEventName(); + eventName = eventName.substring(0, eventName.lastIndexOf("Cleared")); + + alarmInfoDao.deleteAlarmByAlarmIsCleared(eventName, sourceId, sourceName); + } +}