diff -r 000000000000 -r 6474c204b198 toolkit/components/downloads/csd.pb.cc --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/toolkit/components/downloads/csd.pb.cc Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,4309 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! + +#define INTERNAL_SUPPRESS_PROTOBUF_FIELD_DEPRECATION +#include "csd.pb.h" + +#include + +#include +#include +#include +// @@protoc_insertion_point(includes) + +namespace safe_browsing { + +void protobuf_ShutdownFile_csd_2eproto() { + delete ClientPhishingRequest::default_instance_; + delete ClientPhishingRequest_Feature::default_instance_; + delete ClientPhishingResponse::default_instance_; + delete ClientMalwareRequest::default_instance_; + delete ClientMalwareRequest_Feature::default_instance_; + delete ClientMalwareResponse::default_instance_; + delete ClientDownloadRequest::default_instance_; + delete ClientDownloadRequest_Digests::default_instance_; + delete ClientDownloadRequest_Resource::default_instance_; + delete ClientDownloadRequest_CertificateChain::default_instance_; + delete ClientDownloadRequest_CertificateChain_Element::default_instance_; + delete ClientDownloadRequest_SignatureInfo::default_instance_; + delete ClientDownloadResponse::default_instance_; + delete ClientDownloadResponse_MoreInfo::default_instance_; + delete ClientDownloadReport::default_instance_; + delete ClientDownloadReport_UserInformation::default_instance_; + delete ClientUploadResponse::default_instance_; +} + +void protobuf_AddDesc_csd_2eproto() { + static bool already_here = false; + if (already_here) return; + already_here = true; + GOOGLE_PROTOBUF_VERIFY_VERSION; + + ClientPhishingRequest::default_instance_ = new ClientPhishingRequest(); + ClientPhishingRequest_Feature::default_instance_ = new ClientPhishingRequest_Feature(); + ClientPhishingResponse::default_instance_ = new ClientPhishingResponse(); + ClientMalwareRequest::default_instance_ = new ClientMalwareRequest(); + ClientMalwareRequest_Feature::default_instance_ = new ClientMalwareRequest_Feature(); + ClientMalwareResponse::default_instance_ = new ClientMalwareResponse(); + ClientDownloadRequest::default_instance_ = new ClientDownloadRequest(); + ClientDownloadRequest_Digests::default_instance_ = new ClientDownloadRequest_Digests(); + ClientDownloadRequest_Resource::default_instance_ = new ClientDownloadRequest_Resource(); + ClientDownloadRequest_CertificateChain::default_instance_ = new ClientDownloadRequest_CertificateChain(); + ClientDownloadRequest_CertificateChain_Element::default_instance_ = new ClientDownloadRequest_CertificateChain_Element(); + ClientDownloadRequest_SignatureInfo::default_instance_ = new ClientDownloadRequest_SignatureInfo(); + ClientDownloadResponse::default_instance_ = new ClientDownloadResponse(); + ClientDownloadResponse_MoreInfo::default_instance_ = new ClientDownloadResponse_MoreInfo(); + ClientDownloadReport::default_instance_ = new ClientDownloadReport(); + ClientDownloadReport_UserInformation::default_instance_ = new ClientDownloadReport_UserInformation(); + ClientUploadResponse::default_instance_ = new ClientUploadResponse(); + ClientPhishingRequest::default_instance_->InitAsDefaultInstance(); + ClientPhishingRequest_Feature::default_instance_->InitAsDefaultInstance(); + ClientPhishingResponse::default_instance_->InitAsDefaultInstance(); + ClientMalwareRequest::default_instance_->InitAsDefaultInstance(); + ClientMalwareRequest_Feature::default_instance_->InitAsDefaultInstance(); + ClientMalwareResponse::default_instance_->InitAsDefaultInstance(); + ClientDownloadRequest::default_instance_->InitAsDefaultInstance(); + ClientDownloadRequest_Digests::default_instance_->InitAsDefaultInstance(); + ClientDownloadRequest_Resource::default_instance_->InitAsDefaultInstance(); + ClientDownloadRequest_CertificateChain::default_instance_->InitAsDefaultInstance(); + ClientDownloadRequest_CertificateChain_Element::default_instance_->InitAsDefaultInstance(); + ClientDownloadRequest_SignatureInfo::default_instance_->InitAsDefaultInstance(); + ClientDownloadResponse::default_instance_->InitAsDefaultInstance(); + ClientDownloadResponse_MoreInfo::default_instance_->InitAsDefaultInstance(); + ClientDownloadReport::default_instance_->InitAsDefaultInstance(); + ClientDownloadReport_UserInformation::default_instance_->InitAsDefaultInstance(); + ClientUploadResponse::default_instance_->InitAsDefaultInstance(); + ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_csd_2eproto); +} + +// Force AddDescriptors() to be called at static initialization time. +struct StaticDescriptorInitializer_csd_2eproto { + StaticDescriptorInitializer_csd_2eproto() { + protobuf_AddDesc_csd_2eproto(); + } +} static_descriptor_initializer_csd_2eproto_; + + +// =================================================================== + +#ifndef _MSC_VER +const int ClientPhishingRequest_Feature::kNameFieldNumber; +const int ClientPhishingRequest_Feature::kValueFieldNumber; +#endif // !_MSC_VER + +ClientPhishingRequest_Feature::ClientPhishingRequest_Feature() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientPhishingRequest_Feature::InitAsDefaultInstance() { +} + +ClientPhishingRequest_Feature::ClientPhishingRequest_Feature(const ClientPhishingRequest_Feature& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientPhishingRequest_Feature::SharedCtor() { + _cached_size_ = 0; + name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + value_ = 0; + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientPhishingRequest_Feature::~ClientPhishingRequest_Feature() { + SharedDtor(); +} + +void ClientPhishingRequest_Feature::SharedDtor() { + if (name_ != &::google::protobuf::internal::kEmptyString) { + delete name_; + } + if (this != default_instance_) { + } +} + +void ClientPhishingRequest_Feature::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientPhishingRequest_Feature& ClientPhishingRequest_Feature::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientPhishingRequest_Feature* ClientPhishingRequest_Feature::default_instance_ = NULL; + +ClientPhishingRequest_Feature* ClientPhishingRequest_Feature::New() const { + return new ClientPhishingRequest_Feature; +} + +void ClientPhishingRequest_Feature::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_name()) { + if (name_ != &::google::protobuf::internal::kEmptyString) { + name_->clear(); + } + } + value_ = 0; + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientPhishingRequest_Feature::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required string name = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_name())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(17)) goto parse_value; + break; + } + + // required double value = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) { + parse_value: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>( + input, &value_))); + set_has_value(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientPhishingRequest_Feature::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required string name = 1; + if (has_name()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->name(), output); + } + + // required double value = 2; + if (has_value()) { + ::google::protobuf::internal::WireFormatLite::WriteDouble(2, this->value(), output); + } + +} + +int ClientPhishingRequest_Feature::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required string name = 1; + if (has_name()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->name()); + } + + // required double value = 2; + if (has_value()) { + total_size += 1 + 8; + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientPhishingRequest_Feature::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientPhishingRequest_Feature::MergeFrom(const ClientPhishingRequest_Feature& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_name()) { + set_name(from.name()); + } + if (from.has_value()) { + set_value(from.value()); + } + } +} + +void ClientPhishingRequest_Feature::CopyFrom(const ClientPhishingRequest_Feature& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientPhishingRequest_Feature::IsInitialized() const { + if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false; + + return true; +} + +void ClientPhishingRequest_Feature::Swap(ClientPhishingRequest_Feature* other) { + if (other != this) { + std::swap(name_, other->name_); + std::swap(value_, other->value_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientPhishingRequest_Feature::GetTypeName() const { + return "safe_browsing.ClientPhishingRequest.Feature"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientPhishingRequest::kUrlFieldNumber; +const int ClientPhishingRequest::kOBSOLETEHashPrefixFieldNumber; +const int ClientPhishingRequest::kClientScoreFieldNumber; +const int ClientPhishingRequest::kIsPhishingFieldNumber; +const int ClientPhishingRequest::kFeatureMapFieldNumber; +const int ClientPhishingRequest::kModelVersionFieldNumber; +const int ClientPhishingRequest::kNonModelFeatureMapFieldNumber; +const int ClientPhishingRequest::kOBSOLETEReferrerUrlFieldNumber; +#endif // !_MSC_VER + +ClientPhishingRequest::ClientPhishingRequest() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientPhishingRequest::InitAsDefaultInstance() { +} + +ClientPhishingRequest::ClientPhishingRequest(const ClientPhishingRequest& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientPhishingRequest::SharedCtor() { + _cached_size_ = 0; + url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + obsolete_hash_prefix_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + client_score_ = 0; + is_phishing_ = false; + model_version_ = 0; + obsolete_referrer_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientPhishingRequest::~ClientPhishingRequest() { + SharedDtor(); +} + +void ClientPhishingRequest::SharedDtor() { + if (url_ != &::google::protobuf::internal::kEmptyString) { + delete url_; + } + if (obsolete_hash_prefix_ != &::google::protobuf::internal::kEmptyString) { + delete obsolete_hash_prefix_; + } + if (obsolete_referrer_url_ != &::google::protobuf::internal::kEmptyString) { + delete obsolete_referrer_url_; + } + if (this != default_instance_) { + } +} + +void ClientPhishingRequest::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientPhishingRequest& ClientPhishingRequest::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientPhishingRequest* ClientPhishingRequest::default_instance_ = NULL; + +ClientPhishingRequest* ClientPhishingRequest::New() const { + return new ClientPhishingRequest; +} + +void ClientPhishingRequest::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_url()) { + if (url_ != &::google::protobuf::internal::kEmptyString) { + url_->clear(); + } + } + if (has_obsolete_hash_prefix()) { + if (obsolete_hash_prefix_ != &::google::protobuf::internal::kEmptyString) { + obsolete_hash_prefix_->clear(); + } + } + client_score_ = 0; + is_phishing_ = false; + model_version_ = 0; + if (has_obsolete_referrer_url()) { + if (obsolete_referrer_url_ != &::google::protobuf::internal::kEmptyString) { + obsolete_referrer_url_->clear(); + } + } + } + feature_map_.Clear(); + non_model_feature_map_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientPhishingRequest::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional string url = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(21)) goto parse_client_score; + break; + } + + // required float client_score = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED32) { + parse_client_score: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + float, ::google::protobuf::internal::WireFormatLite::TYPE_FLOAT>( + input, &client_score_))); + set_has_client_score(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(32)) goto parse_is_phishing; + break; + } + + // optional bool is_phishing = 4; + case 4: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_is_phishing: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( + input, &is_phishing_))); + set_has_is_phishing(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(42)) goto parse_feature_map; + break; + } + + // repeated .safe_browsing.ClientPhishingRequest.Feature feature_map = 5; + case 5: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_feature_map: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, add_feature_map())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(42)) goto parse_feature_map; + if (input->ExpectTag(48)) goto parse_model_version; + break; + } + + // optional int32 model_version = 6; + case 6: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_model_version: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int32, ::google::protobuf::internal::WireFormatLite::TYPE_INT32>( + input, &model_version_))); + set_has_model_version(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(66)) goto parse_non_model_feature_map; + break; + } + + // repeated .safe_browsing.ClientPhishingRequest.Feature non_model_feature_map = 8; + case 8: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_non_model_feature_map: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, add_non_model_feature_map())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(66)) goto parse_non_model_feature_map; + if (input->ExpectTag(74)) goto parse_OBSOLETE_referrer_url; + break; + } + + // optional string OBSOLETE_referrer_url = 9; + case 9: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_OBSOLETE_referrer_url: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_obsolete_referrer_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(82)) goto parse_OBSOLETE_hash_prefix; + break; + } + + // optional bytes OBSOLETE_hash_prefix = 10; + case 10: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_OBSOLETE_hash_prefix: + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_obsolete_hash_prefix())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientPhishingRequest::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional string url = 1; + if (has_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->url(), output); + } + + // required float client_score = 2; + if (has_client_score()) { + ::google::protobuf::internal::WireFormatLite::WriteFloat(2, this->client_score(), output); + } + + // optional bool is_phishing = 4; + if (has_is_phishing()) { + ::google::protobuf::internal::WireFormatLite::WriteBool(4, this->is_phishing(), output); + } + + // repeated .safe_browsing.ClientPhishingRequest.Feature feature_map = 5; + for (int i = 0; i < this->feature_map_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 5, this->feature_map(i), output); + } + + // optional int32 model_version = 6; + if (has_model_version()) { + ::google::protobuf::internal::WireFormatLite::WriteInt32(6, this->model_version(), output); + } + + // repeated .safe_browsing.ClientPhishingRequest.Feature non_model_feature_map = 8; + for (int i = 0; i < this->non_model_feature_map_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 8, this->non_model_feature_map(i), output); + } + + // optional string OBSOLETE_referrer_url = 9; + if (has_obsolete_referrer_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 9, this->obsolete_referrer_url(), output); + } + + // optional bytes OBSOLETE_hash_prefix = 10; + if (has_obsolete_hash_prefix()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 10, this->obsolete_hash_prefix(), output); + } + +} + +int ClientPhishingRequest::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional string url = 1; + if (has_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->url()); + } + + // optional bytes OBSOLETE_hash_prefix = 10; + if (has_obsolete_hash_prefix()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->obsolete_hash_prefix()); + } + + // required float client_score = 2; + if (has_client_score()) { + total_size += 1 + 4; + } + + // optional bool is_phishing = 4; + if (has_is_phishing()) { + total_size += 1 + 1; + } + + // optional int32 model_version = 6; + if (has_model_version()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int32Size( + this->model_version()); + } + + // optional string OBSOLETE_referrer_url = 9; + if (has_obsolete_referrer_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->obsolete_referrer_url()); + } + + } + // repeated .safe_browsing.ClientPhishingRequest.Feature feature_map = 5; + total_size += 1 * this->feature_map_size(); + for (int i = 0; i < this->feature_map_size(); i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->feature_map(i)); + } + + // repeated .safe_browsing.ClientPhishingRequest.Feature non_model_feature_map = 8; + total_size += 1 * this->non_model_feature_map_size(); + for (int i = 0; i < this->non_model_feature_map_size(); i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->non_model_feature_map(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientPhishingRequest::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientPhishingRequest::MergeFrom(const ClientPhishingRequest& from) { + GOOGLE_CHECK_NE(&from, this); + feature_map_.MergeFrom(from.feature_map_); + non_model_feature_map_.MergeFrom(from.non_model_feature_map_); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_url()) { + set_url(from.url()); + } + if (from.has_obsolete_hash_prefix()) { + set_obsolete_hash_prefix(from.obsolete_hash_prefix()); + } + if (from.has_client_score()) { + set_client_score(from.client_score()); + } + if (from.has_is_phishing()) { + set_is_phishing(from.is_phishing()); + } + if (from.has_model_version()) { + set_model_version(from.model_version()); + } + if (from.has_obsolete_referrer_url()) { + set_obsolete_referrer_url(from.obsolete_referrer_url()); + } + } +} + +void ClientPhishingRequest::CopyFrom(const ClientPhishingRequest& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientPhishingRequest::IsInitialized() const { + if ((_has_bits_[0] & 0x00000004) != 0x00000004) return false; + + for (int i = 0; i < feature_map_size(); i++) { + if (!this->feature_map(i).IsInitialized()) return false; + } + for (int i = 0; i < non_model_feature_map_size(); i++) { + if (!this->non_model_feature_map(i).IsInitialized()) return false; + } + return true; +} + +void ClientPhishingRequest::Swap(ClientPhishingRequest* other) { + if (other != this) { + std::swap(url_, other->url_); + std::swap(obsolete_hash_prefix_, other->obsolete_hash_prefix_); + std::swap(client_score_, other->client_score_); + std::swap(is_phishing_, other->is_phishing_); + feature_map_.Swap(&other->feature_map_); + std::swap(model_version_, other->model_version_); + non_model_feature_map_.Swap(&other->non_model_feature_map_); + std::swap(obsolete_referrer_url_, other->obsolete_referrer_url_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientPhishingRequest::GetTypeName() const { + return "safe_browsing.ClientPhishingRequest"; +} + + +// =================================================================== + +#ifndef _MSC_VER +const int ClientPhishingResponse::kPhishyFieldNumber; +const int ClientPhishingResponse::kOBSOLETEWhitelistExpressionFieldNumber; +#endif // !_MSC_VER + +ClientPhishingResponse::ClientPhishingResponse() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientPhishingResponse::InitAsDefaultInstance() { +} + +ClientPhishingResponse::ClientPhishingResponse(const ClientPhishingResponse& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientPhishingResponse::SharedCtor() { + _cached_size_ = 0; + phishy_ = false; + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientPhishingResponse::~ClientPhishingResponse() { + SharedDtor(); +} + +void ClientPhishingResponse::SharedDtor() { + if (this != default_instance_) { + } +} + +void ClientPhishingResponse::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientPhishingResponse& ClientPhishingResponse::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientPhishingResponse* ClientPhishingResponse::default_instance_ = NULL; + +ClientPhishingResponse* ClientPhishingResponse::New() const { + return new ClientPhishingResponse; +} + +void ClientPhishingResponse::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + phishy_ = false; + } + obsolete_whitelist_expression_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientPhishingResponse::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required bool phishy = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( + input, &phishy_))); + set_has_phishy(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_OBSOLETE_whitelist_expression; + break; + } + + // repeated string OBSOLETE_whitelist_expression = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_OBSOLETE_whitelist_expression: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->add_obsolete_whitelist_expression())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_OBSOLETE_whitelist_expression; + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientPhishingResponse::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required bool phishy = 1; + if (has_phishy()) { + ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->phishy(), output); + } + + // repeated string OBSOLETE_whitelist_expression = 2; + for (int i = 0; i < this->obsolete_whitelist_expression_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 2, this->obsolete_whitelist_expression(i), output); + } + +} + +int ClientPhishingResponse::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required bool phishy = 1; + if (has_phishy()) { + total_size += 1 + 1; + } + + } + // repeated string OBSOLETE_whitelist_expression = 2; + total_size += 1 * this->obsolete_whitelist_expression_size(); + for (int i = 0; i < this->obsolete_whitelist_expression_size(); i++) { + total_size += ::google::protobuf::internal::WireFormatLite::StringSize( + this->obsolete_whitelist_expression(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientPhishingResponse::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientPhishingResponse::MergeFrom(const ClientPhishingResponse& from) { + GOOGLE_CHECK_NE(&from, this); + obsolete_whitelist_expression_.MergeFrom(from.obsolete_whitelist_expression_); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_phishy()) { + set_phishy(from.phishy()); + } + } +} + +void ClientPhishingResponse::CopyFrom(const ClientPhishingResponse& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientPhishingResponse::IsInitialized() const { + if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false; + + return true; +} + +void ClientPhishingResponse::Swap(ClientPhishingResponse* other) { + if (other != this) { + std::swap(phishy_, other->phishy_); + obsolete_whitelist_expression_.Swap(&other->obsolete_whitelist_expression_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientPhishingResponse::GetTypeName() const { + return "safe_browsing.ClientPhishingResponse"; +} + + +// =================================================================== + +#ifndef _MSC_VER +const int ClientMalwareRequest_Feature::kNameFieldNumber; +const int ClientMalwareRequest_Feature::kValueFieldNumber; +const int ClientMalwareRequest_Feature::kMetainfoFieldNumber; +#endif // !_MSC_VER + +ClientMalwareRequest_Feature::ClientMalwareRequest_Feature() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientMalwareRequest_Feature::InitAsDefaultInstance() { +} + +ClientMalwareRequest_Feature::ClientMalwareRequest_Feature(const ClientMalwareRequest_Feature& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientMalwareRequest_Feature::SharedCtor() { + _cached_size_ = 0; + name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + value_ = 0; + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientMalwareRequest_Feature::~ClientMalwareRequest_Feature() { + SharedDtor(); +} + +void ClientMalwareRequest_Feature::SharedDtor() { + if (name_ != &::google::protobuf::internal::kEmptyString) { + delete name_; + } + if (this != default_instance_) { + } +} + +void ClientMalwareRequest_Feature::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientMalwareRequest_Feature& ClientMalwareRequest_Feature::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientMalwareRequest_Feature* ClientMalwareRequest_Feature::default_instance_ = NULL; + +ClientMalwareRequest_Feature* ClientMalwareRequest_Feature::New() const { + return new ClientMalwareRequest_Feature; +} + +void ClientMalwareRequest_Feature::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_name()) { + if (name_ != &::google::protobuf::internal::kEmptyString) { + name_->clear(); + } + } + value_ = 0; + } + metainfo_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientMalwareRequest_Feature::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required string name = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_name())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(17)) goto parse_value; + break; + } + + // required double value = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_FIXED64) { + parse_value: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>( + input, &value_))); + set_has_value(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(26)) goto parse_metainfo; + break; + } + + // repeated string metainfo = 3; + case 3: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_metainfo: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->add_metainfo())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(26)) goto parse_metainfo; + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientMalwareRequest_Feature::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required string name = 1; + if (has_name()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->name(), output); + } + + // required double value = 2; + if (has_value()) { + ::google::protobuf::internal::WireFormatLite::WriteDouble(2, this->value(), output); + } + + // repeated string metainfo = 3; + for (int i = 0; i < this->metainfo_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 3, this->metainfo(i), output); + } + +} + +int ClientMalwareRequest_Feature::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required string name = 1; + if (has_name()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->name()); + } + + // required double value = 2; + if (has_value()) { + total_size += 1 + 8; + } + + } + // repeated string metainfo = 3; + total_size += 1 * this->metainfo_size(); + for (int i = 0; i < this->metainfo_size(); i++) { + total_size += ::google::protobuf::internal::WireFormatLite::StringSize( + this->metainfo(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientMalwareRequest_Feature::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientMalwareRequest_Feature::MergeFrom(const ClientMalwareRequest_Feature& from) { + GOOGLE_CHECK_NE(&from, this); + metainfo_.MergeFrom(from.metainfo_); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_name()) { + set_name(from.name()); + } + if (from.has_value()) { + set_value(from.value()); + } + } +} + +void ClientMalwareRequest_Feature::CopyFrom(const ClientMalwareRequest_Feature& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientMalwareRequest_Feature::IsInitialized() const { + if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false; + + return true; +} + +void ClientMalwareRequest_Feature::Swap(ClientMalwareRequest_Feature* other) { + if (other != this) { + std::swap(name_, other->name_); + std::swap(value_, other->value_); + metainfo_.Swap(&other->metainfo_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientMalwareRequest_Feature::GetTypeName() const { + return "safe_browsing.ClientMalwareRequest.Feature"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientMalwareRequest::kUrlFieldNumber; +const int ClientMalwareRequest::kFeatureMapFieldNumber; +const int ClientMalwareRequest::kReferrerUrlFieldNumber; +#endif // !_MSC_VER + +ClientMalwareRequest::ClientMalwareRequest() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientMalwareRequest::InitAsDefaultInstance() { +} + +ClientMalwareRequest::ClientMalwareRequest(const ClientMalwareRequest& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientMalwareRequest::SharedCtor() { + _cached_size_ = 0; + url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + referrer_url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientMalwareRequest::~ClientMalwareRequest() { + SharedDtor(); +} + +void ClientMalwareRequest::SharedDtor() { + if (url_ != &::google::protobuf::internal::kEmptyString) { + delete url_; + } + if (referrer_url_ != &::google::protobuf::internal::kEmptyString) { + delete referrer_url_; + } + if (this != default_instance_) { + } +} + +void ClientMalwareRequest::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientMalwareRequest& ClientMalwareRequest::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientMalwareRequest* ClientMalwareRequest::default_instance_ = NULL; + +ClientMalwareRequest* ClientMalwareRequest::New() const { + return new ClientMalwareRequest; +} + +void ClientMalwareRequest::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_url()) { + if (url_ != &::google::protobuf::internal::kEmptyString) { + url_->clear(); + } + } + if (has_referrer_url()) { + if (referrer_url_ != &::google::protobuf::internal::kEmptyString) { + referrer_url_->clear(); + } + } + } + feature_map_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientMalwareRequest::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required string url = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_feature_map; + break; + } + + // repeated .safe_browsing.ClientMalwareRequest.Feature feature_map = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_feature_map: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, add_feature_map())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_feature_map; + if (input->ExpectTag(34)) goto parse_referrer_url; + break; + } + + // optional string referrer_url = 4; + case 4: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_referrer_url: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_referrer_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientMalwareRequest::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required string url = 1; + if (has_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->url(), output); + } + + // repeated .safe_browsing.ClientMalwareRequest.Feature feature_map = 2; + for (int i = 0; i < this->feature_map_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 2, this->feature_map(i), output); + } + + // optional string referrer_url = 4; + if (has_referrer_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 4, this->referrer_url(), output); + } + +} + +int ClientMalwareRequest::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required string url = 1; + if (has_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->url()); + } + + // optional string referrer_url = 4; + if (has_referrer_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->referrer_url()); + } + + } + // repeated .safe_browsing.ClientMalwareRequest.Feature feature_map = 2; + total_size += 1 * this->feature_map_size(); + for (int i = 0; i < this->feature_map_size(); i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->feature_map(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientMalwareRequest::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientMalwareRequest::MergeFrom(const ClientMalwareRequest& from) { + GOOGLE_CHECK_NE(&from, this); + feature_map_.MergeFrom(from.feature_map_); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_url()) { + set_url(from.url()); + } + if (from.has_referrer_url()) { + set_referrer_url(from.referrer_url()); + } + } +} + +void ClientMalwareRequest::CopyFrom(const ClientMalwareRequest& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientMalwareRequest::IsInitialized() const { + if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false; + + for (int i = 0; i < feature_map_size(); i++) { + if (!this->feature_map(i).IsInitialized()) return false; + } + return true; +} + +void ClientMalwareRequest::Swap(ClientMalwareRequest* other) { + if (other != this) { + std::swap(url_, other->url_); + feature_map_.Swap(&other->feature_map_); + std::swap(referrer_url_, other->referrer_url_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientMalwareRequest::GetTypeName() const { + return "safe_browsing.ClientMalwareRequest"; +} + + +// =================================================================== + +#ifndef _MSC_VER +const int ClientMalwareResponse::kBlacklistFieldNumber; +const int ClientMalwareResponse::kBadIpFieldNumber; +#endif // !_MSC_VER + +ClientMalwareResponse::ClientMalwareResponse() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientMalwareResponse::InitAsDefaultInstance() { +} + +ClientMalwareResponse::ClientMalwareResponse(const ClientMalwareResponse& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientMalwareResponse::SharedCtor() { + _cached_size_ = 0; + blacklist_ = false; + bad_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientMalwareResponse::~ClientMalwareResponse() { + SharedDtor(); +} + +void ClientMalwareResponse::SharedDtor() { + if (bad_ip_ != &::google::protobuf::internal::kEmptyString) { + delete bad_ip_; + } + if (this != default_instance_) { + } +} + +void ClientMalwareResponse::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientMalwareResponse& ClientMalwareResponse::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientMalwareResponse* ClientMalwareResponse::default_instance_ = NULL; + +ClientMalwareResponse* ClientMalwareResponse::New() const { + return new ClientMalwareResponse; +} + +void ClientMalwareResponse::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + blacklist_ = false; + if (has_bad_ip()) { + if (bad_ip_ != &::google::protobuf::internal::kEmptyString) { + bad_ip_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientMalwareResponse::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required bool blacklist = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( + input, &blacklist_))); + set_has_blacklist(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_bad_ip; + break; + } + + // optional string bad_ip = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_bad_ip: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_bad_ip())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientMalwareResponse::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required bool blacklist = 1; + if (has_blacklist()) { + ::google::protobuf::internal::WireFormatLite::WriteBool(1, this->blacklist(), output); + } + + // optional string bad_ip = 2; + if (has_bad_ip()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 2, this->bad_ip(), output); + } + +} + +int ClientMalwareResponse::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required bool blacklist = 1; + if (has_blacklist()) { + total_size += 1 + 1; + } + + // optional string bad_ip = 2; + if (has_bad_ip()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->bad_ip()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientMalwareResponse::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientMalwareResponse::MergeFrom(const ClientMalwareResponse& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_blacklist()) { + set_blacklist(from.blacklist()); + } + if (from.has_bad_ip()) { + set_bad_ip(from.bad_ip()); + } + } +} + +void ClientMalwareResponse::CopyFrom(const ClientMalwareResponse& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientMalwareResponse::IsInitialized() const { + if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false; + + return true; +} + +void ClientMalwareResponse::Swap(ClientMalwareResponse* other) { + if (other != this) { + std::swap(blacklist_, other->blacklist_); + std::swap(bad_ip_, other->bad_ip_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientMalwareResponse::GetTypeName() const { + return "safe_browsing.ClientMalwareResponse"; +} + + +// =================================================================== + +bool ClientDownloadRequest_ResourceType_IsValid(int value) { + switch(value) { + case 0: + case 1: + case 2: + case 3: + return true; + default: + return false; + } +} + +#ifndef _MSC_VER +const ClientDownloadRequest_ResourceType ClientDownloadRequest::DOWNLOAD_URL; +const ClientDownloadRequest_ResourceType ClientDownloadRequest::DOWNLOAD_REDIRECT; +const ClientDownloadRequest_ResourceType ClientDownloadRequest::TAB_URL; +const ClientDownloadRequest_ResourceType ClientDownloadRequest::TAB_REDIRECT; +const ClientDownloadRequest_ResourceType ClientDownloadRequest::ResourceType_MIN; +const ClientDownloadRequest_ResourceType ClientDownloadRequest::ResourceType_MAX; +const int ClientDownloadRequest::ResourceType_ARRAYSIZE; +#endif // _MSC_VER +bool ClientDownloadRequest_DownloadType_IsValid(int value) { + switch(value) { + case 0: + case 1: + case 2: + case 3: + return true; + default: + return false; + } +} + +#ifndef _MSC_VER +const ClientDownloadRequest_DownloadType ClientDownloadRequest::WIN_EXECUTABLE; +const ClientDownloadRequest_DownloadType ClientDownloadRequest::CHROME_EXTENSION; +const ClientDownloadRequest_DownloadType ClientDownloadRequest::ANDROID_APK; +const ClientDownloadRequest_DownloadType ClientDownloadRequest::ZIPPED_EXECUTABLE; +const ClientDownloadRequest_DownloadType ClientDownloadRequest::DownloadType_MIN; +const ClientDownloadRequest_DownloadType ClientDownloadRequest::DownloadType_MAX; +const int ClientDownloadRequest::DownloadType_ARRAYSIZE; +#endif // _MSC_VER +#ifndef _MSC_VER +const int ClientDownloadRequest_Digests::kSha256FieldNumber; +const int ClientDownloadRequest_Digests::kSha1FieldNumber; +const int ClientDownloadRequest_Digests::kMd5FieldNumber; +#endif // !_MSC_VER + +ClientDownloadRequest_Digests::ClientDownloadRequest_Digests() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadRequest_Digests::InitAsDefaultInstance() { +} + +ClientDownloadRequest_Digests::ClientDownloadRequest_Digests(const ClientDownloadRequest_Digests& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadRequest_Digests::SharedCtor() { + _cached_size_ = 0; + sha256_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + sha1_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + md5_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadRequest_Digests::~ClientDownloadRequest_Digests() { + SharedDtor(); +} + +void ClientDownloadRequest_Digests::SharedDtor() { + if (sha256_ != &::google::protobuf::internal::kEmptyString) { + delete sha256_; + } + if (sha1_ != &::google::protobuf::internal::kEmptyString) { + delete sha1_; + } + if (md5_ != &::google::protobuf::internal::kEmptyString) { + delete md5_; + } + if (this != default_instance_) { + } +} + +void ClientDownloadRequest_Digests::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadRequest_Digests& ClientDownloadRequest_Digests::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadRequest_Digests* ClientDownloadRequest_Digests::default_instance_ = NULL; + +ClientDownloadRequest_Digests* ClientDownloadRequest_Digests::New() const { + return new ClientDownloadRequest_Digests; +} + +void ClientDownloadRequest_Digests::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_sha256()) { + if (sha256_ != &::google::protobuf::internal::kEmptyString) { + sha256_->clear(); + } + } + if (has_sha1()) { + if (sha1_ != &::google::protobuf::internal::kEmptyString) { + sha1_->clear(); + } + } + if (has_md5()) { + if (md5_ != &::google::protobuf::internal::kEmptyString) { + md5_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadRequest_Digests::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional bytes sha256 = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_sha256())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_sha1; + break; + } + + // optional bytes sha1 = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_sha1: + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_sha1())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(26)) goto parse_md5; + break; + } + + // optional bytes md5 = 3; + case 3: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_md5: + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_md5())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadRequest_Digests::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional bytes sha256 = 1; + if (has_sha256()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 1, this->sha256(), output); + } + + // optional bytes sha1 = 2; + if (has_sha1()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 2, this->sha1(), output); + } + + // optional bytes md5 = 3; + if (has_md5()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 3, this->md5(), output); + } + +} + +int ClientDownloadRequest_Digests::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional bytes sha256 = 1; + if (has_sha256()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->sha256()); + } + + // optional bytes sha1 = 2; + if (has_sha1()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->sha1()); + } + + // optional bytes md5 = 3; + if (has_md5()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->md5()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadRequest_Digests::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadRequest_Digests::MergeFrom(const ClientDownloadRequest_Digests& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_sha256()) { + set_sha256(from.sha256()); + } + if (from.has_sha1()) { + set_sha1(from.sha1()); + } + if (from.has_md5()) { + set_md5(from.md5()); + } + } +} + +void ClientDownloadRequest_Digests::CopyFrom(const ClientDownloadRequest_Digests& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadRequest_Digests::IsInitialized() const { + + return true; +} + +void ClientDownloadRequest_Digests::Swap(ClientDownloadRequest_Digests* other) { + if (other != this) { + std::swap(sha256_, other->sha256_); + std::swap(sha1_, other->sha1_); + std::swap(md5_, other->md5_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadRequest_Digests::GetTypeName() const { + return "safe_browsing.ClientDownloadRequest.Digests"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadRequest_Resource::kUrlFieldNumber; +const int ClientDownloadRequest_Resource::kTypeFieldNumber; +const int ClientDownloadRequest_Resource::kRemoteIpFieldNumber; +const int ClientDownloadRequest_Resource::kReferrerFieldNumber; +#endif // !_MSC_VER + +ClientDownloadRequest_Resource::ClientDownloadRequest_Resource() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadRequest_Resource::InitAsDefaultInstance() { +} + +ClientDownloadRequest_Resource::ClientDownloadRequest_Resource(const ClientDownloadRequest_Resource& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadRequest_Resource::SharedCtor() { + _cached_size_ = 0; + url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + type_ = 0; + remote_ip_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + referrer_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadRequest_Resource::~ClientDownloadRequest_Resource() { + SharedDtor(); +} + +void ClientDownloadRequest_Resource::SharedDtor() { + if (url_ != &::google::protobuf::internal::kEmptyString) { + delete url_; + } + if (remote_ip_ != &::google::protobuf::internal::kEmptyString) { + delete remote_ip_; + } + if (referrer_ != &::google::protobuf::internal::kEmptyString) { + delete referrer_; + } + if (this != default_instance_) { + } +} + +void ClientDownloadRequest_Resource::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadRequest_Resource& ClientDownloadRequest_Resource::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadRequest_Resource* ClientDownloadRequest_Resource::default_instance_ = NULL; + +ClientDownloadRequest_Resource* ClientDownloadRequest_Resource::New() const { + return new ClientDownloadRequest_Resource; +} + +void ClientDownloadRequest_Resource::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_url()) { + if (url_ != &::google::protobuf::internal::kEmptyString) { + url_->clear(); + } + } + type_ = 0; + if (has_remote_ip()) { + if (remote_ip_ != &::google::protobuf::internal::kEmptyString) { + remote_ip_->clear(); + } + } + if (has_referrer()) { + if (referrer_ != &::google::protobuf::internal::kEmptyString) { + referrer_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadRequest_Resource::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required string url = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(16)) goto parse_type; + break; + } + + // required .safe_browsing.ClientDownloadRequest.ResourceType type = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_type: + int value; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + if (::safe_browsing::ClientDownloadRequest_ResourceType_IsValid(value)) { + set_type(static_cast< ::safe_browsing::ClientDownloadRequest_ResourceType >(value)); + } + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(26)) goto parse_remote_ip; + break; + } + + // optional bytes remote_ip = 3; + case 3: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_remote_ip: + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_remote_ip())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(34)) goto parse_referrer; + break; + } + + // optional string referrer = 4; + case 4: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_referrer: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_referrer())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadRequest_Resource::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required string url = 1; + if (has_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->url(), output); + } + + // required .safe_browsing.ClientDownloadRequest.ResourceType type = 2; + if (has_type()) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 2, this->type(), output); + } + + // optional bytes remote_ip = 3; + if (has_remote_ip()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 3, this->remote_ip(), output); + } + + // optional string referrer = 4; + if (has_referrer()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 4, this->referrer(), output); + } + +} + +int ClientDownloadRequest_Resource::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required string url = 1; + if (has_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->url()); + } + + // required .safe_browsing.ClientDownloadRequest.ResourceType type = 2; + if (has_type()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->type()); + } + + // optional bytes remote_ip = 3; + if (has_remote_ip()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->remote_ip()); + } + + // optional string referrer = 4; + if (has_referrer()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->referrer()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadRequest_Resource::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadRequest_Resource::MergeFrom(const ClientDownloadRequest_Resource& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_url()) { + set_url(from.url()); + } + if (from.has_type()) { + set_type(from.type()); + } + if (from.has_remote_ip()) { + set_remote_ip(from.remote_ip()); + } + if (from.has_referrer()) { + set_referrer(from.referrer()); + } + } +} + +void ClientDownloadRequest_Resource::CopyFrom(const ClientDownloadRequest_Resource& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadRequest_Resource::IsInitialized() const { + if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false; + + return true; +} + +void ClientDownloadRequest_Resource::Swap(ClientDownloadRequest_Resource* other) { + if (other != this) { + std::swap(url_, other->url_); + std::swap(type_, other->type_); + std::swap(remote_ip_, other->remote_ip_); + std::swap(referrer_, other->referrer_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadRequest_Resource::GetTypeName() const { + return "safe_browsing.ClientDownloadRequest.Resource"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadRequest_CertificateChain_Element::kCertificateFieldNumber; +#endif // !_MSC_VER + +ClientDownloadRequest_CertificateChain_Element::ClientDownloadRequest_CertificateChain_Element() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadRequest_CertificateChain_Element::InitAsDefaultInstance() { +} + +ClientDownloadRequest_CertificateChain_Element::ClientDownloadRequest_CertificateChain_Element(const ClientDownloadRequest_CertificateChain_Element& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadRequest_CertificateChain_Element::SharedCtor() { + _cached_size_ = 0; + certificate_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadRequest_CertificateChain_Element::~ClientDownloadRequest_CertificateChain_Element() { + SharedDtor(); +} + +void ClientDownloadRequest_CertificateChain_Element::SharedDtor() { + if (certificate_ != &::google::protobuf::internal::kEmptyString) { + delete certificate_; + } + if (this != default_instance_) { + } +} + +void ClientDownloadRequest_CertificateChain_Element::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadRequest_CertificateChain_Element& ClientDownloadRequest_CertificateChain_Element::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadRequest_CertificateChain_Element* ClientDownloadRequest_CertificateChain_Element::default_instance_ = NULL; + +ClientDownloadRequest_CertificateChain_Element* ClientDownloadRequest_CertificateChain_Element::New() const { + return new ClientDownloadRequest_CertificateChain_Element; +} + +void ClientDownloadRequest_CertificateChain_Element::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_certificate()) { + if (certificate_ != &::google::protobuf::internal::kEmptyString) { + certificate_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadRequest_CertificateChain_Element::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional bytes certificate = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_certificate())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadRequest_CertificateChain_Element::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional bytes certificate = 1; + if (has_certificate()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 1, this->certificate(), output); + } + +} + +int ClientDownloadRequest_CertificateChain_Element::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional bytes certificate = 1; + if (has_certificate()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->certificate()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadRequest_CertificateChain_Element::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadRequest_CertificateChain_Element::MergeFrom(const ClientDownloadRequest_CertificateChain_Element& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_certificate()) { + set_certificate(from.certificate()); + } + } +} + +void ClientDownloadRequest_CertificateChain_Element::CopyFrom(const ClientDownloadRequest_CertificateChain_Element& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadRequest_CertificateChain_Element::IsInitialized() const { + + return true; +} + +void ClientDownloadRequest_CertificateChain_Element::Swap(ClientDownloadRequest_CertificateChain_Element* other) { + if (other != this) { + std::swap(certificate_, other->certificate_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadRequest_CertificateChain_Element::GetTypeName() const { + return "safe_browsing.ClientDownloadRequest.CertificateChain.Element"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadRequest_CertificateChain::kElementFieldNumber; +#endif // !_MSC_VER + +ClientDownloadRequest_CertificateChain::ClientDownloadRequest_CertificateChain() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadRequest_CertificateChain::InitAsDefaultInstance() { +} + +ClientDownloadRequest_CertificateChain::ClientDownloadRequest_CertificateChain(const ClientDownloadRequest_CertificateChain& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadRequest_CertificateChain::SharedCtor() { + _cached_size_ = 0; + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadRequest_CertificateChain::~ClientDownloadRequest_CertificateChain() { + SharedDtor(); +} + +void ClientDownloadRequest_CertificateChain::SharedDtor() { + if (this != default_instance_) { + } +} + +void ClientDownloadRequest_CertificateChain::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadRequest_CertificateChain& ClientDownloadRequest_CertificateChain::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadRequest_CertificateChain* ClientDownloadRequest_CertificateChain::default_instance_ = NULL; + +ClientDownloadRequest_CertificateChain* ClientDownloadRequest_CertificateChain::New() const { + return new ClientDownloadRequest_CertificateChain; +} + +void ClientDownloadRequest_CertificateChain::Clear() { + element_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadRequest_CertificateChain::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // repeated .safe_browsing.ClientDownloadRequest.CertificateChain.Element element = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_element: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, add_element())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(10)) goto parse_element; + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadRequest_CertificateChain::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // repeated .safe_browsing.ClientDownloadRequest.CertificateChain.Element element = 1; + for (int i = 0; i < this->element_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 1, this->element(i), output); + } + +} + +int ClientDownloadRequest_CertificateChain::ByteSize() const { + int total_size = 0; + + // repeated .safe_browsing.ClientDownloadRequest.CertificateChain.Element element = 1; + total_size += 1 * this->element_size(); + for (int i = 0; i < this->element_size(); i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->element(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadRequest_CertificateChain::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadRequest_CertificateChain::MergeFrom(const ClientDownloadRequest_CertificateChain& from) { + GOOGLE_CHECK_NE(&from, this); + element_.MergeFrom(from.element_); +} + +void ClientDownloadRequest_CertificateChain::CopyFrom(const ClientDownloadRequest_CertificateChain& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadRequest_CertificateChain::IsInitialized() const { + + return true; +} + +void ClientDownloadRequest_CertificateChain::Swap(ClientDownloadRequest_CertificateChain* other) { + if (other != this) { + element_.Swap(&other->element_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadRequest_CertificateChain::GetTypeName() const { + return "safe_browsing.ClientDownloadRequest.CertificateChain"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadRequest_SignatureInfo::kCertificateChainFieldNumber; +const int ClientDownloadRequest_SignatureInfo::kTrustedFieldNumber; +#endif // !_MSC_VER + +ClientDownloadRequest_SignatureInfo::ClientDownloadRequest_SignatureInfo() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadRequest_SignatureInfo::InitAsDefaultInstance() { +} + +ClientDownloadRequest_SignatureInfo::ClientDownloadRequest_SignatureInfo(const ClientDownloadRequest_SignatureInfo& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadRequest_SignatureInfo::SharedCtor() { + _cached_size_ = 0; + trusted_ = false; + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadRequest_SignatureInfo::~ClientDownloadRequest_SignatureInfo() { + SharedDtor(); +} + +void ClientDownloadRequest_SignatureInfo::SharedDtor() { + if (this != default_instance_) { + } +} + +void ClientDownloadRequest_SignatureInfo::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadRequest_SignatureInfo& ClientDownloadRequest_SignatureInfo::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadRequest_SignatureInfo* ClientDownloadRequest_SignatureInfo::default_instance_ = NULL; + +ClientDownloadRequest_SignatureInfo* ClientDownloadRequest_SignatureInfo::New() const { + return new ClientDownloadRequest_SignatureInfo; +} + +void ClientDownloadRequest_SignatureInfo::Clear() { + if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) { + trusted_ = false; + } + certificate_chain_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadRequest_SignatureInfo::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // repeated .safe_browsing.ClientDownloadRequest.CertificateChain certificate_chain = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_certificate_chain: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, add_certificate_chain())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(10)) goto parse_certificate_chain; + if (input->ExpectTag(16)) goto parse_trusted; + break; + } + + // optional bool trusted = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_trusted: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( + input, &trusted_))); + set_has_trusted(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadRequest_SignatureInfo::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // repeated .safe_browsing.ClientDownloadRequest.CertificateChain certificate_chain = 1; + for (int i = 0; i < this->certificate_chain_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 1, this->certificate_chain(i), output); + } + + // optional bool trusted = 2; + if (has_trusted()) { + ::google::protobuf::internal::WireFormatLite::WriteBool(2, this->trusted(), output); + } + +} + +int ClientDownloadRequest_SignatureInfo::ByteSize() const { + int total_size = 0; + + if (_has_bits_[1 / 32] & (0xffu << (1 % 32))) { + // optional bool trusted = 2; + if (has_trusted()) { + total_size += 1 + 1; + } + + } + // repeated .safe_browsing.ClientDownloadRequest.CertificateChain certificate_chain = 1; + total_size += 1 * this->certificate_chain_size(); + for (int i = 0; i < this->certificate_chain_size(); i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->certificate_chain(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadRequest_SignatureInfo::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadRequest_SignatureInfo::MergeFrom(const ClientDownloadRequest_SignatureInfo& from) { + GOOGLE_CHECK_NE(&from, this); + certificate_chain_.MergeFrom(from.certificate_chain_); + if (from._has_bits_[1 / 32] & (0xffu << (1 % 32))) { + if (from.has_trusted()) { + set_trusted(from.trusted()); + } + } +} + +void ClientDownloadRequest_SignatureInfo::CopyFrom(const ClientDownloadRequest_SignatureInfo& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadRequest_SignatureInfo::IsInitialized() const { + + return true; +} + +void ClientDownloadRequest_SignatureInfo::Swap(ClientDownloadRequest_SignatureInfo* other) { + if (other != this) { + certificate_chain_.Swap(&other->certificate_chain_); + std::swap(trusted_, other->trusted_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadRequest_SignatureInfo::GetTypeName() const { + return "safe_browsing.ClientDownloadRequest.SignatureInfo"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadRequest::kUrlFieldNumber; +const int ClientDownloadRequest::kDigestsFieldNumber; +const int ClientDownloadRequest::kLengthFieldNumber; +const int ClientDownloadRequest::kResourcesFieldNumber; +const int ClientDownloadRequest::kSignatureFieldNumber; +const int ClientDownloadRequest::kUserInitiatedFieldNumber; +const int ClientDownloadRequest::kFileBasenameFieldNumber; +const int ClientDownloadRequest::kDownloadTypeFieldNumber; +const int ClientDownloadRequest::kLocaleFieldNumber; +#endif // !_MSC_VER + +ClientDownloadRequest::ClientDownloadRequest() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadRequest::InitAsDefaultInstance() { + digests_ = const_cast< ::safe_browsing::ClientDownloadRequest_Digests*>(&::safe_browsing::ClientDownloadRequest_Digests::default_instance()); + signature_ = const_cast< ::safe_browsing::ClientDownloadRequest_SignatureInfo*>(&::safe_browsing::ClientDownloadRequest_SignatureInfo::default_instance()); +} + +ClientDownloadRequest::ClientDownloadRequest(const ClientDownloadRequest& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadRequest::SharedCtor() { + _cached_size_ = 0; + url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + digests_ = NULL; + length_ = GOOGLE_LONGLONG(0); + signature_ = NULL; + user_initiated_ = false; + file_basename_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + download_type_ = 0; + locale_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadRequest::~ClientDownloadRequest() { + SharedDtor(); +} + +void ClientDownloadRequest::SharedDtor() { + if (url_ != &::google::protobuf::internal::kEmptyString) { + delete url_; + } + if (file_basename_ != &::google::protobuf::internal::kEmptyString) { + delete file_basename_; + } + if (locale_ != &::google::protobuf::internal::kEmptyString) { + delete locale_; + } + if (this != default_instance_) { + delete digests_; + delete signature_; + } +} + +void ClientDownloadRequest::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadRequest& ClientDownloadRequest::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadRequest* ClientDownloadRequest::default_instance_ = NULL; + +ClientDownloadRequest* ClientDownloadRequest::New() const { + return new ClientDownloadRequest; +} + +void ClientDownloadRequest::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_url()) { + if (url_ != &::google::protobuf::internal::kEmptyString) { + url_->clear(); + } + } + if (has_digests()) { + if (digests_ != NULL) digests_->::safe_browsing::ClientDownloadRequest_Digests::Clear(); + } + length_ = GOOGLE_LONGLONG(0); + if (has_signature()) { + if (signature_ != NULL) signature_->::safe_browsing::ClientDownloadRequest_SignatureInfo::Clear(); + } + user_initiated_ = false; + if (has_file_basename()) { + if (file_basename_ != &::google::protobuf::internal::kEmptyString) { + file_basename_->clear(); + } + } + download_type_ = 0; + } + if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) { + if (has_locale()) { + if (locale_ != &::google::protobuf::internal::kEmptyString) { + locale_->clear(); + } + } + } + resources_.Clear(); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadRequest::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required string url = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_digests; + break; + } + + // required .safe_browsing.ClientDownloadRequest.Digests digests = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_digests: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, mutable_digests())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(24)) goto parse_length; + break; + } + + // required int64 length = 3; + case 3: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_length: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + ::google::protobuf::int64, ::google::protobuf::internal::WireFormatLite::TYPE_INT64>( + input, &length_))); + set_has_length(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(34)) goto parse_resources; + break; + } + + // repeated .safe_browsing.ClientDownloadRequest.Resource resources = 4; + case 4: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_resources: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, add_resources())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(34)) goto parse_resources; + if (input->ExpectTag(42)) goto parse_signature; + break; + } + + // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5; + case 5: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_signature: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, mutable_signature())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(48)) goto parse_user_initiated; + break; + } + + // optional bool user_initiated = 6; + case 6: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_user_initiated: + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>( + input, &user_initiated_))); + set_has_user_initiated(); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(74)) goto parse_file_basename; + break; + } + + // optional string file_basename = 9; + case 9: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_file_basename: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_file_basename())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(80)) goto parse_download_type; + break; + } + + // optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 10 [default = WIN_EXECUTABLE]; + case 10: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + parse_download_type: + int value; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + if (::safe_browsing::ClientDownloadRequest_DownloadType_IsValid(value)) { + set_download_type(static_cast< ::safe_browsing::ClientDownloadRequest_DownloadType >(value)); + } + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(90)) goto parse_locale; + break; + } + + // optional string locale = 11; + case 11: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_locale: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_locale())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadRequest::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required string url = 1; + if (has_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->url(), output); + } + + // required .safe_browsing.ClientDownloadRequest.Digests digests = 2; + if (has_digests()) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 2, this->digests(), output); + } + + // required int64 length = 3; + if (has_length()) { + ::google::protobuf::internal::WireFormatLite::WriteInt64(3, this->length(), output); + } + + // repeated .safe_browsing.ClientDownloadRequest.Resource resources = 4; + for (int i = 0; i < this->resources_size(); i++) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 4, this->resources(i), output); + } + + // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5; + if (has_signature()) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 5, this->signature(), output); + } + + // optional bool user_initiated = 6; + if (has_user_initiated()) { + ::google::protobuf::internal::WireFormatLite::WriteBool(6, this->user_initiated(), output); + } + + // optional string file_basename = 9; + if (has_file_basename()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 9, this->file_basename(), output); + } + + // optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 10 [default = WIN_EXECUTABLE]; + if (has_download_type()) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 10, this->download_type(), output); + } + + // optional string locale = 11; + if (has_locale()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 11, this->locale(), output); + } + +} + +int ClientDownloadRequest::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required string url = 1; + if (has_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->url()); + } + + // required .safe_browsing.ClientDownloadRequest.Digests digests = 2; + if (has_digests()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->digests()); + } + + // required int64 length = 3; + if (has_length()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::Int64Size( + this->length()); + } + + // optional .safe_browsing.ClientDownloadRequest.SignatureInfo signature = 5; + if (has_signature()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->signature()); + } + + // optional bool user_initiated = 6; + if (has_user_initiated()) { + total_size += 1 + 1; + } + + // optional string file_basename = 9; + if (has_file_basename()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->file_basename()); + } + + // optional .safe_browsing.ClientDownloadRequest.DownloadType download_type = 10 [default = WIN_EXECUTABLE]; + if (has_download_type()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->download_type()); + } + + } + if (_has_bits_[8 / 32] & (0xffu << (8 % 32))) { + // optional string locale = 11; + if (has_locale()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->locale()); + } + + } + // repeated .safe_browsing.ClientDownloadRequest.Resource resources = 4; + total_size += 1 * this->resources_size(); + for (int i = 0; i < this->resources_size(); i++) { + total_size += + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->resources(i)); + } + + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadRequest::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadRequest::MergeFrom(const ClientDownloadRequest& from) { + GOOGLE_CHECK_NE(&from, this); + resources_.MergeFrom(from.resources_); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_url()) { + set_url(from.url()); + } + if (from.has_digests()) { + mutable_digests()->::safe_browsing::ClientDownloadRequest_Digests::MergeFrom(from.digests()); + } + if (from.has_length()) { + set_length(from.length()); + } + if (from.has_signature()) { + mutable_signature()->::safe_browsing::ClientDownloadRequest_SignatureInfo::MergeFrom(from.signature()); + } + if (from.has_user_initiated()) { + set_user_initiated(from.user_initiated()); + } + if (from.has_file_basename()) { + set_file_basename(from.file_basename()); + } + if (from.has_download_type()) { + set_download_type(from.download_type()); + } + } + if (from._has_bits_[8 / 32] & (0xffu << (8 % 32))) { + if (from.has_locale()) { + set_locale(from.locale()); + } + } +} + +void ClientDownloadRequest::CopyFrom(const ClientDownloadRequest& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadRequest::IsInitialized() const { + if ((_has_bits_[0] & 0x00000007) != 0x00000007) return false; + + for (int i = 0; i < resources_size(); i++) { + if (!this->resources(i).IsInitialized()) return false; + } + return true; +} + +void ClientDownloadRequest::Swap(ClientDownloadRequest* other) { + if (other != this) { + std::swap(url_, other->url_); + std::swap(digests_, other->digests_); + std::swap(length_, other->length_); + resources_.Swap(&other->resources_); + std::swap(signature_, other->signature_); + std::swap(user_initiated_, other->user_initiated_); + std::swap(file_basename_, other->file_basename_); + std::swap(download_type_, other->download_type_); + std::swap(locale_, other->locale_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadRequest::GetTypeName() const { + return "safe_browsing.ClientDownloadRequest"; +} + + +// =================================================================== + +bool ClientDownloadResponse_Verdict_IsValid(int value) { + switch(value) { + case 0: + case 1: + case 2: + case 3: + case 4: + return true; + default: + return false; + } +} + +#ifndef _MSC_VER +const ClientDownloadResponse_Verdict ClientDownloadResponse::SAFE; +const ClientDownloadResponse_Verdict ClientDownloadResponse::DANGEROUS; +const ClientDownloadResponse_Verdict ClientDownloadResponse::UNCOMMON; +const ClientDownloadResponse_Verdict ClientDownloadResponse::POTENTIALLY_UNWANTED; +const ClientDownloadResponse_Verdict ClientDownloadResponse::DANGEROUS_HOST; +const ClientDownloadResponse_Verdict ClientDownloadResponse::Verdict_MIN; +const ClientDownloadResponse_Verdict ClientDownloadResponse::Verdict_MAX; +const int ClientDownloadResponse::Verdict_ARRAYSIZE; +#endif // _MSC_VER +#ifndef _MSC_VER +const int ClientDownloadResponse_MoreInfo::kDescriptionFieldNumber; +const int ClientDownloadResponse_MoreInfo::kUrlFieldNumber; +#endif // !_MSC_VER + +ClientDownloadResponse_MoreInfo::ClientDownloadResponse_MoreInfo() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadResponse_MoreInfo::InitAsDefaultInstance() { +} + +ClientDownloadResponse_MoreInfo::ClientDownloadResponse_MoreInfo(const ClientDownloadResponse_MoreInfo& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadResponse_MoreInfo::SharedCtor() { + _cached_size_ = 0; + description_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + url_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadResponse_MoreInfo::~ClientDownloadResponse_MoreInfo() { + SharedDtor(); +} + +void ClientDownloadResponse_MoreInfo::SharedDtor() { + if (description_ != &::google::protobuf::internal::kEmptyString) { + delete description_; + } + if (url_ != &::google::protobuf::internal::kEmptyString) { + delete url_; + } + if (this != default_instance_) { + } +} + +void ClientDownloadResponse_MoreInfo::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadResponse_MoreInfo& ClientDownloadResponse_MoreInfo::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadResponse_MoreInfo* ClientDownloadResponse_MoreInfo::default_instance_ = NULL; + +ClientDownloadResponse_MoreInfo* ClientDownloadResponse_MoreInfo::New() const { + return new ClientDownloadResponse_MoreInfo; +} + +void ClientDownloadResponse_MoreInfo::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_description()) { + if (description_ != &::google::protobuf::internal::kEmptyString) { + description_->clear(); + } + } + if (has_url()) { + if (url_ != &::google::protobuf::internal::kEmptyString) { + url_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadResponse_MoreInfo::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional string description = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_description())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_url; + break; + } + + // optional string url = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_url: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_url())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadResponse_MoreInfo::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional string description = 1; + if (has_description()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->description(), output); + } + + // optional string url = 2; + if (has_url()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 2, this->url(), output); + } + +} + +int ClientDownloadResponse_MoreInfo::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional string description = 1; + if (has_description()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->description()); + } + + // optional string url = 2; + if (has_url()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->url()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadResponse_MoreInfo::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadResponse_MoreInfo::MergeFrom(const ClientDownloadResponse_MoreInfo& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_description()) { + set_description(from.description()); + } + if (from.has_url()) { + set_url(from.url()); + } + } +} + +void ClientDownloadResponse_MoreInfo::CopyFrom(const ClientDownloadResponse_MoreInfo& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadResponse_MoreInfo::IsInitialized() const { + + return true; +} + +void ClientDownloadResponse_MoreInfo::Swap(ClientDownloadResponse_MoreInfo* other) { + if (other != this) { + std::swap(description_, other->description_); + std::swap(url_, other->url_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadResponse_MoreInfo::GetTypeName() const { + return "safe_browsing.ClientDownloadResponse.MoreInfo"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadResponse::kVerdictFieldNumber; +const int ClientDownloadResponse::kMoreInfoFieldNumber; +const int ClientDownloadResponse::kTokenFieldNumber; +#endif // !_MSC_VER + +ClientDownloadResponse::ClientDownloadResponse() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadResponse::InitAsDefaultInstance() { + more_info_ = const_cast< ::safe_browsing::ClientDownloadResponse_MoreInfo*>(&::safe_browsing::ClientDownloadResponse_MoreInfo::default_instance()); +} + +ClientDownloadResponse::ClientDownloadResponse(const ClientDownloadResponse& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadResponse::SharedCtor() { + _cached_size_ = 0; + verdict_ = 0; + more_info_ = NULL; + token_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadResponse::~ClientDownloadResponse() { + SharedDtor(); +} + +void ClientDownloadResponse::SharedDtor() { + if (token_ != &::google::protobuf::internal::kEmptyString) { + delete token_; + } + if (this != default_instance_) { + delete more_info_; + } +} + +void ClientDownloadResponse::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadResponse& ClientDownloadResponse::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadResponse* ClientDownloadResponse::default_instance_ = NULL; + +ClientDownloadResponse* ClientDownloadResponse::New() const { + return new ClientDownloadResponse; +} + +void ClientDownloadResponse::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + verdict_ = 0; + if (has_more_info()) { + if (more_info_ != NULL) more_info_->::safe_browsing::ClientDownloadResponse_MoreInfo::Clear(); + } + if (has_token()) { + if (token_ != &::google::protobuf::internal::kEmptyString) { + token_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadResponse::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // required .safe_browsing.ClientDownloadResponse.Verdict verdict = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + int value; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + if (::safe_browsing::ClientDownloadResponse_Verdict_IsValid(value)) { + set_verdict(static_cast< ::safe_browsing::ClientDownloadResponse_Verdict >(value)); + } + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_more_info; + break; + } + + // optional .safe_browsing.ClientDownloadResponse.MoreInfo more_info = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_more_info: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, mutable_more_info())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(26)) goto parse_token; + break; + } + + // optional bytes token = 3; + case 3: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_token: + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_token())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadResponse::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // required .safe_browsing.ClientDownloadResponse.Verdict verdict = 1; + if (has_verdict()) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 1, this->verdict(), output); + } + + // optional .safe_browsing.ClientDownloadResponse.MoreInfo more_info = 2; + if (has_more_info()) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 2, this->more_info(), output); + } + + // optional bytes token = 3; + if (has_token()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 3, this->token(), output); + } + +} + +int ClientDownloadResponse::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // required .safe_browsing.ClientDownloadResponse.Verdict verdict = 1; + if (has_verdict()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->verdict()); + } + + // optional .safe_browsing.ClientDownloadResponse.MoreInfo more_info = 2; + if (has_more_info()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->more_info()); + } + + // optional bytes token = 3; + if (has_token()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->token()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadResponse::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadResponse::MergeFrom(const ClientDownloadResponse& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_verdict()) { + set_verdict(from.verdict()); + } + if (from.has_more_info()) { + mutable_more_info()->::safe_browsing::ClientDownloadResponse_MoreInfo::MergeFrom(from.more_info()); + } + if (from.has_token()) { + set_token(from.token()); + } + } +} + +void ClientDownloadResponse::CopyFrom(const ClientDownloadResponse& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadResponse::IsInitialized() const { + if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false; + + return true; +} + +void ClientDownloadResponse::Swap(ClientDownloadResponse* other) { + if (other != this) { + std::swap(verdict_, other->verdict_); + std::swap(more_info_, other->more_info_); + std::swap(token_, other->token_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadResponse::GetTypeName() const { + return "safe_browsing.ClientDownloadResponse"; +} + + +// =================================================================== + +bool ClientDownloadReport_Reason_IsValid(int value) { + switch(value) { + case 0: + case 1: + case 2: + return true; + default: + return false; + } +} + +#ifndef _MSC_VER +const ClientDownloadReport_Reason ClientDownloadReport::SHARE; +const ClientDownloadReport_Reason ClientDownloadReport::FALSE_POSITIVE; +const ClientDownloadReport_Reason ClientDownloadReport::APPEAL; +const ClientDownloadReport_Reason ClientDownloadReport::Reason_MIN; +const ClientDownloadReport_Reason ClientDownloadReport::Reason_MAX; +const int ClientDownloadReport::Reason_ARRAYSIZE; +#endif // _MSC_VER +#ifndef _MSC_VER +const int ClientDownloadReport_UserInformation::kEmailFieldNumber; +#endif // !_MSC_VER + +ClientDownloadReport_UserInformation::ClientDownloadReport_UserInformation() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadReport_UserInformation::InitAsDefaultInstance() { +} + +ClientDownloadReport_UserInformation::ClientDownloadReport_UserInformation(const ClientDownloadReport_UserInformation& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadReport_UserInformation::SharedCtor() { + _cached_size_ = 0; + email_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadReport_UserInformation::~ClientDownloadReport_UserInformation() { + SharedDtor(); +} + +void ClientDownloadReport_UserInformation::SharedDtor() { + if (email_ != &::google::protobuf::internal::kEmptyString) { + delete email_; + } + if (this != default_instance_) { + } +} + +void ClientDownloadReport_UserInformation::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadReport_UserInformation& ClientDownloadReport_UserInformation::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadReport_UserInformation* ClientDownloadReport_UserInformation::default_instance_ = NULL; + +ClientDownloadReport_UserInformation* ClientDownloadReport_UserInformation::New() const { + return new ClientDownloadReport_UserInformation; +} + +void ClientDownloadReport_UserInformation::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (has_email()) { + if (email_ != &::google::protobuf::internal::kEmptyString) { + email_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadReport_UserInformation::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional string email = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_email())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadReport_UserInformation::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional string email = 1; + if (has_email()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 1, this->email(), output); + } + +} + +int ClientDownloadReport_UserInformation::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional string email = 1; + if (has_email()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->email()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadReport_UserInformation::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadReport_UserInformation::MergeFrom(const ClientDownloadReport_UserInformation& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_email()) { + set_email(from.email()); + } + } +} + +void ClientDownloadReport_UserInformation::CopyFrom(const ClientDownloadReport_UserInformation& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadReport_UserInformation::IsInitialized() const { + + return true; +} + +void ClientDownloadReport_UserInformation::Swap(ClientDownloadReport_UserInformation* other) { + if (other != this) { + std::swap(email_, other->email_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadReport_UserInformation::GetTypeName() const { + return "safe_browsing.ClientDownloadReport.UserInformation"; +} + + +// ------------------------------------------------------------------- + +#ifndef _MSC_VER +const int ClientDownloadReport::kReasonFieldNumber; +const int ClientDownloadReport::kDownloadRequestFieldNumber; +const int ClientDownloadReport::kUserInformationFieldNumber; +const int ClientDownloadReport::kCommentFieldNumber; +const int ClientDownloadReport::kDownloadResponseFieldNumber; +#endif // !_MSC_VER + +ClientDownloadReport::ClientDownloadReport() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientDownloadReport::InitAsDefaultInstance() { + download_request_ = const_cast< ::safe_browsing::ClientDownloadRequest*>(&::safe_browsing::ClientDownloadRequest::default_instance()); + user_information_ = const_cast< ::safe_browsing::ClientDownloadReport_UserInformation*>(&::safe_browsing::ClientDownloadReport_UserInformation::default_instance()); + download_response_ = const_cast< ::safe_browsing::ClientDownloadResponse*>(&::safe_browsing::ClientDownloadResponse::default_instance()); +} + +ClientDownloadReport::ClientDownloadReport(const ClientDownloadReport& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientDownloadReport::SharedCtor() { + _cached_size_ = 0; + reason_ = 0; + download_request_ = NULL; + user_information_ = NULL; + comment_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + download_response_ = NULL; + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientDownloadReport::~ClientDownloadReport() { + SharedDtor(); +} + +void ClientDownloadReport::SharedDtor() { + if (comment_ != &::google::protobuf::internal::kEmptyString) { + delete comment_; + } + if (this != default_instance_) { + delete download_request_; + delete user_information_; + delete download_response_; + } +} + +void ClientDownloadReport::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientDownloadReport& ClientDownloadReport::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientDownloadReport* ClientDownloadReport::default_instance_ = NULL; + +ClientDownloadReport* ClientDownloadReport::New() const { + return new ClientDownloadReport; +} + +void ClientDownloadReport::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + reason_ = 0; + if (has_download_request()) { + if (download_request_ != NULL) download_request_->::safe_browsing::ClientDownloadRequest::Clear(); + } + if (has_user_information()) { + if (user_information_ != NULL) user_information_->::safe_browsing::ClientDownloadReport_UserInformation::Clear(); + } + if (has_comment()) { + if (comment_ != &::google::protobuf::internal::kEmptyString) { + comment_->clear(); + } + } + if (has_download_response()) { + if (download_response_ != NULL) download_response_->::safe_browsing::ClientDownloadResponse::Clear(); + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientDownloadReport::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional .safe_browsing.ClientDownloadReport.Reason reason = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + int value; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + if (::safe_browsing::ClientDownloadReport_Reason_IsValid(value)) { + set_reason(static_cast< ::safe_browsing::ClientDownloadReport_Reason >(value)); + } + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_download_request; + break; + } + + // optional .safe_browsing.ClientDownloadRequest download_request = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_download_request: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, mutable_download_request())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(26)) goto parse_user_information; + break; + } + + // optional .safe_browsing.ClientDownloadReport.UserInformation user_information = 3; + case 3: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_user_information: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, mutable_user_information())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(34)) goto parse_comment; + break; + } + + // optional bytes comment = 4; + case 4: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_comment: + DO_(::google::protobuf::internal::WireFormatLite::ReadBytes( + input, this->mutable_comment())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(42)) goto parse_download_response; + break; + } + + // optional .safe_browsing.ClientDownloadResponse download_response = 5; + case 5: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_download_response: + DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual( + input, mutable_download_response())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientDownloadReport::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional .safe_browsing.ClientDownloadReport.Reason reason = 1; + if (has_reason()) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 1, this->reason(), output); + } + + // optional .safe_browsing.ClientDownloadRequest download_request = 2; + if (has_download_request()) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 2, this->download_request(), output); + } + + // optional .safe_browsing.ClientDownloadReport.UserInformation user_information = 3; + if (has_user_information()) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 3, this->user_information(), output); + } + + // optional bytes comment = 4; + if (has_comment()) { + ::google::protobuf::internal::WireFormatLite::WriteBytes( + 4, this->comment(), output); + } + + // optional .safe_browsing.ClientDownloadResponse download_response = 5; + if (has_download_response()) { + ::google::protobuf::internal::WireFormatLite::WriteMessage( + 5, this->download_response(), output); + } + +} + +int ClientDownloadReport::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional .safe_browsing.ClientDownloadReport.Reason reason = 1; + if (has_reason()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->reason()); + } + + // optional .safe_browsing.ClientDownloadRequest download_request = 2; + if (has_download_request()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->download_request()); + } + + // optional .safe_browsing.ClientDownloadReport.UserInformation user_information = 3; + if (has_user_information()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->user_information()); + } + + // optional bytes comment = 4; + if (has_comment()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::BytesSize( + this->comment()); + } + + // optional .safe_browsing.ClientDownloadResponse download_response = 5; + if (has_download_response()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( + this->download_response()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientDownloadReport::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientDownloadReport::MergeFrom(const ClientDownloadReport& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_reason()) { + set_reason(from.reason()); + } + if (from.has_download_request()) { + mutable_download_request()->::safe_browsing::ClientDownloadRequest::MergeFrom(from.download_request()); + } + if (from.has_user_information()) { + mutable_user_information()->::safe_browsing::ClientDownloadReport_UserInformation::MergeFrom(from.user_information()); + } + if (from.has_comment()) { + set_comment(from.comment()); + } + if (from.has_download_response()) { + mutable_download_response()->::safe_browsing::ClientDownloadResponse::MergeFrom(from.download_response()); + } + } +} + +void ClientDownloadReport::CopyFrom(const ClientDownloadReport& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientDownloadReport::IsInitialized() const { + + if (has_download_request()) { + if (!this->download_request().IsInitialized()) return false; + } + if (has_download_response()) { + if (!this->download_response().IsInitialized()) return false; + } + return true; +} + +void ClientDownloadReport::Swap(ClientDownloadReport* other) { + if (other != this) { + std::swap(reason_, other->reason_); + std::swap(download_request_, other->download_request_); + std::swap(user_information_, other->user_information_); + std::swap(comment_, other->comment_); + std::swap(download_response_, other->download_response_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientDownloadReport::GetTypeName() const { + return "safe_browsing.ClientDownloadReport"; +} + + +// =================================================================== + +bool ClientUploadResponse_UploadStatus_IsValid(int value) { + switch(value) { + case 0: + case 1: + return true; + default: + return false; + } +} + +#ifndef _MSC_VER +const ClientUploadResponse_UploadStatus ClientUploadResponse::SUCCESS; +const ClientUploadResponse_UploadStatus ClientUploadResponse::UPLOAD_FAILURE; +const ClientUploadResponse_UploadStatus ClientUploadResponse::UploadStatus_MIN; +const ClientUploadResponse_UploadStatus ClientUploadResponse::UploadStatus_MAX; +const int ClientUploadResponse::UploadStatus_ARRAYSIZE; +#endif // _MSC_VER +#ifndef _MSC_VER +const int ClientUploadResponse::kStatusFieldNumber; +const int ClientUploadResponse::kPermalinkFieldNumber; +#endif // !_MSC_VER + +ClientUploadResponse::ClientUploadResponse() + : ::google::protobuf::MessageLite() { + SharedCtor(); +} + +void ClientUploadResponse::InitAsDefaultInstance() { +} + +ClientUploadResponse::ClientUploadResponse(const ClientUploadResponse& from) + : ::google::protobuf::MessageLite() { + SharedCtor(); + MergeFrom(from); +} + +void ClientUploadResponse::SharedCtor() { + _cached_size_ = 0; + status_ = 0; + permalink_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +ClientUploadResponse::~ClientUploadResponse() { + SharedDtor(); +} + +void ClientUploadResponse::SharedDtor() { + if (permalink_ != &::google::protobuf::internal::kEmptyString) { + delete permalink_; + } + if (this != default_instance_) { + } +} + +void ClientUploadResponse::SetCachedSize(int size) const { + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); +} +const ClientUploadResponse& ClientUploadResponse::default_instance() { + if (default_instance_ == NULL) protobuf_AddDesc_csd_2eproto(); return *default_instance_; +} + +ClientUploadResponse* ClientUploadResponse::default_instance_ = NULL; + +ClientUploadResponse* ClientUploadResponse::New() const { + return new ClientUploadResponse; +} + +void ClientUploadResponse::Clear() { + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + status_ = 0; + if (has_permalink()) { + if (permalink_ != &::google::protobuf::internal::kEmptyString) { + permalink_->clear(); + } + } + } + ::memset(_has_bits_, 0, sizeof(_has_bits_)); +} + +bool ClientUploadResponse::MergePartialFromCodedStream( + ::google::protobuf::io::CodedInputStream* input) { +#define DO_(EXPRESSION) if (!(EXPRESSION)) return false + ::google::protobuf::uint32 tag; + while ((tag = input->ReadTag()) != 0) { + switch (::google::protobuf::internal::WireFormatLite::GetTagFieldNumber(tag)) { + // optional .safe_browsing.ClientUploadResponse.UploadStatus status = 1; + case 1: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) { + int value; + DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive< + int, ::google::protobuf::internal::WireFormatLite::TYPE_ENUM>( + input, &value))); + if (::safe_browsing::ClientUploadResponse_UploadStatus_IsValid(value)) { + set_status(static_cast< ::safe_browsing::ClientUploadResponse_UploadStatus >(value)); + } + } else { + goto handle_uninterpreted; + } + if (input->ExpectTag(18)) goto parse_permalink; + break; + } + + // optional string permalink = 2; + case 2: { + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { + parse_permalink: + DO_(::google::protobuf::internal::WireFormatLite::ReadString( + input, this->mutable_permalink())); + } else { + goto handle_uninterpreted; + } + if (input->ExpectAtEnd()) return true; + break; + } + + default: { + handle_uninterpreted: + if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == + ::google::protobuf::internal::WireFormatLite::WIRETYPE_END_GROUP) { + return true; + } + DO_(::google::protobuf::internal::WireFormatLite::SkipField(input, tag)); + break; + } + } + } + return true; +#undef DO_ +} + +void ClientUploadResponse::SerializeWithCachedSizes( + ::google::protobuf::io::CodedOutputStream* output) const { + // optional .safe_browsing.ClientUploadResponse.UploadStatus status = 1; + if (has_status()) { + ::google::protobuf::internal::WireFormatLite::WriteEnum( + 1, this->status(), output); + } + + // optional string permalink = 2; + if (has_permalink()) { + ::google::protobuf::internal::WireFormatLite::WriteString( + 2, this->permalink(), output); + } + +} + +int ClientUploadResponse::ByteSize() const { + int total_size = 0; + + if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { + // optional .safe_browsing.ClientUploadResponse.UploadStatus status = 1; + if (has_status()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::EnumSize(this->status()); + } + + // optional string permalink = 2; + if (has_permalink()) { + total_size += 1 + + ::google::protobuf::internal::WireFormatLite::StringSize( + this->permalink()); + } + + } + GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); + _cached_size_ = total_size; + GOOGLE_SAFE_CONCURRENT_WRITES_END(); + return total_size; +} + +void ClientUploadResponse::CheckTypeAndMergeFrom( + const ::google::protobuf::MessageLite& from) { + MergeFrom(*::google::protobuf::down_cast(&from)); +} + +void ClientUploadResponse::MergeFrom(const ClientUploadResponse& from) { + GOOGLE_CHECK_NE(&from, this); + if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { + if (from.has_status()) { + set_status(from.status()); + } + if (from.has_permalink()) { + set_permalink(from.permalink()); + } + } +} + +void ClientUploadResponse::CopyFrom(const ClientUploadResponse& from) { + if (&from == this) return; + Clear(); + MergeFrom(from); +} + +bool ClientUploadResponse::IsInitialized() const { + + return true; +} + +void ClientUploadResponse::Swap(ClientUploadResponse* other) { + if (other != this) { + std::swap(status_, other->status_); + std::swap(permalink_, other->permalink_); + std::swap(_has_bits_[0], other->_has_bits_[0]); + std::swap(_cached_size_, other->_cached_size_); + } +} + +::std::string ClientUploadResponse::GetTypeName() const { + return "safe_browsing.ClientUploadResponse"; +} + + +// @@protoc_insertion_point(namespace_scope) + +} // namespace safe_browsing + +// @@protoc_insertion_point(global_scope)