]> git.proxmox.com Git - ceph.git/blob - ceph/src/jaegertracing/jaeger-client-cpp/src/jaegertracing/net/http/Error.h
buildsys: switch source download to quincy
[ceph.git] / ceph / src / jaegertracing / jaeger-client-cpp / src / jaegertracing / net / http / Error.h
1 /*
2 * Copyright (c) 2017 Uber Technologies, Inc.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17 #ifndef JAEGERTRACING_NET_HTTP_ERROR_H
18 #define JAEGERTRACING_NET_HTTP_ERROR_H
19
20 #include <sstream>
21 #include <stdexcept>
22 #include <string>
23
24 namespace jaegertracing {
25 namespace net {
26 namespace http {
27
28 class ParseError : public std::invalid_argument {
29 public:
30 using invalid_argument::invalid_argument;
31
32 static ParseError make(const std::string& expected,
33 const std::string& actual)
34 {
35 std::ostringstream oss;
36 oss << "Parse error, expected " << expected << ", encountered \""
37 << actual << '"';
38 return ParseError(oss.str());
39 }
40 };
41
42 } // namespace http
43 } // namespace net
44 } // namespace jaegertracing
45
46 #endif // JAEGERTRACING_NET_HTTP_ERROR_H