Program Listing for File Address.h

Return to documentation for file (axr.sdk/models/Address.h)

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

#include "axr.sdk/Object.h"

#include <cpprest/details/basic_types.h>

namespace axr {
namespace sdk {
namespace models {

class Address : public Object
{
public:
    Address() : Object() {}
    Address(const Address& value) : Object(value) {}
    Address(Address&& value) : Object(value) {}
    virtual ~Address() {}

    // Object overrides

    virtual Address& SetProperties(const std::map<utility::string_t, Variant>& value) override
    {
        Object::SetProperties(value);
        return *this;
    }

    virtual Address& SetProperties(std::map<utility::string_t, Variant>&& value) override
    {
        Object::SetProperties(value);
        return *this;
    }

    virtual Address& SetProperty(const utility::char_t* name, const Variant& value) override
    {
        Object::SetProperty(name, value);
        return*this;
    }

    virtual Address& SetProperty(const utility::string_t& name, const Variant& value) override
    {
        Object::SetProperty(name, value);
        return*this;
    }

    virtual Address& SetRemoteUrl(const utility::string_t& url) override
    {
        Object::SetRemoteUrl(url);
        return *this;
    }

    static const utility::char_t* ClassName()
    {
        return _XPLATSTR("axr::sdk::models::Address");
    }

    // Address members

    utility::string_t GetAddress1() const;

    Address& SetAddress1(const utility::string_t& value);

    utility::string_t GetAddress2() const;

    Address& SetAddress2(const utility::string_t& value);

    utility::string_t GetCity() const;

    Address& SetCity(const utility::string_t& value);

    utility::string_t GetState() const;

    Address& SetState(const utility::string_t& value);

    utility::string_t GetCountry() const;

    Address& SetCountry(const utility::string_t& value);

    utility::string_t GetZip() const;

    Address& SetZip(const utility::string_t& value);
};

} // namespace models
} // namespace axr
} // namespace sdk