Program Listing for File VariantBody.h

Return to documentation for file (axr.sdk/net/VariantBody.h)

// Copyright (C) AcceleratXR, Inc. All rights reserved.
#pragma once

#include "IHttpBody.h"

#include "../Exception.h"
#include "../Variant.h"
#include "../Object.h"

#include <any>

namespace axr {
namespace sdk {
namespace net {

class VariantBody
    : public IHttpBody
{
public:
    VariantBody(const Variant& value) : m_Variant(value) {}
    virtual ~VariantBody() {}

    virtual void WriteTo(std::ostream& stream) override
    {
        throw Exception(500, _XPLATSTR("Not implemented"));
    }

    virtual void WriteTo(json::StringWriter& target) override;

protected:
    Variant m_Variant;
};

} // namespace net
} // namespace axr
} // namespace sdk