int ReplicateInfoMessage::parse(char* data, int32_t len) { int32_t size = 0; if (get_int32(&data, &len, &size) == TFS_ERROR) { return TFS_ERROR; } ReplBlock item; uint32_t block_id = 0; int32_t i = 0; for (i = 0; i < size; ++i) { if (get_int32(&data, &len, reinterpret_cast<int32_t*> (&block_id)) == TFS_ERROR) { return TFS_ERROR; } if (get_object_copy(&data, &len, reinterpret_cast<void*> (&item), sizeof(ReplBlock)) == TFS_ERROR) { return TFS_ERROR; } replicating_map_.insert(REPL_BLOCK_MAP::value_type(block_id, item)); } if (get_counter_map(&data, &len, source_ds_counter_)) { return TFS_ERROR; } if (get_counter_map(&data, &len, dest_ds_counter_)) { return TFS_ERROR; } return TFS_SUCCESS; }
int AccessStatInfoMessage::deserialize(common::Stream& input) { int32_t iret = input.get_int32(&has_next_); if (common::TFS_SUCCESS == iret) { iret = get_counter_map(input, stats_); } return iret; }
int AccessStatInfoMessage::parse(char* data, int32_t len) { if (get_int32(&data, &len, &has_next_) == TFS_ERROR) { return TFS_ERROR; } if (get_counter_map(&data, &len, stats_)) { return TFS_ERROR; } return TFS_SUCCESS; }