/*
* Author:          Patrick-Christopher Mattulat
* Co-Author:       Claude Sonnet 4.6 (LLM)
* Company:         Lynar Studios
* E-Mail:          webmaster@lynarstudios.com
* Created:         2023-02-10
* Changed:         2026-06-23
*
* */

#include <ls-std/io/section-pair/model/SectionPairRowValue.hpp>
#include <ls-std/core/exception/NotImplementedException.hpp>

using ls::standard::core::type::byte_field;
using ls::standard::core::NotImplementedException;
using ls::standard::io::SectionPairRowEnumType;
using ls::standard::io::SectionPairRowValue;
using std::string;
using std::string_view;

SectionPairRowValue::SectionPairRowValue(const SectionPairRowEnumType &_type) : type(_type)
{}

SectionPairRowValue::~SectionPairRowValue() noexcept = default;

byte_field SectionPairRowValue::marshal()
{
  return byte_field{};
}

void SectionPairRowValue::reserveNewLine(const string_view _reservedNewLine)
{
  this->reservedNewLine = _reservedNewLine;
}

void SectionPairRowValue::unmarshal(const byte_field &_data)
{
  throw NotImplementedException("data (" + _data + ") not used!");
}

string SectionPairRowValue::_getReservedNewLine() const
{
  return this->reservedNewLine;
}

SectionPairRowEnumType SectionPairRowValue::_getType() const
{
  return this->type;
}
