1 /*!******************************************************************** 2 3 Audacity: A Digital Audio Editor 4 5 @file CurlStringList.cpp 6 @brief Define a RAII wrapper for the curl_slist. 7 8 Dmitry Vedenko 9 **********************************************************************/ 10 11 #include "CurlStringList.h" 12 13 #include <curl/curl.h> 14 15 16 namespace audacity 17 { 18 namespace network_manager 19 { 20 CurlStringList(CurlStringList && rhs)21CurlStringList::CurlStringList (CurlStringList&& rhs) noexcept 22 : mList (rhs.mList) 23 { 24 rhs.mList = nullptr; 25 } 26 ~CurlStringList()27CurlStringList::~CurlStringList () noexcept 28 { 29 curl_slist_free_all (mList); 30 } 31 operator =(CurlStringList && rhs)32CurlStringList& CurlStringList::operator= (CurlStringList&& rhs) noexcept 33 { 34 std::swap (mList, rhs.mList); 35 return *this; 36 } 37 append(const std::string & string)38void CurlStringList::append (const std::string& string) noexcept 39 { 40 mList = curl_slist_append (mList, string.c_str ()); 41 } 42 append(const char * string)43void CurlStringList::append (const char* string) noexcept 44 { 45 mList = curl_slist_append (mList, string); 46 } 47 getCurlList() const48curl_slist* CurlStringList::getCurlList () const noexcept 49 { 50 return mList; 51 } 52 53 } 54 } 55