예제 #1
0
파일: testcase.cpp 프로젝트: lawarner/aft
bool TestCase::serialize(base::Blob& blob)
{
    if (!base::TObject::serialize(blob))
    {
        return false;
    }

    base::StructuredData sd("TestCase", blob.getString());

    sd.addArray("commands");

    base::TObjectTree::Children& cmds = children_->getChildren();
    base::TObjectTree::Children::iterator it;
    for (it = cmds.begin(); it != cmds.end(); ++it)
    {
        TObject* tObj = (*it)->getValue();
        if (tObj)
        {
            base::Blob cmdBlob("");
            tObj->serialize(cmdBlob);
            base::StructuredData sdcmd("command", cmdBlob.getString());
            sd.add("commands.", sdcmd);
        }
    }

    return sd.serialize(blob);
}