/* This file is part of mastodonpp. * Copyright © 2020 tastytea * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, version 3. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ #include "connection.hpp" namespace mastodonpp { using std::holds_alternative; Connection::Connection(Instance &instance) : _instance{instance} , _baseuri{instance.get_baseuri()} {} answer_type Connection::get(const endpoint_variant &endpoint, const parametermap ¶meters) { const string uri{[&] { if (holds_alternative(endpoint)) { return string(_baseuri).append( API{std::get(endpoint)}.to_string_view()); } return string(std::get(endpoint)); }()}; return make_request(http_method::GET, uri, parameters); } } // namespace mastodonpp