コード例 #1
0
ファイル: Exception.cpp プロジェクト: eaglewei/panda-svrkit
    std::string Exception::getErrorString() const
    {
        if (mError.getErrorId() >= RcfError_User)
        {
            std::ostringstream os;
            os << "Non-RCF error (" << mError.getErrorId() << ")";
            std::string w = getWhat();
            if (!w.empty())
            {
                os << ": " << w;
            }
            else
            {
                os << ".";
            }
            return os.str();
        }
        else if (mSubSystem == RcfSubsystem_Os)
        {
            std::ostringstream os;
            os << mError.getErrorString();

            if (mSubSystem == RcfSubsystem_Os)
            {
                os << " OS: " << mSubSystemError << " - " << getOsErrorString(mSubSystemError);
            }
            return os.str();
        }
        else
        {
            return mError.getErrorString();
        }
    }
コード例 #2
0
ファイル: XBase.cpp プロジェクト: axelson/synergy-plus
const char*
XBase::what() const
{
	if (m_what.empty()) {
		m_what = getWhat();
	}
	return m_what.c_str();
}
コード例 #3
0
ファイル: type_changelog.cpp プロジェクト: acmorrow/mongo
BSONObj ChangeLogType::toBSON() const {
    BSONObjBuilder builder;

    if (_changeId)
        builder.append(changeId.name(), getChangeId());
    if (_server)
        builder.append(server.name(), getServer());
    if (_shard)
        builder.append(shard.name(), getShard());
    if (_clientAddr)
        builder.append(clientAddr.name(), getClientAddr());
    if (_time)
        builder.append(time.name(), getTime());
    if (_what)
        builder.append(what.name(), getWhat());
    if (_ns)
        builder.append(ns.name(), getNS());
    if (_details)
        builder.append(details.name(), getDetails());

    return builder.obj();
}