Ejemplo n.º 1
0
bool PlayingCards::JsonDeserialization(const std::string &sJsonPlayingCards, std::string &sErrorMessage)
{
    Json::Reader jReader;
    Json::Value  jCards;
    Json::Value  jCard;
    Card cCard;

    if (jReader.parse(sJsonPlayingCards, jCards, false))
    {
        m_vCards.clear();

        for (Json::ValueIterator it = jCards.begin(); it != jCards.end(); ++it)
        {
            jCard = (*it);
            if (cCard.JsonDeserialization(jCard.toStyledString(), sErrorMessage))
            {
                m_vCards.push_back(cCard);
            }
            else
            {
                return false;
            }
        }

        return true;
    }
    else
    {
        sErrorMessage = jReader.getFormattedErrorMessages();
        return false;
    }
}
Ejemplo n.º 2
0
bool PlayingCards::JsonDeserialization(const Json::Value jCards, std::string &sErrorMessage)
{
    Json::Value  jCard;
    Card cCard;

    m_vCards.clear();

    for (Json::ValueConstIterator it = jCards.begin(); it != jCards.end(); ++it)
    {
        jCard = (*it);
        if (cCard.JsonDeserialization(jCard.toStyledString(), sErrorMessage))
        {
            m_vCards.push_back(cCard);
        }
        else
        {
            return false;
        }
    }

    return true;
}