Program Listing for File MultipartFormData.h
↰ Return to documentation for file (axr.sdk/net/MultipartFormData.h
)
// Copyright (C) AcceleratXR, Inc. All rights reserved.
//
// Author: Jean-Philippe Steinmetz <info@acceleratxr.com>
//
// NOTE: This file was auto generated by the AcceleratXR code generator.
// https://gitlab.com/AcceleratXR/Core/code_generator.git
#pragma once
#include "../Exception.h"
#include "IHttpBody.h"
#include "HttpContent.h"
#include <vector>
#include <map>
#include <memory>
#include <cpprest/details/basic_types.h>
namespace axr {
namespace sdk {
namespace net {
class MultipartFormData
: public IHttpBody
{
public:
MultipartFormData();
MultipartFormData(const utility::string_t& boundary);
virtual ~MultipartFormData();
virtual void Add(std::shared_ptr<HttpContent> content);
virtual utility::string_t GetBoundary();
virtual std::shared_ptr<HttpContent> GetContent(const utility::string_t& name) const;
virtual bool HasContent(const utility::string_t& name) const;
virtual void WriteTo(std::ostream& stream) override;
virtual void WriteTo(json::StringWriter& target) override
{
throw Exception(500, _XPLATSTR("Not supported."));
}
protected:
std::vector<std::shared_ptr<HttpContent>> m_Contents;
utility::string_t m_Boundary;
std::map<utility::string_t, std::shared_ptr<HttpContent>> m_ContentLookup;
};
} // namespace net
} // namespace axr
} // namespace sdk