aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/org/onap/dcae/restapi/EventValidator.java
diff options
context:
space:
mode:
authorMichal Banka <michal.banka@nokia.com>2020-08-04 14:58:25 +0200
committerEdyta Krukowska <edyta.krukowska@nokia.com>2020-08-19 15:07:14 +0200
commita0ba464faeb2e979d20758bc1091143108355974 (patch)
tree944b0f588daace51449b50ae94816f33a6a3c62d /src/main/java/org/onap/dcae/restapi/EventValidator.java
parentf1ea637a60bace906db5619d71a914ad601e9478 (diff)
Add implementation of stndDefined fields validation1.7.3
Added implementation of stndDefined fields from incoming events. Validation is performed using external-schema-manager tool from DCAE SDK. StndDefined fields schemas are stored in etc/externalRepo directory. Additional stndDefined related properties has been added to collector.properties. VES version has been set to 1.7.3. Issue-ID: DCAEGEN2-2254 Signed-off-by: Edyta Krukowska <edyta.krukowska@nokia.com> Signed-off-by: Michal Banka <michal.banka@nokia.com> Change-Id: Iedaa3622b1d527f6794822c8867b9dfd1860bb8f
Diffstat (limited to 'src/main/java/org/onap/dcae/restapi/EventValidator.java')
-rw-r--r--src/main/java/org/onap/dcae/restapi/EventValidator.java73
1 files changed, 0 insertions, 73 deletions
diff --git a/src/main/java/org/onap/dcae/restapi/EventValidator.java b/src/main/java/org/onap/dcae/restapi/EventValidator.java
deleted file mode 100644
index 0eb0967a..00000000
--- a/src/main/java/org/onap/dcae/restapi/EventValidator.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * ============LICENSE_START=======================================================
- * PROJECT
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * Copyright (C) 2020 Nokia. 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.
- * ============LICENSE_END=========================================================
- */
-package org.onap.dcae.restapi;
-
-import com.networknt.schema.JsonSchema;
-import org.onap.dcae.ApplicationSettings;
-import org.onap.dcae.common.model.VesEvent;
-
-/**
- * This class is using ApplicationSetting and SchemaValidator to validate VES event.
- *
- * @author Zebek
- */
-public class EventValidator {
-
- private final SchemaValidator schemaValidator;
- private final ApplicationSettings applicationSettings;
-
- public EventValidator(ApplicationSettings applicationSettings) {
- this(applicationSettings, new SchemaValidator());
- }
-
- EventValidator(ApplicationSettings applicationSettings, SchemaValidator schemaValidator) {
- this.applicationSettings = applicationSettings;
- this.schemaValidator = schemaValidator;
- }
-
- /**
- * This method is validating given event using schema adn throws exception if event is not valid
- *
- * @param vesEvent event that will be validate
- * @param type expected type of event
- * @param version json schema version that will be used
- * @throws EventValidatorException when event is not valid or have wrong type
- */
- public void validate(VesEvent vesEvent, String type, String version) throws EventValidatorException {
- if (applicationSettings.eventSchemaValidationEnabled()) {
- doValidation(vesEvent, type, version);
- }
- }
-
- private void doValidation(VesEvent vesEvent, String type, String version) throws EventValidatorException {
- if (vesEvent.hasType(type)) {
- if (!isEventMatchToSchema(vesEvent, applicationSettings.jsonSchema(version))) {
- throw new EventValidatorException(ApiException.SCHEMA_VALIDATION_FAILED);
- }
- } else {
- throw new EventValidatorException(ApiException.INVALID_JSON_INPUT);
- }
- }
-
- private boolean isEventMatchToSchema(VesEvent vesEvent, JsonSchema schema) {
- return schemaValidator.conformsToSchema(vesEvent.asJsonObject(), schema);
- }
-}