int ReplicateInfoMessage::build(char* data, int32_t len) { int32_t size = replicating_map_.size(); if (set_int32(&data, &len, size) == TFS_ERROR) { return TFS_ERROR; } for (REPL_BLOCK_MAP::const_iterator it = replicating_map_.begin(); it != replicating_map_.end(); ++it) { if (set_int32(&data, &len, static_cast<int32_t> (it->first)) == TFS_ERROR) { return TFS_ERROR; } if (set_object(&data, &len, reinterpret_cast<void*> (const_cast<ReplBlock*>(&it->second)), sizeof(ReplBlock)) == TFS_ERROR) { return TFS_ERROR; } } if (set_counter_map(&data, &len, source_ds_counter_, source_ds_counter_.size())) { return TFS_ERROR; } if (set_counter_map(&data, &len, dest_ds_counter_, dest_ds_counter_.size())) { return TFS_ERROR; } return TFS_SUCCESS; }
int AccessStatInfoMessage::serialize(common::Stream& output) const { int32_t size = stats_.size(); size -= from_row_; if (size < 0) { size = 0; } if (size > return_row_) { has_next_ = 1; size = return_row_; } int32_t iret = output.set_int32(has_next_); if (common::TFS_SUCCESS == iret) { iret = set_counter_map(output, stats_, from_row_, return_row_, size); } return iret; }
int AccessStatInfoMessage::build(char* data, int32_t len) { int32_t size = stats_.size(); size -= from_row_; if (size < 0) { size = 0; } if (size > return_row_) { has_next_ = 1; size = return_row_; } if (set_int32(&data, &len, has_next_) == TFS_ERROR) { return TFS_ERROR; } if (set_counter_map(&data, &len, stats_, from_row_, return_row_, size)) { return TFS_ERROR; } return TFS_SUCCESS; }