/**
 * Namf_Communication
 * AMF Communication Service © 2019, 3GPP Organizational Partners (ARIB, ATIS,
 * CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved.
 *
 * The version of the OpenAPI document: 1.1.0.alpha-1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator
 * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
 * the class manually.
 */

#include "Inline_object.h"

namespace oai {
namespace amf {
namespace model {

Inline_object::Inline_object() {
  m_JsonDataIsSet                     = false;
  m_BinaryDataN2InformationIsSet      = false;
  m_BinaryDataN2InformationExt1IsSet  = false;
  m_BinaryDataN2InformationExt2IsSet  = false;
  m_BinaryDataN2InformationExt3IsSet  = false;
  m_BinaryDataN2InformationExt4IsSet  = false;
  m_BinaryDataN2InformationExt5IsSet  = false;
  m_BinaryDataN2InformationExt6IsSet  = false;
  m_BinaryDataN2InformationExt7IsSet  = false;
  m_BinaryDataN2InformationExt8IsSet  = false;
  m_BinaryDataN2InformationExt9IsSet  = false;
  m_BinaryDataN2InformationExt10IsSet = false;
  m_BinaryDataN2InformationExt11IsSet = false;
  m_BinaryDataN2InformationExt12IsSet = false;
  m_BinaryDataN2InformationExt13IsSet = false;
  m_BinaryDataN2InformationExt14IsSet = false;
  m_BinaryDataN2InformationExt15IsSet = false;
  m_BinaryDataN2InformationExt16IsSet = false;
}

Inline_object::~Inline_object() {}

void Inline_object::validate() {
  // TODO: implement validation
}

void to_json(nlohmann::json& j, const Inline_object& o) {
  j = nlohmann::json();
  if (o.jsonDataIsSet()) j["jsonData"] = o.m_JsonData;
  if (o.binaryDataN2InformationIsSet())
    j["binaryDataN2Information"] = o.m_BinaryDataN2Information;
  if (o.binaryDataN2InformationExt1IsSet())
    j["binaryDataN2InformationExt1"] = o.m_BinaryDataN2InformationExt1;
  if (o.binaryDataN2InformationExt2IsSet())
    j["binaryDataN2InformationExt2"] = o.m_BinaryDataN2InformationExt2;
  if (o.binaryDataN2InformationExt3IsSet())
    j["binaryDataN2InformationExt3"] = o.m_BinaryDataN2InformationExt3;
  if (o.binaryDataN2InformationExt4IsSet())
    j["binaryDataN2InformationExt4"] = o.m_BinaryDataN2InformationExt4;
  if (o.binaryDataN2InformationExt5IsSet())
    j["binaryDataN2InformationExt5"] = o.m_BinaryDataN2InformationExt5;
  if (o.binaryDataN2InformationExt6IsSet())
    j["binaryDataN2InformationExt6"] = o.m_BinaryDataN2InformationExt6;
  if (o.binaryDataN2InformationExt7IsSet())
    j["binaryDataN2InformationExt7"] = o.m_BinaryDataN2InformationExt7;
  if (o.binaryDataN2InformationExt8IsSet())
    j["binaryDataN2InformationExt8"] = o.m_BinaryDataN2InformationExt8;
  if (o.binaryDataN2InformationExt9IsSet())
    j["binaryDataN2InformationExt9"] = o.m_BinaryDataN2InformationExt9;
  if (o.binaryDataN2InformationExt10IsSet())
    j["binaryDataN2InformationExt10"] = o.m_BinaryDataN2InformationExt10;
  if (o.binaryDataN2InformationExt11IsSet())
    j["binaryDataN2InformationExt11"] = o.m_BinaryDataN2InformationExt11;
  if (o.binaryDataN2InformationExt12IsSet())
    j["binaryDataN2InformationExt12"] = o.m_BinaryDataN2InformationExt12;
  if (o.binaryDataN2InformationExt13IsSet())
    j["binaryDataN2InformationExt13"] = o.m_BinaryDataN2InformationExt13;
  if (o.binaryDataN2InformationExt14IsSet())
    j["binaryDataN2InformationExt14"] = o.m_BinaryDataN2InformationExt14;
  if (o.binaryDataN2InformationExt15IsSet())
    j["binaryDataN2InformationExt15"] = o.m_BinaryDataN2InformationExt15;
  if (o.binaryDataN2InformationExt16IsSet())
    j["binaryDataN2InformationExt16"] = o.m_BinaryDataN2InformationExt16;
}

void from_json(const nlohmann::json& j, Inline_object& o) {
  if (j.find("jsonData") != j.end()) {
    j.at("jsonData").get_to(o.m_JsonData);
    o.m_JsonDataIsSet = true;
  }
  if (j.find("binaryDataN2Information") != j.end()) {
    j.at("binaryDataN2Information").get_to(o.m_BinaryDataN2Information);
    o.m_BinaryDataN2InformationIsSet = true;
  }
  if (j.find("binaryDataN2InformationExt1") != j.end()) {
    j.at("binaryDataN2InformationExt1").get_to(o.m_BinaryDataN2InformationExt1);
    o.m_BinaryDataN2InformationExt1IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt2") != j.end()) {
    j.at("binaryDataN2InformationExt2").get_to(o.m_BinaryDataN2InformationExt2);
    o.m_BinaryDataN2InformationExt2IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt3") != j.end()) {
    j.at("binaryDataN2InformationExt3").get_to(o.m_BinaryDataN2InformationExt3);
    o.m_BinaryDataN2InformationExt3IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt4") != j.end()) {
    j.at("binaryDataN2InformationExt4").get_to(o.m_BinaryDataN2InformationExt4);
    o.m_BinaryDataN2InformationExt4IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt5") != j.end()) {
    j.at("binaryDataN2InformationExt5").get_to(o.m_BinaryDataN2InformationExt5);
    o.m_BinaryDataN2InformationExt5IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt6") != j.end()) {
    j.at("binaryDataN2InformationExt6").get_to(o.m_BinaryDataN2InformationExt6);
    o.m_BinaryDataN2InformationExt6IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt7") != j.end()) {
    j.at("binaryDataN2InformationExt7").get_to(o.m_BinaryDataN2InformationExt7);
    o.m_BinaryDataN2InformationExt7IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt8") != j.end()) {
    j.at("binaryDataN2InformationExt8").get_to(o.m_BinaryDataN2InformationExt8);
    o.m_BinaryDataN2InformationExt8IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt9") != j.end()) {
    j.at("binaryDataN2InformationExt9").get_to(o.m_BinaryDataN2InformationExt9);
    o.m_BinaryDataN2InformationExt9IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt10") != j.end()) {
    j.at("binaryDataN2InformationExt10")
        .get_to(o.m_BinaryDataN2InformationExt10);
    o.m_BinaryDataN2InformationExt10IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt11") != j.end()) {
    j.at("binaryDataN2InformationExt11")
        .get_to(o.m_BinaryDataN2InformationExt11);
    o.m_BinaryDataN2InformationExt11IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt12") != j.end()) {
    j.at("binaryDataN2InformationExt12")
        .get_to(o.m_BinaryDataN2InformationExt12);
    o.m_BinaryDataN2InformationExt12IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt13") != j.end()) {
    j.at("binaryDataN2InformationExt13")
        .get_to(o.m_BinaryDataN2InformationExt13);
    o.m_BinaryDataN2InformationExt13IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt14") != j.end()) {
    j.at("binaryDataN2InformationExt14")
        .get_to(o.m_BinaryDataN2InformationExt14);
    o.m_BinaryDataN2InformationExt14IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt15") != j.end()) {
    j.at("binaryDataN2InformationExt15")
        .get_to(o.m_BinaryDataN2InformationExt15);
    o.m_BinaryDataN2InformationExt15IsSet = true;
  }
  if (j.find("binaryDataN2InformationExt16") != j.end()) {
    j.at("binaryDataN2InformationExt16")
        .get_to(o.m_BinaryDataN2InformationExt16);
    o.m_BinaryDataN2InformationExt16IsSet = true;
  }
}

UeContextCreateData Inline_object::getJsonData() const {
  return m_JsonData;
}
void Inline_object::setJsonData(UeContextCreateData const& value) {
  m_JsonData      = value;
  m_JsonDataIsSet = true;
}
bool Inline_object::jsonDataIsSet() const {
  return m_JsonDataIsSet;
}
void Inline_object::unsetJsonData() {
  m_JsonDataIsSet = false;
}
std::string Inline_object::getBinaryDataN2Information() const {
  return m_BinaryDataN2Information;
}
void Inline_object::setBinaryDataN2Information(std::string const& value) {
  m_BinaryDataN2Information      = value;
  m_BinaryDataN2InformationIsSet = true;
}
bool Inline_object::binaryDataN2InformationIsSet() const {
  return m_BinaryDataN2InformationIsSet;
}
void Inline_object::unsetBinaryDataN2Information() {
  m_BinaryDataN2InformationIsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt1() const {
  return m_BinaryDataN2InformationExt1;
}
void Inline_object::setBinaryDataN2InformationExt1(std::string const& value) {
  m_BinaryDataN2InformationExt1      = value;
  m_BinaryDataN2InformationExt1IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt1IsSet() const {
  return m_BinaryDataN2InformationExt1IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt1() {
  m_BinaryDataN2InformationExt1IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt2() const {
  return m_BinaryDataN2InformationExt2;
}
void Inline_object::setBinaryDataN2InformationExt2(std::string const& value) {
  m_BinaryDataN2InformationExt2      = value;
  m_BinaryDataN2InformationExt2IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt2IsSet() const {
  return m_BinaryDataN2InformationExt2IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt2() {
  m_BinaryDataN2InformationExt2IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt3() const {
  return m_BinaryDataN2InformationExt3;
}
void Inline_object::setBinaryDataN2InformationExt3(std::string const& value) {
  m_BinaryDataN2InformationExt3      = value;
  m_BinaryDataN2InformationExt3IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt3IsSet() const {
  return m_BinaryDataN2InformationExt3IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt3() {
  m_BinaryDataN2InformationExt3IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt4() const {
  return m_BinaryDataN2InformationExt4;
}
void Inline_object::setBinaryDataN2InformationExt4(std::string const& value) {
  m_BinaryDataN2InformationExt4      = value;
  m_BinaryDataN2InformationExt4IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt4IsSet() const {
  return m_BinaryDataN2InformationExt4IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt4() {
  m_BinaryDataN2InformationExt4IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt5() const {
  return m_BinaryDataN2InformationExt5;
}
void Inline_object::setBinaryDataN2InformationExt5(std::string const& value) {
  m_BinaryDataN2InformationExt5      = value;
  m_BinaryDataN2InformationExt5IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt5IsSet() const {
  return m_BinaryDataN2InformationExt5IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt5() {
  m_BinaryDataN2InformationExt5IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt6() const {
  return m_BinaryDataN2InformationExt6;
}
void Inline_object::setBinaryDataN2InformationExt6(std::string const& value) {
  m_BinaryDataN2InformationExt6      = value;
  m_BinaryDataN2InformationExt6IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt6IsSet() const {
  return m_BinaryDataN2InformationExt6IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt6() {
  m_BinaryDataN2InformationExt6IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt7() const {
  return m_BinaryDataN2InformationExt7;
}
void Inline_object::setBinaryDataN2InformationExt7(std::string const& value) {
  m_BinaryDataN2InformationExt7      = value;
  m_BinaryDataN2InformationExt7IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt7IsSet() const {
  return m_BinaryDataN2InformationExt7IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt7() {
  m_BinaryDataN2InformationExt7IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt8() const {
  return m_BinaryDataN2InformationExt8;
}
void Inline_object::setBinaryDataN2InformationExt8(std::string const& value) {
  m_BinaryDataN2InformationExt8      = value;
  m_BinaryDataN2InformationExt8IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt8IsSet() const {
  return m_BinaryDataN2InformationExt8IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt8() {
  m_BinaryDataN2InformationExt8IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt9() const {
  return m_BinaryDataN2InformationExt9;
}
void Inline_object::setBinaryDataN2InformationExt9(std::string const& value) {
  m_BinaryDataN2InformationExt9      = value;
  m_BinaryDataN2InformationExt9IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt9IsSet() const {
  return m_BinaryDataN2InformationExt9IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt9() {
  m_BinaryDataN2InformationExt9IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt10() const {
  return m_BinaryDataN2InformationExt10;
}
void Inline_object::setBinaryDataN2InformationExt10(std::string const& value) {
  m_BinaryDataN2InformationExt10      = value;
  m_BinaryDataN2InformationExt10IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt10IsSet() const {
  return m_BinaryDataN2InformationExt10IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt10() {
  m_BinaryDataN2InformationExt10IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt11() const {
  return m_BinaryDataN2InformationExt11;
}
void Inline_object::setBinaryDataN2InformationExt11(std::string const& value) {
  m_BinaryDataN2InformationExt11      = value;
  m_BinaryDataN2InformationExt11IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt11IsSet() const {
  return m_BinaryDataN2InformationExt11IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt11() {
  m_BinaryDataN2InformationExt11IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt12() const {
  return m_BinaryDataN2InformationExt12;
}
void Inline_object::setBinaryDataN2InformationExt12(std::string const& value) {
  m_BinaryDataN2InformationExt12      = value;
  m_BinaryDataN2InformationExt12IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt12IsSet() const {
  return m_BinaryDataN2InformationExt12IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt12() {
  m_BinaryDataN2InformationExt12IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt13() const {
  return m_BinaryDataN2InformationExt13;
}
void Inline_object::setBinaryDataN2InformationExt13(std::string const& value) {
  m_BinaryDataN2InformationExt13      = value;
  m_BinaryDataN2InformationExt13IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt13IsSet() const {
  return m_BinaryDataN2InformationExt13IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt13() {
  m_BinaryDataN2InformationExt13IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt14() const {
  return m_BinaryDataN2InformationExt14;
}
void Inline_object::setBinaryDataN2InformationExt14(std::string const& value) {
  m_BinaryDataN2InformationExt14      = value;
  m_BinaryDataN2InformationExt14IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt14IsSet() const {
  return m_BinaryDataN2InformationExt14IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt14() {
  m_BinaryDataN2InformationExt14IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt15() const {
  return m_BinaryDataN2InformationExt15;
}
void Inline_object::setBinaryDataN2InformationExt15(std::string const& value) {
  m_BinaryDataN2InformationExt15      = value;
  m_BinaryDataN2InformationExt15IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt15IsSet() const {
  return m_BinaryDataN2InformationExt15IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt15() {
  m_BinaryDataN2InformationExt15IsSet = false;
}
std::string Inline_object::getBinaryDataN2InformationExt16() const {
  return m_BinaryDataN2InformationExt16;
}
void Inline_object::setBinaryDataN2InformationExt16(std::string const& value) {
  m_BinaryDataN2InformationExt16      = value;
  m_BinaryDataN2InformationExt16IsSet = true;
}
bool Inline_object::binaryDataN2InformationExt16IsSet() const {
  return m_BinaryDataN2InformationExt16IsSet;
}
void Inline_object::unsetBinaryDataN2InformationExt16() {
  m_BinaryDataN2InformationExt16IsSet = false;
}

}  // namespace model
}  // namespace amf
}  // namespace oai
