e15aba5b24bd771dfcc9b98ee70e3b79bc7515ca
[ccsdk/features.git] /
1 /*******************************************************************************
2  * ============LICENSE_START========================================================================
3  * ONAP : ccsdk feature sdnr wt
4  * =================================================================================================
5  * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6  * =================================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8  * in compliance with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software distributed under the License
13  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14  * or implied. See the License for the specific language governing permissions and limitations under
15  * the License.
16  * ============LICENSE_END==========================================================================
17  ******************************************************************************/
18 package org.onap.ccsdk.features.sdnr.wt.devicemanager.impl.database.types;
19
20 import org.elasticsearch.index.query.QueryBuilder;
21 import org.elasticsearch.index.query.RangeQueryBuilder;
22 import org.onap.ccsdk.features.sdnr.wt.devicemanager.base.database.EsObject;
23 import org.onap.ccsdk.features.sdnr.wt.devicemanager.impl.xml.ProblemNotificationXml;
24
25 /**
26  *
27  * Event from Network to be recorded in the database
28  *
29  */
30
31 public class EsFaultLog extends EsObject {
32
33     public static final String ESDATATYPENAME = "faultlog";
34
35     private static final String FAULTLOG_FIELD_TIMESTAMP = "fault.timeStamp";
36
37     private ProblemNotificationXml fault;
38
39     public ProblemNotificationXml getProblem() {
40         return fault;
41     }
42
43     public void setProblem(ProblemNotificationXml fault) {
44         this.fault = fault;
45     }
46
47     /**
48      * Get older Elements
49      * @param netconfTimeStamp to identify query elements older than this timestamp.
50      * @return QueryBuilder for related elements
51      */
52     public static QueryBuilder getQueryForTimeStamp(String netconfTimeStamp) {
53         return new RangeQueryBuilder(FAULTLOG_FIELD_TIMESTAMP).lt(netconfTimeStamp);
54     }
55
56  }