tdlight/tdutils/td/utils/HttpUrl.h
levlam 824735dc8e Add get_url_query_file_name function.
GitOrigin-RevId: 24d19f870f6a8e96bc727baa0dfeaa6a99d66931
2018-02-20 01:54:50 +03:00

38 lines
956 B
C++

//
// Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2018
//
// Distributed under the Boost Software License, Version 1.0. (See accompanying
// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
//
#pragma once
#include "td/utils/common.h"
#include "td/utils/Slice.h"
#include "td/utils/Status.h"
#include "td/utils/StringBuilder.h"
namespace td {
class HttpUrl {
public:
enum class Protocol { HTTP, HTTPS } protocol_;
string userinfo_;
string host_;
bool is_ipv6;
int specified_port_;
int port_;
string query_;
string get_url() const;
};
// TODO Slice instead of MutableSlice
Result<HttpUrl> parse_url(MutableSlice url,
HttpUrl::Protocol default_protocol = HttpUrl::Protocol::HTTP) TD_WARN_UNUSED_RESULT;
StringBuilder &operator<<(StringBuilder &sb, const HttpUrl &url);
string get_url_query_file_name(const string &query);
} // namespace td