blob: 248d38e8893f8049b5a81cc19168d2c19d8142d5 [file] [log] [blame]
// Copyright 2018 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "status.h"
namespace bt {
// static
std::string ProtocolErrorTraits<sdp::ErrorCode>::ToString(sdp::ErrorCode ecode) {
return fxl::StringPrintf("%s (SDP %#.2x)", bt::sdp::ErrorCodeToString(ecode).c_str(),
static_cast<unsigned int>(ecode));
}
namespace sdp {
std::string ErrorCodeToString(ErrorCode code) {
switch (code) {
case ErrorCode::kReserved:
return "reserved";
case ErrorCode::kUnsupportedVersion:
return "unsupported version";
case ErrorCode::kInvalidRecordHandle:
return "invalid record handle";
case ErrorCode::kInvalidRequestSyntax:
return "invalid request syntax";
case ErrorCode::kInvalidSize:
return "invalid size";
case ErrorCode::kInvalidContinuationState:
return "invalid continuation state";
case ErrorCode::kInsufficientResources:
return "insufficient resources";
default:
break;
}
return "unknown status";
}
using Base = bt::Status<ErrorCode>;
Status::Status(HostError ecode) : Base(ecode) {}
Status::Status(ErrorCode proto_code) : Base(proto_code) {}
} // namespace sdp
} // namespace bt