LicenseSpring C++ SDK
Easily add Software Licensing to your application
Customer.h
Go to the documentation of this file.
1 #ifndef LS_CUSTOMER_H
2 #define LS_CUSTOMER_H
3 
4 #ifdef _MSC_VER
5 #pragma once
6 #pragma warning(push)
7 #pragma warning(disable : 4251)
8 #endif
9 
10 #include <memory>
11 #include <string>
12 #include "APIDef.h"
13 
14 namespace LicenseSpring
15 {
18 {
19 public:
20  using ptr_t = std::shared_ptr<Customer>;
21 
23  Customer() = default;
24 
28  Customer(const std::string &email);
29 
32  const std::string &email() const;
33 
36  void setEmail(const std::string &email);
37 
40  const std::string &firstName() const;
41 
44  void setFirstName(const std::string &firstName);
45 
48  const std::string &lastName() const;
49 
52  void setLastName(const std::string &lastName);
53 
56  const std::string &company() const;
57 
60  void setCompany(const std::string &company);
61 
64  const std::string &phone() const;
65 
68  void setPhone(const std::string &phone);
69 
72  const std::string &address() const;
73 
76  void setAddress(const std::string &address);
77 
80  const std::string &city() const;
81 
84  void setCity(const std::string &city);
85 
88  const std::string &state() const;
89 
92  void setState(const std::string &state);
93 
96  const std::string &country() const;
97 
100  void setCountry(const std::string &country);
101 
104  const std::string &postcode() const;
105 
108  void setPostcode(const std::string &postcode);
109 
112  const std::string &reference() const;
113 
116  void setReference(const std::string &reference);
117 
120  const std::string &metadata() const;
121 
124  void setMetadata(const std::string &metadata);
125 
126 private:
127  std::string m_email;
128  std::string m_firstName;
129  std::string m_lastName;
130  std::string m_company;
131  std::string m_phone;
132  std::string m_address;
133  std::string m_city;
134  std::string m_state;
135  std::string m_country;
136  std::string m_postcode;
137  std::string m_reference;
138  std::string m_metadata;
139 };
140 } // namespace LicenseSpring
141 
142 #ifdef _MSC_VER
143 #pragma warning(pop)
144 #endif
145 
146 #endif // LS_CUSTOMER_H
Class that encapsulates information about a customer.
Definition: Customer.h:17
std::shared_ptr< Customer > ptr_t
Definition: Customer.h:20
#define LS_API
Definition: APIDef.h:23