/*
# ==================================================================================
# Copyright (c) 2020 HCL Technologies Limited.
#
# 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.
# ==================================================================================
*/
#ifndef XAPP_MODEL_H
#define XAPP_MODEL_H
#include "ModelBase.h"
#include "SubsequentAction.h"
#include "ActionToBeSetup.h"
#include "SubscriptionResponse.h"
#include "ConfigMetadata.h"
#include "SubscriptionDetail.h"
#include "SubscriptionParams_ClientEndpoint.h"
#include "SubscriptionParams_E2SubscriptionDirectives.h"
#include "SubscriptionParams.h"
#include "SubscriptionInstance.h"
#include "SubscriptionData.h"
#include"SubscriptionDetail.h"
#include"XAppConfig.h"
//moved the implementation of model class into separate CPP file, in order to prevent ODR violation
#endif
