Commit ac12ac74 authored by Yann Garcia's avatar Yann Garcia
Browse files

Add TPs for Adaptor; Change object field into object_ (TTCN-3 keyword); Apply...

Add TPs for Adaptor; Change object field into object_ (TTCN-3 keyword); Apply TITAN workaround for XML code
parent 437ac959
Loading
Loading
Loading
Loading
+213 −114
Original line number Original line Diff line number Diff line
@@ -62,142 +62,241 @@ int xml_codec::encode(const LibHttp__XmlMessageBodyTypes::XmlBody& body, OCTETST
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround");
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround");
      std::string s(static_cast<const unsigned char*>(data), data.lengthof() + static_cast<const unsigned char*>(data));
      std::string s(static_cast<const unsigned char*>(data), data.lengthof() + static_cast<const unsigned char*>(data));
      patch_agent_derivations(s);
      patch_agent_derivations(s);
      loggers::get_instance().log("xml_codec::encode: After patch_agent_derivations: '%s'", s.c_str());
      //loggers::get_instance().log("xml_codec::encode: After patch_agent_derivations: '%s'", s.c_str());
      /*size_t idx = 0;
      patch_location_derivations(s);
      std::string search(" xsi:type=\"agent:Agent\"");
      //loggers::get_instance().log("xml_codec::encode: After patch_location_derivations: '%s'", s.c_str());
      std::string replace(" xsi:type=\"ns6:Agent\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      patch_event_derivations(s);
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      //loggers::get_instance().log("xml_codec::encode: After patch_event_derivations: '%s'", s.c_str());
      patch_document_derivations(s);
      //loggers::get_instance().log("xml_codec::encode: After patch_document_derivations: '%s'", s.c_str());

      data = OCTETSTRING(s.length(), (const unsigned char*)s.c_str());
    }

    // Add header
    CHARSTRING h("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\" ?>\n");
    data = char2oct(h) + data;
  }

  loggers::get_instance().log_msg("xml_codec::encode: After encoding: ", data);

  loggers::get_instance().log("<<< xml_codec::encode");
  return 0;
}

int xml_codec::patch_agent_derivations(std::string& s) {
  std::string search;
  std::string replace;
  size_t idx;
  if (s.find(" xsi:type=\"agent:Agent") != std::string::npos) {
    search.assign(" xsi:type=\"agent:Agent\"");
    replace.assign(" xsi:type=\"ns6:Agent\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"agent:Organization") != std::string::npos) {
    search.assign(" xsi:type=\"agent:Organization\"");
    search.assign(" xsi:type=\"agent:Organization\"");
    replace.assign(" xsi:type=\"ns6:Organization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    replace.assign(" xsi:type=\"ns6:Organization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      idx = 0;
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"agent:FormalOrganization") != std::string::npos) {
    search.assign(" xsi:type=\"agent:FormalOrganization\"");
    search.assign(" xsi:type=\"agent:FormalOrganization\"");
    replace.assign(" xsi:type=\"ns6:FormalOrganization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    replace.assign(" xsi:type=\"ns6:FormalOrganization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      idx = 0;
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"agent:OrganizationalCollaboration") != std::string::npos) {
    search.assign(" xsi:type=\"agent:OrganizationalCollaboration\"");
    search.assign(" xsi:type=\"agent:OrganizationalCollaboration\"");
    replace.assign(" xsi:type=\"ns6:OrganizationalCollaboration\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    replace.assign(" xsi:type=\"ns6:OrganizationalCollaboration\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      idx = 0;
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"agent:OrganizationalUnit") != std::string::npos) {
    search.assign(" xsi:type=\"agent:OrganizationalUnit\"");
    search.assign(" xsi:type=\"agent:OrganizationalUnit\"");
    replace.assign(" xsi:type=\"ns6:OrganizationalUnit\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    replace.assign(" xsi:type=\"ns6:OrganizationalUnit\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      idx = 0;
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"agent:Person") != std::string::npos) {
    search.assign(" xsi:type=\"agent:Person\"");
    search.assign(" xsi:type=\"agent:Person\"");
    replace.assign(" xsi:type=\"ns6:Person\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    replace.assign(" xsi:type=\"ns6:Person\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      idx = 0;
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"agent:PortOrganization") != std::string::npos) {
    search.assign(" xsi:type=\"agent:PortOrganization\"");
    search.assign(" xsi:type=\"agent:PortOrganization\"");
    replace.assign(" xsi:type=\"ns6:PortOrganization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
    replace.assign(" xsi:type=\"ns6:PortOrganization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
      idx = 0;
    //loggers::get_instance().log("xml_codec::patch_agent_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
      loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
      }*/ // End of 'while' statement
    } // End of 'while' statement

      data = OCTETSTRING(s.length(), (const unsigned char*)s.c_str());
  }
  }


    // Add header
  //loggers::get_instance().log("xml_codec::patch_agent_derivations: s: '%s'", s.c_str());
    CHARSTRING h("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\" ?>\n");
  return 0;
    data = char2oct(h) + data;
}
}


  loggers::get_instance().log_msg("xml_codec::encode: After encoding: ", data);
int xml_codec::patch_location_derivations(std::string& s) {
  std::string search;
  std::string replace;
  size_t idx;
  if (s.find(" xsi:type=\"location:Location") != std::string::npos) {
    search.assign(" xsi:type=\"location:Location\"");
    replace.assign(" xsi:type=\"ns6:Location\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/location/\"");
    //loggers::get_instance().log("xml_codec::patch_location_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"location:NamedLocation") != std::string::npos) {
    search.assign(" xsi:type=\"location:NamedLocation\"");
    replace.assign(" xsi:type=\"ns6:NamedLocation\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/location/\"");
    //loggers::get_instance().log("xml_codec::patch_location_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"location:PortFacilityLocation") != std::string::npos) {
    search.assign(" xsi:type=\"location:PortFacilityLocation\"");
    replace.assign(" xsi:type=\"ns6:PortFacilityLocation\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/location/\"");
    //loggers::get_instance().log("xml_codec::patch_location_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"location:PortLocation") != std::string::npos) {
    search.assign(" xsi:type=\"location:PortLocation\"");
    replace.assign(" xsi:type=\"ns6:PortLocation\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/location/\"");
    //loggers::get_instance().log("xml_codec::patch_location_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }


  loggers::get_instance().log("<<< xml_codec::encode");
  //loggers::get_instance().log("xml_codec::patch_location_derivations: s: '%s'", s.c_str());
  return 0;
  return 0;
}
}


int xml_codec::patch_agent_derivations(std::string& s) {
int xml_codec::patch_event_derivations(std::string& s) {
  size_t idx = 0;
  std::string search;
  std::string search(" xsi:type=\"agent:Agent\"");
  std::string replace;
  std::string replace(" xsi:type=\"ns6:Agent\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  size_t idx;
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
  if (s.find(" xsi:type=\"event:Event") != std::string::npos) {
    search.assign(" xsi:type=\"event:Event\"");
    replace.assign(" xsi:type=\"ns6:Event\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  search.assign(" xsi:type=\"agent:Organization\"");
  }
  replace.assign(" xsi:type=\"ns6:Organization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  if (s.find(" xsi:type=\"event:Action") != std::string::npos) {
  idx = 0;
    search.assign(" xsi:type=\"event:Action\"");
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    replace.assign(" xsi:type=\"ns6:Action\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  search.assign(" xsi:type=\"agent:FormalOrganization\"");
  }
  replace.assign(" xsi:type=\"ns6:FormalOrganization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  if (s.find(" xsi:type=\"event:Anomaly") != std::string::npos) {
  idx = 0;
    search.assign(" xsi:type=\"event:Anomaly\"");
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    replace.assign(" xsi:type=\"ns6:Anomaly\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  search.assign(" xsi:type=\"agent:OrganizationalCollaboration\"");
  }
  replace.assign(" xsi:type=\"ns6:OrganizationalCollaboration\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  if (s.find(" xsi:type=\"event:CrisisIncident") != std::string::npos) {
  idx = 0;
    search.assign(" xsi:type=\"event:CrisisIncident\"");
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    replace.assign(" xsi:type=\"ns6:CrisisIncident\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  search.assign(" xsi:type=\"agent:OrganizationalUnit\"");
  }
  replace.assign(" xsi:type=\"ns6:OrganizationalUnit\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  if (s.find(" xsi:type=\"event:Incident") != std::string::npos) {
  idx = 0;
    search.assign(" xsi:type=\"event:Incident\"");
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    replace.assign(" xsi:type=\"ns6:Incident\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  search.assign(" xsi:type=\"agent:Person\"");
  }
  replace.assign(" xsi:type=\"ns6:Person\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  if (s.find(" xsi:type=\"event:IrregularMigrationIncident") != std::string::npos) {
  idx = 0;
    search.assign(" xsi:type=\"event:IrregularMigrationIncident\"");
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    replace.assign(" xsi:type=\"ns6:IrregularMigrationIncident\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement
  search.assign(" xsi:type=\"agent:PortOrganization\"");
  }
  replace.assign(" xsi:type=\"ns6:PortOrganization\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/\"");
  if (s.find(" xsi:type=\"event:LawInfringementIncident") != std::string::npos) {
  idx = 0;
    search.assign(" xsi:type=\"event:LawInfringementIncident\"");
  loggers::get_instance().log("xml_codec::encode: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    replace.assign(" xsi:type=\"ns6:LawInfringementIncident\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"event:MaritimeSafetyIncident") != std::string::npos) {
    search.assign(" xsi:type=\"event:MaritimeSafetyIncident\"");
    replace.assign(" xsi:type=\"ns6:MaritimeSafetyIncident\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"event:Movement") != std::string::npos) {
    search.assign(" xsi:type=\"event:Movement\"");
    replace.assign(" xsi:type=\"ns6:Movement\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      idx += replace.length();
    } // End of 'while' statement
  }
  if (s.find(" xsi:type=\"event:PollutionIncident") != std::string::npos) {
    search.assign(" xsi:type=\"event:PollutionIncident\"");
    replace.assign(" xsi:type=\"ns6:PollutionIncident\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/event/\"");
    //loggers::get_instance().log("xml_codec::patch_event_derivations: Apply TITAN workaround: %s --> %s", search.c_str(), replace.c_str());
    while ((idx = s.find(search)) != std::string::npos) {
    while ((idx = s.find(search)) != std::string::npos) {
      s.replace(idx, search.length(), replace);
      s.replace(idx, search.length(), replace);
      idx += replace.length();
      idx += replace.length();
    } // End of 'while' statement
    } // End of 'while' statement

  loggers::get_instance().log("xml_codec::patch_agent_derivations: s: '%s'", s.c_str());
  return 0;
  }
  }


int xml_codec::patch_location_derivations(std::string& s) {
  //loggers::get_instance().log("xml_codec::patch_event_derivations: s: '%s'", s.c_str());

  return 0;
  return 0;
}
}


+3 −2
Original line number Original line Diff line number Diff line
@@ -13,12 +13,13 @@ namespace LibHttp__XmlMessageBodyTypes {


class xml_codec: public codec_gen<LibHttp__XmlMessageBodyTypes::XmlBody, LibHttp__XmlMessageBodyTypes::XmlBody>
class xml_codec: public codec_gen<LibHttp__XmlMessageBodyTypes::XmlBody, LibHttp__XmlMessageBodyTypes::XmlBody>
{
{
  //TITAN issue: variant "namespace for 'agent/organization' seems buggy: <Agent xsi:type="agent:Organization">
  //TITAN issue: variant "namespace for 'agent/organization' seems buggy: <Agent xsi:type="agent:Organization"> instead of xsi:type=\"ns6:Agent\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/
  int patch_agent_derivations(std::string& s);
  int patch_agent_derivations(std::string& s);
  int patch_location_derivations(std::string& s);
  int patch_location_derivations(std::string& s);
  int patch_event_derivations(std::string& s);
  int patch_object_derivations(std::string& s);
  int patch_object_derivations(std::string& s);
  int patch_document_derivations(std::string& s);
  int patch_document_derivations(std::string& s);
  //TITAN issue: variant "namespace for 'agent/organization' seems buggy: <Agent xsi:type="agent:Organization">
  //TITAN issue: variant "namespace for 'agent/organization' seems buggy: <Agent xsi:type="agent:Organization"> instead of xsi:type=\"ns6:Agent\" xmlns:ns6=\"http://www.cise.eu/datamodel/v1/entity/organization/
public:
public:
  explicit xml_codec() : codec_gen<LibHttp__XmlMessageBodyTypes::XmlBody, LibHttp__XmlMessageBodyTypes::XmlBody>() { };
  explicit xml_codec() : codec_gen<LibHttp__XmlMessageBodyTypes::XmlBody, LibHttp__XmlMessageBodyTypes::XmlBody>() { };
  virtual ~xml_codec() { };
  virtual ~xml_codec() { };
+819 −23

File changed.

Preview size limit exceeded, changes collapsed.

+164 −118

File changed.

Preview size limit exceeded, changes collapsed.

+2 −2
Original line number Original line Diff line number Diff line
@@ -199,7 +199,7 @@ type record Action
		SourceType sourceType optional
		SourceType sourceType optional
	} locationRel_list,
	} locationRel_list,
	record of record {
	record of record {
		Object_derivations object optional,
		Object_derivations object_ optional,
		http_www_cise_eu_datamodel_v1_entity_event.ObjectRoleInEventType objectRole optional,
		http_www_cise_eu_datamodel_v1_entity_event.ObjectRoleInEventType objectRole optional,
		Period involvementPeriod optional
		Period involvementPeriod optional
	} involvedObjectRel_list,
	} involvedObjectRel_list,
@@ -242,7 +242,7 @@ with {
  variant (locationRel_list[-].sourceType) "name as capitalized";
  variant (locationRel_list[-].sourceType) "name as capitalized";
  variant (involvedObjectRel_list) "untagged";
  variant (involvedObjectRel_list) "untagged";
  variant (involvedObjectRel_list[-]) "name as 'InvolvedObjectRel'";
  variant (involvedObjectRel_list[-]) "name as 'InvolvedObjectRel'";
  variant (involvedObjectRel_list[-].object) "name as capitalized";
  variant (involvedObjectRel_list[-].object_) "name as 'Object'";
  variant (involvedObjectRel_list[-].objectRole) "name as capitalized";
  variant (involvedObjectRel_list[-].objectRole) "name as capitalized";
  variant (involvedObjectRel_list[-].involvementPeriod) "name as capitalized";
  variant (involvedObjectRel_list[-].involvementPeriod) "name as capitalized";
  variant (documentRel_list) "untagged";
  variant (documentRel_list) "untagged";
Loading