WIP. UTF-8 name conversion, proto simplifications

This commit is contained in:
emeric
2014-06-18 12:50:55 +02:00
parent 399c771e75
commit ee09a5027a
7 changed files with 160 additions and 636 deletions
+2 -1
View File
@@ -15,7 +15,8 @@
- Group video in "video groups". Each video may has sub groups (current "Path" class) - Group video in "video groups". Each video may has sub groups (current "Path" class)
- Simplify database and remove the Path class - Simplify database and remove the Path class
- Use limits for strings? - Use limits for strings?
- Filter non valid UTF-8 data in strings? - Convert to UTF-8 in name strings
- Manage a global database revision number
[Audio] [Audio]
- ReleaseView/ArtistView/GenreView: <All> -> Track count for this special category. Easier: add a special entry '<All>' that contains everything? - ReleaseView/ArtistView/GenreView: <All> -> Track count for this special category. Easier: add a special entry '<All>' that contains everything?
+5
View File
@@ -47,6 +47,11 @@ AC_CHECK_LIB( [boost_filesystem],
, ,
[AC_MSG_ERROR([libboost_filesystem not found!])]) [AC_MSG_ERROR([libboost_filesystem not found!])])
AC_CHECK_LIB( [boost_locale],
[main],
,
[AC_MSG_ERROR([libboost_locale not found!])])
#AC_CHECK_LIB( [boost_thread], #AC_CHECK_LIB( [boost_thread],
# [main], # [main],
# , # ,
+84 -320
View File
@@ -210,9 +210,8 @@ void protobuf_AssignDesc_collection_2eproto() {
AudioCollectionRequest_GetCoverArt_Type_descriptor_ = AudioCollectionRequest_GetCoverArt_descriptor_->enum_type(0); AudioCollectionRequest_GetCoverArt_Type_descriptor_ = AudioCollectionRequest_GetCoverArt_descriptor_->enum_type(0);
AudioCollectionRequest_Type_descriptor_ = AudioCollectionRequest_descriptor_->enum_type(0); AudioCollectionRequest_Type_descriptor_ = AudioCollectionRequest_descriptor_->enum_type(0);
AudioCollectionResponse_descriptor_ = file->message_type(1); AudioCollectionResponse_descriptor_ = file->message_type(1);
static const int AudioCollectionResponse_offsets_[8] = { static const int AudioCollectionResponse_offsets_[7] = {
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, type_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, type_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, error_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, revision_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, revision_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, genre_list_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, genre_list_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, artist_list_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse, artist_list_),
@@ -339,10 +338,9 @@ void protobuf_AssignDesc_collection_2eproto() {
::google::protobuf::MessageFactory::generated_factory(), ::google::protobuf::MessageFactory::generated_factory(),
sizeof(AudioCollectionResponse_Genre)); sizeof(AudioCollectionResponse_Genre));
AudioCollectionResponse_Artist_descriptor_ = AudioCollectionResponse_descriptor_->nested_type(7); AudioCollectionResponse_Artist_descriptor_ = AudioCollectionResponse_descriptor_->nested_type(7);
static const int AudioCollectionResponse_Artist_offsets_[3] = { static const int AudioCollectionResponse_Artist_offsets_[2] = {
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Artist, id_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Artist, id_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Artist, name_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Artist, name_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Artist, nb_releases_),
}; };
AudioCollectionResponse_Artist_reflection_ = AudioCollectionResponse_Artist_reflection_ =
new ::google::protobuf::internal::GeneratedMessageReflection( new ::google::protobuf::internal::GeneratedMessageReflection(
@@ -356,12 +354,9 @@ void protobuf_AssignDesc_collection_2eproto() {
::google::protobuf::MessageFactory::generated_factory(), ::google::protobuf::MessageFactory::generated_factory(),
sizeof(AudioCollectionResponse_Artist)); sizeof(AudioCollectionResponse_Artist));
AudioCollectionResponse_Release_descriptor_ = AudioCollectionResponse_descriptor_->nested_type(8); AudioCollectionResponse_Release_descriptor_ = AudioCollectionResponse_descriptor_->nested_type(8);
static const int AudioCollectionResponse_Release_offsets_[5] = { static const int AudioCollectionResponse_Release_offsets_[2] = {
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, id_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, id_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, name_), GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, name_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, nb_tracks_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, duration_secs_),
GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(AudioCollectionResponse_Release, release_date_),
}; };
AudioCollectionResponse_Release_reflection_ = AudioCollectionResponse_Release_reflection_ =
new ::google::protobuf::internal::GeneratedMessageReflection( new ::google::protobuf::internal::GeneratedMessageReflection(
@@ -530,42 +525,38 @@ void protobuf_AddDesc_collection_2eproto() {
"ack\020\002\"\213\001\n\004Type\022\023\n\017TypeGetRevision\020\001\022\024\n\020T" "ack\020\002\"\213\001\n\004Type\022\023\n\017TypeGetRevision\020\001\022\024\n\020T"
"ypeGetGenreList\020\002\022\025\n\021TypeGetArtistList\020\003" "ypeGetGenreList\020\002\022\025\n\021TypeGetArtistList\020\003"
"\022\026\n\022TypeGetReleaseList\020\004\022\024\n\020TypeGetTrack" "\022\026\n\022TypeGetReleaseList\020\004\022\024\n\020TypeGetTrack"
"List\020\005\022\023\n\017TypeGetCoverArt\020\006\"\345\n\n\027AudioCol" "List\020\005\022\023\n\017TypeGetCoverArt\020\006\"\342\t\n\027AudioCol"
"lectionResponse\0222\n\004type\030\001 \002(\0162$.Remote.A" "lectionResponse\0222\n\004type\030\001 \002(\0162$.Remote.A"
"udioCollectionResponse.Type\022\034\n\005error\030\002 \001" "udioCollectionResponse.Type\022:\n\010revision\030"
"(\0132\r.Remote.Error\022:\n\010revision\030\003 \001(\0132(.Re" "\002 \001(\0132(.Remote.AudioCollectionResponse.R"
"mote.AudioCollectionResponse.Revision\022=\n" "evision\022=\n\ngenre_list\030\003 \001(\0132).Remote.Aud"
"\ngenre_list\030\004 \001(\0132).Remote.AudioCollecti" "ioCollectionResponse.GenreList\022\?\n\013artist"
"onResponse.GenreList\022\?\n\013artist_list\030\005 \001(" "_list\030\004 \001(\0132*.Remote.AudioCollectionResp"
"\0132*.Remote.AudioCollectionResponse.Artis" "onse.ArtistList\022A\n\014release_list\030\005 \001(\0132+."
"tList\022A\n\014release_list\030\006 \001(\0132+.Remote.Aud" "Remote.AudioCollectionResponse.ReleaseLi"
"ioCollectionResponse.ReleaseList\022=\n\ntrac" "st\022=\n\ntrack_list\030\006 \001(\0132).Remote.AudioCol"
"k_list\030\007 \001(\0132).Remote.AudioCollectionRes" "lectionResponse.TrackList\022;\n\tcover_art\030\007"
"ponse.TrackList\022;\n\tcover_art\030\010 \003(\0132(.Rem" " \003(\0132(.Remote.AudioCollectionResponse.Co"
"ote.AudioCollectionResponse.CoverArt\032\027\n\010" "verArt\032\027\n\010Revision\022\013\n\003rev\030\001 \002(\004\032B\n\tGenre"
"Revision\022\013\n\003rev\030\001 \002(\004\032B\n\tGenreList\0225\n\006ge" "List\0225\n\006genres\030\002 \003(\0132%.Remote.AudioColle"
"nres\030\002 \003(\0132%.Remote.AudioCollectionRespo" "ctionResponse.Genre\032E\n\nArtistList\0227\n\007art"
"nse.Genre\032E\n\nArtistList\0227\n\007artists\030\002 \003(\013" "ists\030\002 \003(\0132&.Remote.AudioCollectionRespo"
"2&.Remote.AudioCollectionResponse.Artist" "nse.Artist\032H\n\013ReleaseList\0229\n\010releases\030\002 "
"\032H\n\013ReleaseList\0229\n\010releases\030\002 \003(\0132\'.Remo" "\003(\0132\'.Remote.AudioCollectionResponse.Rel"
"te.AudioCollectionResponse.Release\032B\n\tTr" "ease\032B\n\tTrackList\0225\n\006tracks\030\002 \003(\0132%.Remo"
"ackList\0225\n\006tracks\030\002 \003(\0132%.Remote.AudioCo" "te.AudioCollectionResponse.Track\032+\n\010Cove"
"llectionResponse.Track\032+\n\010CoverArt\022\021\n\tmi" "rArt\022\021\n\tmime_type\030\001 \001(\t\022\014\n\004data\030\002 \002(\014\032!\n"
"me_type\030\001 \001(\t\022\014\n\004data\030\002 \002(\014\032!\n\005Genre\022\n\n\002" "\005Genre\022\n\n\002id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\032\"\n\006Arti"
"id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\0327\n\006Artist\022\n\n\002id\030\001" "st\022\n\n\002id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\032#\n\007Release\022"
" \002(\004\022\014\n\004name\030\002 \002(\t\022\023\n\013nb_releases\030\003 \002(\r\032" "\n\n\002id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\032\321\001\n\005Track\022\n\n\002i"
"c\n\007Release\022\n\n\002id\030\001 \002(\004\022\014\n\004name\030\002 \002(\t\022\021\n\t" "d\030\001 \002(\004\022\021\n\tartist_id\030\002 \002(\004\022\022\n\nrelease_id"
"nb_tracks\030\003 \002(\r\022\025\n\rduration_secs\030\004 \002(\r\022\024" "\030\003 \002(\004\022\020\n\010genre_id\030\004 \003(\004\022\023\n\013disc_number\030"
"\n\014release_date\030\005 \001(\t\032\321\001\n\005Track\022\n\n\002id\030\001 \002" "\005 \001(\r\022\024\n\014track_number\030\006 \001(\r\022\014\n\004name\030\007 \002("
"(\004\022\021\n\tartist_id\030\002 \002(\004\022\022\n\nrelease_id\030\003 \002(" "\t\022\025\n\rduration_secs\030\010 \002(\r\022\024\n\014release_date"
"\004\022\020\n\010genre_id\030\004 \003(\004\022\023\n\013disc_number\030\005 \001(\r" "\030\t \001(\t\022\035\n\025original_release_date\030\n \001(\t\"y\n"
"\022\024\n\014track_number\030\006 \001(\r\022\014\n\004name\030\007 \002(\t\022\025\n\r" "\004Type\022\020\n\014TypeRevision\020\001\022\021\n\rTypeGenreList"
"duration_secs\030\010 \002(\r\022\024\n\014release_date\030\t \001(" "\020\002\022\022\n\016TypeArtistList\020\003\022\023\n\017TypeReleaseLis"
"\t\022\035\n\025original_release_date\030\n \001(\t\"\210\001\n\004Typ" "t\020\004\022\021\n\rTypeTrackList\020\005\022\020\n\014TypeCoverArt\020\006", 2560);
"e\022\r\n\tTypeError\020\001\022\020\n\014TypeRevision\020\002\022\021\n\rTy"
"peGenreList\020\003\022\022\n\016TypeArtistList\020\004\022\023\n\017Typ"
"eReleaseList\020\005\022\021\n\rTypeTrackList\020\006\022\020\n\014Typ"
"eCoverArt\020\007", 2691);
::google::protobuf::MessageFactory::InternalRegisterGeneratedFile( ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
"collection.proto", &protobuf_RegisterTypes); "collection.proto", &protobuf_RegisterTypes);
AudioCollectionRequest::default_instance_ = new AudioCollectionRequest(); AudioCollectionRequest::default_instance_ = new AudioCollectionRequest();
@@ -2873,7 +2864,6 @@ bool AudioCollectionResponse_Type_IsValid(int value) {
case 4: case 4:
case 5: case 5:
case 6: case 6:
case 7:
return true; return true;
default: default:
return false; return false;
@@ -2881,7 +2871,6 @@ bool AudioCollectionResponse_Type_IsValid(int value) {
} }
#ifndef _MSC_VER #ifndef _MSC_VER
const AudioCollectionResponse_Type AudioCollectionResponse::TypeError;
const AudioCollectionResponse_Type AudioCollectionResponse::TypeRevision; const AudioCollectionResponse_Type AudioCollectionResponse::TypeRevision;
const AudioCollectionResponse_Type AudioCollectionResponse::TypeGenreList; const AudioCollectionResponse_Type AudioCollectionResponse::TypeGenreList;
const AudioCollectionResponse_Type AudioCollectionResponse::TypeArtistList; const AudioCollectionResponse_Type AudioCollectionResponse::TypeArtistList;
@@ -4468,7 +4457,6 @@ void AudioCollectionResponse_Genre::Swap(AudioCollectionResponse_Genre* other) {
#ifndef _MSC_VER #ifndef _MSC_VER
const int AudioCollectionResponse_Artist::kIdFieldNumber; const int AudioCollectionResponse_Artist::kIdFieldNumber;
const int AudioCollectionResponse_Artist::kNameFieldNumber; const int AudioCollectionResponse_Artist::kNameFieldNumber;
const int AudioCollectionResponse_Artist::kNbReleasesFieldNumber;
#endif // !_MSC_VER #endif // !_MSC_VER
AudioCollectionResponse_Artist::AudioCollectionResponse_Artist() AudioCollectionResponse_Artist::AudioCollectionResponse_Artist()
@@ -4489,7 +4477,6 @@ void AudioCollectionResponse_Artist::SharedCtor() {
_cached_size_ = 0; _cached_size_ = 0;
id_ = GOOGLE_ULONGLONG(0); id_ = GOOGLE_ULONGLONG(0);
name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
nb_releases_ = 0u;
::memset(_has_bits_, 0, sizeof(_has_bits_)); ::memset(_has_bits_, 0, sizeof(_has_bits_));
} }
@@ -4534,7 +4521,6 @@ void AudioCollectionResponse_Artist::Clear() {
name_->clear(); name_->clear();
} }
} }
nb_releases_ = 0u;
} }
::memset(_has_bits_, 0, sizeof(_has_bits_)); ::memset(_has_bits_, 0, sizeof(_has_bits_));
mutable_unknown_fields()->Clear(); mutable_unknown_fields()->Clear();
@@ -4574,22 +4560,6 @@ bool AudioCollectionResponse_Artist::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(24)) goto parse_nb_releases;
break;
}
// required uint32 nb_releases = 3;
case 3: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
parse_nb_releases:
DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
input, &nb_releases_)));
set_has_nb_releases();
} else {
goto handle_uninterpreted;
}
if (input->ExpectAtEnd()) return true; if (input->ExpectAtEnd()) return true;
break; break;
} }
@@ -4626,11 +4596,6 @@ void AudioCollectionResponse_Artist::SerializeWithCachedSizes(
2, this->name(), output); 2, this->name(), output);
} }
// required uint32 nb_releases = 3;
if (has_nb_releases()) {
::google::protobuf::internal::WireFormatLite::WriteUInt32(3, this->nb_releases(), output);
}
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
::google::protobuf::internal::WireFormat::SerializeUnknownFields( ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
unknown_fields(), output); unknown_fields(), output);
@@ -4654,11 +4619,6 @@ void AudioCollectionResponse_Artist::SerializeWithCachedSizes(
2, this->name(), target); 2, this->name(), target);
} }
// required uint32 nb_releases = 3;
if (has_nb_releases()) {
target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(3, this->nb_releases(), target);
}
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
unknown_fields(), target); unknown_fields(), target);
@@ -4684,13 +4644,6 @@ int AudioCollectionResponse_Artist::ByteSize() const {
this->name()); this->name());
} }
// required uint32 nb_releases = 3;
if (has_nb_releases()) {
total_size += 1 +
::google::protobuf::internal::WireFormatLite::UInt32Size(
this->nb_releases());
}
} }
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
total_size += total_size +=
@@ -4724,9 +4677,6 @@ void AudioCollectionResponse_Artist::MergeFrom(const AudioCollectionResponse_Art
if (from.has_name()) { if (from.has_name()) {
set_name(from.name()); set_name(from.name());
} }
if (from.has_nb_releases()) {
set_nb_releases(from.nb_releases());
}
} }
mutable_unknown_fields()->MergeFrom(from.unknown_fields()); mutable_unknown_fields()->MergeFrom(from.unknown_fields());
} }
@@ -4744,7 +4694,7 @@ void AudioCollectionResponse_Artist::CopyFrom(const AudioCollectionResponse_Arti
} }
bool AudioCollectionResponse_Artist::IsInitialized() const { bool AudioCollectionResponse_Artist::IsInitialized() const {
if ((_has_bits_[0] & 0x00000007) != 0x00000007) return false; if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
return true; return true;
} }
@@ -4753,7 +4703,6 @@ void AudioCollectionResponse_Artist::Swap(AudioCollectionResponse_Artist* other)
if (other != this) { if (other != this) {
std::swap(id_, other->id_); std::swap(id_, other->id_);
std::swap(name_, other->name_); std::swap(name_, other->name_);
std::swap(nb_releases_, other->nb_releases_);
std::swap(_has_bits_[0], other->_has_bits_[0]); std::swap(_has_bits_[0], other->_has_bits_[0]);
_unknown_fields_.Swap(&other->_unknown_fields_); _unknown_fields_.Swap(&other->_unknown_fields_);
std::swap(_cached_size_, other->_cached_size_); std::swap(_cached_size_, other->_cached_size_);
@@ -4774,9 +4723,6 @@ void AudioCollectionResponse_Artist::Swap(AudioCollectionResponse_Artist* other)
#ifndef _MSC_VER #ifndef _MSC_VER
const int AudioCollectionResponse_Release::kIdFieldNumber; const int AudioCollectionResponse_Release::kIdFieldNumber;
const int AudioCollectionResponse_Release::kNameFieldNumber; const int AudioCollectionResponse_Release::kNameFieldNumber;
const int AudioCollectionResponse_Release::kNbTracksFieldNumber;
const int AudioCollectionResponse_Release::kDurationSecsFieldNumber;
const int AudioCollectionResponse_Release::kReleaseDateFieldNumber;
#endif // !_MSC_VER #endif // !_MSC_VER
AudioCollectionResponse_Release::AudioCollectionResponse_Release() AudioCollectionResponse_Release::AudioCollectionResponse_Release()
@@ -4797,9 +4743,6 @@ void AudioCollectionResponse_Release::SharedCtor() {
_cached_size_ = 0; _cached_size_ = 0;
id_ = GOOGLE_ULONGLONG(0); id_ = GOOGLE_ULONGLONG(0);
name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString); name_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
nb_tracks_ = 0u;
duration_secs_ = 0u;
release_date_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
::memset(_has_bits_, 0, sizeof(_has_bits_)); ::memset(_has_bits_, 0, sizeof(_has_bits_));
} }
@@ -4811,9 +4754,6 @@ void AudioCollectionResponse_Release::SharedDtor() {
if (name_ != &::google::protobuf::internal::kEmptyString) { if (name_ != &::google::protobuf::internal::kEmptyString) {
delete name_; delete name_;
} }
if (release_date_ != &::google::protobuf::internal::kEmptyString) {
delete release_date_;
}
if (this != default_instance_) { if (this != default_instance_) {
} }
} }
@@ -4847,13 +4787,6 @@ void AudioCollectionResponse_Release::Clear() {
name_->clear(); name_->clear();
} }
} }
nb_tracks_ = 0u;
duration_secs_ = 0u;
if (has_release_date()) {
if (release_date_ != &::google::protobuf::internal::kEmptyString) {
release_date_->clear();
}
}
} }
::memset(_has_bits_, 0, sizeof(_has_bits_)); ::memset(_has_bits_, 0, sizeof(_has_bits_));
mutable_unknown_fields()->Clear(); mutable_unknown_fields()->Clear();
@@ -4893,55 +4826,6 @@ bool AudioCollectionResponse_Release::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(24)) goto parse_nb_tracks;
break;
}
// required uint32 nb_tracks = 3;
case 3: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
parse_nb_tracks:
DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
input, &nb_tracks_)));
set_has_nb_tracks();
} else {
goto handle_uninterpreted;
}
if (input->ExpectTag(32)) goto parse_duration_secs;
break;
}
// required uint32 duration_secs = 4;
case 4: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_VARINT) {
parse_duration_secs:
DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
::google::protobuf::uint32, ::google::protobuf::internal::WireFormatLite::TYPE_UINT32>(
input, &duration_secs_)));
set_has_duration_secs();
} else {
goto handle_uninterpreted;
}
if (input->ExpectTag(42)) goto parse_release_date;
break;
}
// optional string release_date = 5;
case 5: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_release_date:
DO_(::google::protobuf::internal::WireFormatLite::ReadString(
input, this->mutable_release_date()));
::google::protobuf::internal::WireFormat::VerifyUTF8String(
this->release_date().data(), this->release_date().length(),
::google::protobuf::internal::WireFormat::PARSE);
} else {
goto handle_uninterpreted;
}
if (input->ExpectAtEnd()) return true; if (input->ExpectAtEnd()) return true;
break; break;
} }
@@ -4978,25 +4862,6 @@ void AudioCollectionResponse_Release::SerializeWithCachedSizes(
2, this->name(), output); 2, this->name(), output);
} }
// required uint32 nb_tracks = 3;
if (has_nb_tracks()) {
::google::protobuf::internal::WireFormatLite::WriteUInt32(3, this->nb_tracks(), output);
}
// required uint32 duration_secs = 4;
if (has_duration_secs()) {
::google::protobuf::internal::WireFormatLite::WriteUInt32(4, this->duration_secs(), output);
}
// optional string release_date = 5;
if (has_release_date()) {
::google::protobuf::internal::WireFormat::VerifyUTF8String(
this->release_date().data(), this->release_date().length(),
::google::protobuf::internal::WireFormat::SERIALIZE);
::google::protobuf::internal::WireFormatLite::WriteString(
5, this->release_date(), output);
}
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
::google::protobuf::internal::WireFormat::SerializeUnknownFields( ::google::protobuf::internal::WireFormat::SerializeUnknownFields(
unknown_fields(), output); unknown_fields(), output);
@@ -5020,26 +4885,6 @@ void AudioCollectionResponse_Release::SerializeWithCachedSizes(
2, this->name(), target); 2, this->name(), target);
} }
// required uint32 nb_tracks = 3;
if (has_nb_tracks()) {
target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(3, this->nb_tracks(), target);
}
// required uint32 duration_secs = 4;
if (has_duration_secs()) {
target = ::google::protobuf::internal::WireFormatLite::WriteUInt32ToArray(4, this->duration_secs(), target);
}
// optional string release_date = 5;
if (has_release_date()) {
::google::protobuf::internal::WireFormat::VerifyUTF8String(
this->release_date().data(), this->release_date().length(),
::google::protobuf::internal::WireFormat::SERIALIZE);
target =
::google::protobuf::internal::WireFormatLite::WriteStringToArray(
5, this->release_date(), target);
}
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray(
unknown_fields(), target); unknown_fields(), target);
@@ -5065,27 +4910,6 @@ int AudioCollectionResponse_Release::ByteSize() const {
this->name()); this->name());
} }
// required uint32 nb_tracks = 3;
if (has_nb_tracks()) {
total_size += 1 +
::google::protobuf::internal::WireFormatLite::UInt32Size(
this->nb_tracks());
}
// required uint32 duration_secs = 4;
if (has_duration_secs()) {
total_size += 1 +
::google::protobuf::internal::WireFormatLite::UInt32Size(
this->duration_secs());
}
// optional string release_date = 5;
if (has_release_date()) {
total_size += 1 +
::google::protobuf::internal::WireFormatLite::StringSize(
this->release_date());
}
} }
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
total_size += total_size +=
@@ -5119,15 +4943,6 @@ void AudioCollectionResponse_Release::MergeFrom(const AudioCollectionResponse_Re
if (from.has_name()) { if (from.has_name()) {
set_name(from.name()); set_name(from.name());
} }
if (from.has_nb_tracks()) {
set_nb_tracks(from.nb_tracks());
}
if (from.has_duration_secs()) {
set_duration_secs(from.duration_secs());
}
if (from.has_release_date()) {
set_release_date(from.release_date());
}
} }
mutable_unknown_fields()->MergeFrom(from.unknown_fields()); mutable_unknown_fields()->MergeFrom(from.unknown_fields());
} }
@@ -5145,7 +4960,7 @@ void AudioCollectionResponse_Release::CopyFrom(const AudioCollectionResponse_Rel
} }
bool AudioCollectionResponse_Release::IsInitialized() const { bool AudioCollectionResponse_Release::IsInitialized() const {
if ((_has_bits_[0] & 0x0000000f) != 0x0000000f) return false; if ((_has_bits_[0] & 0x00000003) != 0x00000003) return false;
return true; return true;
} }
@@ -5154,9 +4969,6 @@ void AudioCollectionResponse_Release::Swap(AudioCollectionResponse_Release* othe
if (other != this) { if (other != this) {
std::swap(id_, other->id_); std::swap(id_, other->id_);
std::swap(name_, other->name_); std::swap(name_, other->name_);
std::swap(nb_tracks_, other->nb_tracks_);
std::swap(duration_secs_, other->duration_secs_);
std::swap(release_date_, other->release_date_);
std::swap(_has_bits_[0], other->_has_bits_[0]); std::swap(_has_bits_[0], other->_has_bits_[0]);
_unknown_fields_.Swap(&other->_unknown_fields_); _unknown_fields_.Swap(&other->_unknown_fields_);
std::swap(_cached_size_, other->_cached_size_); std::swap(_cached_size_, other->_cached_size_);
@@ -5810,7 +5622,6 @@ void AudioCollectionResponse_Track::Swap(AudioCollectionResponse_Track* other) {
#ifndef _MSC_VER #ifndef _MSC_VER
const int AudioCollectionResponse::kTypeFieldNumber; const int AudioCollectionResponse::kTypeFieldNumber;
const int AudioCollectionResponse::kErrorFieldNumber;
const int AudioCollectionResponse::kRevisionFieldNumber; const int AudioCollectionResponse::kRevisionFieldNumber;
const int AudioCollectionResponse::kGenreListFieldNumber; const int AudioCollectionResponse::kGenreListFieldNumber;
const int AudioCollectionResponse::kArtistListFieldNumber; const int AudioCollectionResponse::kArtistListFieldNumber;
@@ -5825,7 +5636,6 @@ AudioCollectionResponse::AudioCollectionResponse()
} }
void AudioCollectionResponse::InitAsDefaultInstance() { void AudioCollectionResponse::InitAsDefaultInstance() {
error_ = const_cast< ::Remote::Error*>(&::Remote::Error::default_instance());
revision_ = const_cast< ::Remote::AudioCollectionResponse_Revision*>(&::Remote::AudioCollectionResponse_Revision::default_instance()); revision_ = const_cast< ::Remote::AudioCollectionResponse_Revision*>(&::Remote::AudioCollectionResponse_Revision::default_instance());
genre_list_ = const_cast< ::Remote::AudioCollectionResponse_GenreList*>(&::Remote::AudioCollectionResponse_GenreList::default_instance()); genre_list_ = const_cast< ::Remote::AudioCollectionResponse_GenreList*>(&::Remote::AudioCollectionResponse_GenreList::default_instance());
artist_list_ = const_cast< ::Remote::AudioCollectionResponse_ArtistList*>(&::Remote::AudioCollectionResponse_ArtistList::default_instance()); artist_list_ = const_cast< ::Remote::AudioCollectionResponse_ArtistList*>(&::Remote::AudioCollectionResponse_ArtistList::default_instance());
@@ -5842,7 +5652,6 @@ AudioCollectionResponse::AudioCollectionResponse(const AudioCollectionResponse&
void AudioCollectionResponse::SharedCtor() { void AudioCollectionResponse::SharedCtor() {
_cached_size_ = 0; _cached_size_ = 0;
type_ = 1; type_ = 1;
error_ = NULL;
revision_ = NULL; revision_ = NULL;
genre_list_ = NULL; genre_list_ = NULL;
artist_list_ = NULL; artist_list_ = NULL;
@@ -5857,7 +5666,6 @@ AudioCollectionResponse::~AudioCollectionResponse() {
void AudioCollectionResponse::SharedDtor() { void AudioCollectionResponse::SharedDtor() {
if (this != default_instance_) { if (this != default_instance_) {
delete error_;
delete revision_; delete revision_;
delete genre_list_; delete genre_list_;
delete artist_list_; delete artist_list_;
@@ -5890,9 +5698,6 @@ AudioCollectionResponse* AudioCollectionResponse::New() const {
void AudioCollectionResponse::Clear() { void AudioCollectionResponse::Clear() {
if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) { if (_has_bits_[0 / 32] & (0xffu << (0 % 32))) {
type_ = 1; type_ = 1;
if (has_error()) {
if (error_ != NULL) error_->::Remote::Error::Clear();
}
if (has_revision()) { if (has_revision()) {
if (revision_ != NULL) revision_->::Remote::AudioCollectionResponse_Revision::Clear(); if (revision_ != NULL) revision_->::Remote::AudioCollectionResponse_Revision::Clear();
} }
@@ -5936,26 +5741,12 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(18)) goto parse_error; if (input->ExpectTag(18)) goto parse_revision;
break; break;
} }
// optional .Remote.Error error = 2; // optional .Remote.AudioCollectionResponse.Revision revision = 2;
case 2: { case 2: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_error:
DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
input, mutable_error()));
} else {
goto handle_uninterpreted;
}
if (input->ExpectTag(26)) goto parse_revision;
break;
}
// optional .Remote.AudioCollectionResponse.Revision revision = 3;
case 3: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_revision: parse_revision:
@@ -5964,12 +5755,12 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(34)) goto parse_genre_list; if (input->ExpectTag(26)) goto parse_genre_list;
break; break;
} }
// optional .Remote.AudioCollectionResponse.GenreList genre_list = 4; // optional .Remote.AudioCollectionResponse.GenreList genre_list = 3;
case 4: { case 3: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_genre_list: parse_genre_list:
@@ -5978,12 +5769,12 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(42)) goto parse_artist_list; if (input->ExpectTag(34)) goto parse_artist_list;
break; break;
} }
// optional .Remote.AudioCollectionResponse.ArtistList artist_list = 5; // optional .Remote.AudioCollectionResponse.ArtistList artist_list = 4;
case 5: { case 4: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_artist_list: parse_artist_list:
@@ -5992,12 +5783,12 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(50)) goto parse_release_list; if (input->ExpectTag(42)) goto parse_release_list;
break; break;
} }
// optional .Remote.AudioCollectionResponse.ReleaseList release_list = 6; // optional .Remote.AudioCollectionResponse.ReleaseList release_list = 5;
case 6: { case 5: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_release_list: parse_release_list:
@@ -6006,12 +5797,12 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(58)) goto parse_track_list; if (input->ExpectTag(50)) goto parse_track_list;
break; break;
} }
// optional .Remote.AudioCollectionResponse.TrackList track_list = 7; // optional .Remote.AudioCollectionResponse.TrackList track_list = 6;
case 7: { case 6: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_track_list: parse_track_list:
@@ -6020,12 +5811,12 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(66)) goto parse_cover_art; if (input->ExpectTag(58)) goto parse_cover_art;
break; break;
} }
// repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 8; // repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 7;
case 8: { case 7: {
if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) == if (::google::protobuf::internal::WireFormatLite::GetTagWireType(tag) ==
::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) { ::google::protobuf::internal::WireFormatLite::WIRETYPE_LENGTH_DELIMITED) {
parse_cover_art: parse_cover_art:
@@ -6034,7 +5825,7 @@ bool AudioCollectionResponse::MergePartialFromCodedStream(
} else { } else {
goto handle_uninterpreted; goto handle_uninterpreted;
} }
if (input->ExpectTag(66)) goto parse_cover_art; if (input->ExpectTag(58)) goto parse_cover_art;
if (input->ExpectAtEnd()) return true; if (input->ExpectAtEnd()) return true;
break; break;
} }
@@ -6063,46 +5854,40 @@ void AudioCollectionResponse::SerializeWithCachedSizes(
1, this->type(), output); 1, this->type(), output);
} }
// optional .Remote.Error error = 2; // optional .Remote.AudioCollectionResponse.Revision revision = 2;
if (has_error()) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
2, this->error(), output);
}
// optional .Remote.AudioCollectionResponse.Revision revision = 3;
if (has_revision()) { if (has_revision()) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
3, this->revision(), output); 2, this->revision(), output);
} }
// optional .Remote.AudioCollectionResponse.GenreList genre_list = 4; // optional .Remote.AudioCollectionResponse.GenreList genre_list = 3;
if (has_genre_list()) { if (has_genre_list()) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
4, this->genre_list(), output); 3, this->genre_list(), output);
} }
// optional .Remote.AudioCollectionResponse.ArtistList artist_list = 5; // optional .Remote.AudioCollectionResponse.ArtistList artist_list = 4;
if (has_artist_list()) { if (has_artist_list()) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
5, this->artist_list(), output); 4, this->artist_list(), output);
} }
// optional .Remote.AudioCollectionResponse.ReleaseList release_list = 6; // optional .Remote.AudioCollectionResponse.ReleaseList release_list = 5;
if (has_release_list()) { if (has_release_list()) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
6, this->release_list(), output); 5, this->release_list(), output);
} }
// optional .Remote.AudioCollectionResponse.TrackList track_list = 7; // optional .Remote.AudioCollectionResponse.TrackList track_list = 6;
if (has_track_list()) { if (has_track_list()) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
7, this->track_list(), output); 6, this->track_list(), output);
} }
// repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 8; // repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 7;
for (int i = 0; i < this->cover_art_size(); i++) { for (int i = 0; i < this->cover_art_size(); i++) {
::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray( ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
8, this->cover_art(i), output); 7, this->cover_art(i), output);
} }
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
@@ -6119,53 +5904,46 @@ void AudioCollectionResponse::SerializeWithCachedSizes(
1, this->type(), target); 1, this->type(), target);
} }
// optional .Remote.Error error = 2; // optional .Remote.AudioCollectionResponse.Revision revision = 2;
if (has_error()) {
target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray(
2, this->error(), target);
}
// optional .Remote.AudioCollectionResponse.Revision revision = 3;
if (has_revision()) { if (has_revision()) {
target = ::google::protobuf::internal::WireFormatLite:: target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray( WriteMessageNoVirtualToArray(
3, this->revision(), target); 2, this->revision(), target);
} }
// optional .Remote.AudioCollectionResponse.GenreList genre_list = 4; // optional .Remote.AudioCollectionResponse.GenreList genre_list = 3;
if (has_genre_list()) { if (has_genre_list()) {
target = ::google::protobuf::internal::WireFormatLite:: target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray( WriteMessageNoVirtualToArray(
4, this->genre_list(), target); 3, this->genre_list(), target);
} }
// optional .Remote.AudioCollectionResponse.ArtistList artist_list = 5; // optional .Remote.AudioCollectionResponse.ArtistList artist_list = 4;
if (has_artist_list()) { if (has_artist_list()) {
target = ::google::protobuf::internal::WireFormatLite:: target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray( WriteMessageNoVirtualToArray(
5, this->artist_list(), target); 4, this->artist_list(), target);
} }
// optional .Remote.AudioCollectionResponse.ReleaseList release_list = 6; // optional .Remote.AudioCollectionResponse.ReleaseList release_list = 5;
if (has_release_list()) { if (has_release_list()) {
target = ::google::protobuf::internal::WireFormatLite:: target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray( WriteMessageNoVirtualToArray(
6, this->release_list(), target); 5, this->release_list(), target);
} }
// optional .Remote.AudioCollectionResponse.TrackList track_list = 7; // optional .Remote.AudioCollectionResponse.TrackList track_list = 6;
if (has_track_list()) { if (has_track_list()) {
target = ::google::protobuf::internal::WireFormatLite:: target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray( WriteMessageNoVirtualToArray(
7, this->track_list(), target); 6, this->track_list(), target);
} }
// repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 8; // repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 7;
for (int i = 0; i < this->cover_art_size(); i++) { for (int i = 0; i < this->cover_art_size(); i++) {
target = ::google::protobuf::internal::WireFormatLite:: target = ::google::protobuf::internal::WireFormatLite::
WriteMessageNoVirtualToArray( WriteMessageNoVirtualToArray(
8, this->cover_art(i), target); 7, this->cover_art(i), target);
} }
if (!unknown_fields().empty()) { if (!unknown_fields().empty()) {
@@ -6185,42 +5963,35 @@ int AudioCollectionResponse::ByteSize() const {
::google::protobuf::internal::WireFormatLite::EnumSize(this->type()); ::google::protobuf::internal::WireFormatLite::EnumSize(this->type());
} }
// optional .Remote.Error error = 2; // optional .Remote.AudioCollectionResponse.Revision revision = 2;
if (has_error()) {
total_size += 1 +
::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
this->error());
}
// optional .Remote.AudioCollectionResponse.Revision revision = 3;
if (has_revision()) { if (has_revision()) {
total_size += 1 + total_size += 1 +
::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
this->revision()); this->revision());
} }
// optional .Remote.AudioCollectionResponse.GenreList genre_list = 4; // optional .Remote.AudioCollectionResponse.GenreList genre_list = 3;
if (has_genre_list()) { if (has_genre_list()) {
total_size += 1 + total_size += 1 +
::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
this->genre_list()); this->genre_list());
} }
// optional .Remote.AudioCollectionResponse.ArtistList artist_list = 5; // optional .Remote.AudioCollectionResponse.ArtistList artist_list = 4;
if (has_artist_list()) { if (has_artist_list()) {
total_size += 1 + total_size += 1 +
::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
this->artist_list()); this->artist_list());
} }
// optional .Remote.AudioCollectionResponse.ReleaseList release_list = 6; // optional .Remote.AudioCollectionResponse.ReleaseList release_list = 5;
if (has_release_list()) { if (has_release_list()) {
total_size += 1 + total_size += 1 +
::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
this->release_list()); this->release_list());
} }
// optional .Remote.AudioCollectionResponse.TrackList track_list = 7; // optional .Remote.AudioCollectionResponse.TrackList track_list = 6;
if (has_track_list()) { if (has_track_list()) {
total_size += 1 + total_size += 1 +
::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual( ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
@@ -6228,7 +5999,7 @@ int AudioCollectionResponse::ByteSize() const {
} }
} }
// repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 8; // repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 7;
total_size += 1 * this->cover_art_size(); total_size += 1 * this->cover_art_size();
for (int i = 0; i < this->cover_art_size(); i++) { for (int i = 0; i < this->cover_art_size(); i++) {
total_size += total_size +=
@@ -6266,9 +6037,6 @@ void AudioCollectionResponse::MergeFrom(const AudioCollectionResponse& from) {
if (from.has_type()) { if (from.has_type()) {
set_type(from.type()); set_type(from.type());
} }
if (from.has_error()) {
mutable_error()->::Remote::Error::MergeFrom(from.error());
}
if (from.has_revision()) { if (from.has_revision()) {
mutable_revision()->::Remote::AudioCollectionResponse_Revision::MergeFrom(from.revision()); mutable_revision()->::Remote::AudioCollectionResponse_Revision::MergeFrom(from.revision());
} }
@@ -6303,9 +6071,6 @@ void AudioCollectionResponse::CopyFrom(const AudioCollectionResponse& from) {
bool AudioCollectionResponse::IsInitialized() const { bool AudioCollectionResponse::IsInitialized() const {
if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false; if ((_has_bits_[0] & 0x00000001) != 0x00000001) return false;
if (has_error()) {
if (!this->error().IsInitialized()) return false;
}
if (has_revision()) { if (has_revision()) {
if (!this->revision().IsInitialized()) return false; if (!this->revision().IsInitialized()) return false;
} }
@@ -6330,7 +6095,6 @@ bool AudioCollectionResponse::IsInitialized() const {
void AudioCollectionResponse::Swap(AudioCollectionResponse* other) { void AudioCollectionResponse::Swap(AudioCollectionResponse* other) {
if (other != this) { if (other != this) {
std::swap(type_, other->type_); std::swap(type_, other->type_);
std::swap(error_, other->error_);
std::swap(revision_, other->revision_); std::swap(revision_, other->revision_);
std::swap(genre_list_, other->genre_list_); std::swap(genre_list_, other->genre_list_);
std::swap(artist_list_, other->artist_list_); std::swap(artist_list_, other->artist_list_);
+43 -276
View File
@@ -97,16 +97,15 @@ inline bool AudioCollectionRequest_Type_Parse(
AudioCollectionRequest_Type_descriptor(), name, value); AudioCollectionRequest_Type_descriptor(), name, value);
} }
enum AudioCollectionResponse_Type { enum AudioCollectionResponse_Type {
AudioCollectionResponse_Type_TypeError = 1, AudioCollectionResponse_Type_TypeRevision = 1,
AudioCollectionResponse_Type_TypeRevision = 2, AudioCollectionResponse_Type_TypeGenreList = 2,
AudioCollectionResponse_Type_TypeGenreList = 3, AudioCollectionResponse_Type_TypeArtistList = 3,
AudioCollectionResponse_Type_TypeArtistList = 4, AudioCollectionResponse_Type_TypeReleaseList = 4,
AudioCollectionResponse_Type_TypeReleaseList = 5, AudioCollectionResponse_Type_TypeTrackList = 5,
AudioCollectionResponse_Type_TypeTrackList = 6, AudioCollectionResponse_Type_TypeCoverArt = 6
AudioCollectionResponse_Type_TypeCoverArt = 7
}; };
bool AudioCollectionResponse_Type_IsValid(int value); bool AudioCollectionResponse_Type_IsValid(int value);
const AudioCollectionResponse_Type AudioCollectionResponse_Type_Type_MIN = AudioCollectionResponse_Type_TypeError; const AudioCollectionResponse_Type AudioCollectionResponse_Type_Type_MIN = AudioCollectionResponse_Type_TypeRevision;
const AudioCollectionResponse_Type AudioCollectionResponse_Type_Type_MAX = AudioCollectionResponse_Type_TypeCoverArt; const AudioCollectionResponse_Type AudioCollectionResponse_Type_Type_MAX = AudioCollectionResponse_Type_TypeCoverArt;
const int AudioCollectionResponse_Type_Type_ARRAYSIZE = AudioCollectionResponse_Type_Type_MAX + 1; const int AudioCollectionResponse_Type_Type_ARRAYSIZE = AudioCollectionResponse_Type_Type_MAX + 1;
@@ -1635,30 +1634,20 @@ class AudioCollectionResponse_Artist : public ::google::protobuf::Message {
inline ::std::string* release_name(); inline ::std::string* release_name();
inline void set_allocated_name(::std::string* name); inline void set_allocated_name(::std::string* name);
// required uint32 nb_releases = 3;
inline bool has_nb_releases() const;
inline void clear_nb_releases();
static const int kNbReleasesFieldNumber = 3;
inline ::google::protobuf::uint32 nb_releases() const;
inline void set_nb_releases(::google::protobuf::uint32 value);
// @@protoc_insertion_point(class_scope:Remote.AudioCollectionResponse.Artist) // @@protoc_insertion_point(class_scope:Remote.AudioCollectionResponse.Artist)
private: private:
inline void set_has_id(); inline void set_has_id();
inline void clear_has_id(); inline void clear_has_id();
inline void set_has_name(); inline void set_has_name();
inline void clear_has_name(); inline void clear_has_name();
inline void set_has_nb_releases();
inline void clear_has_nb_releases();
::google::protobuf::UnknownFieldSet _unknown_fields_; ::google::protobuf::UnknownFieldSet _unknown_fields_;
::google::protobuf::uint64 id_; ::google::protobuf::uint64 id_;
::std::string* name_; ::std::string* name_;
::google::protobuf::uint32 nb_releases_;
mutable int _cached_size_; mutable int _cached_size_;
::google::protobuf::uint32 _has_bits_[(3 + 31) / 32]; ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
friend void protobuf_AddDesc_collection_2eproto(); friend void protobuf_AddDesc_collection_2eproto();
friend void protobuf_AssignDesc_collection_2eproto(); friend void protobuf_AssignDesc_collection_2eproto();
@@ -1742,55 +1731,20 @@ class AudioCollectionResponse_Release : public ::google::protobuf::Message {
inline ::std::string* release_name(); inline ::std::string* release_name();
inline void set_allocated_name(::std::string* name); inline void set_allocated_name(::std::string* name);
// required uint32 nb_tracks = 3;
inline bool has_nb_tracks() const;
inline void clear_nb_tracks();
static const int kNbTracksFieldNumber = 3;
inline ::google::protobuf::uint32 nb_tracks() const;
inline void set_nb_tracks(::google::protobuf::uint32 value);
// required uint32 duration_secs = 4;
inline bool has_duration_secs() const;
inline void clear_duration_secs();
static const int kDurationSecsFieldNumber = 4;
inline ::google::protobuf::uint32 duration_secs() const;
inline void set_duration_secs(::google::protobuf::uint32 value);
// optional string release_date = 5;
inline bool has_release_date() const;
inline void clear_release_date();
static const int kReleaseDateFieldNumber = 5;
inline const ::std::string& release_date() const;
inline void set_release_date(const ::std::string& value);
inline void set_release_date(const char* value);
inline void set_release_date(const char* value, size_t size);
inline ::std::string* mutable_release_date();
inline ::std::string* release_release_date();
inline void set_allocated_release_date(::std::string* release_date);
// @@protoc_insertion_point(class_scope:Remote.AudioCollectionResponse.Release) // @@protoc_insertion_point(class_scope:Remote.AudioCollectionResponse.Release)
private: private:
inline void set_has_id(); inline void set_has_id();
inline void clear_has_id(); inline void clear_has_id();
inline void set_has_name(); inline void set_has_name();
inline void clear_has_name(); inline void clear_has_name();
inline void set_has_nb_tracks();
inline void clear_has_nb_tracks();
inline void set_has_duration_secs();
inline void clear_has_duration_secs();
inline void set_has_release_date();
inline void clear_has_release_date();
::google::protobuf::UnknownFieldSet _unknown_fields_; ::google::protobuf::UnknownFieldSet _unknown_fields_;
::google::protobuf::uint64 id_; ::google::protobuf::uint64 id_;
::std::string* name_; ::std::string* name_;
::google::protobuf::uint32 nb_tracks_;
::google::protobuf::uint32 duration_secs_;
::std::string* release_date_;
mutable int _cached_size_; mutable int _cached_size_;
::google::protobuf::uint32 _has_bits_[(5 + 31) / 32]; ::google::protobuf::uint32 _has_bits_[(2 + 31) / 32];
friend void protobuf_AddDesc_collection_2eproto(); friend void protobuf_AddDesc_collection_2eproto();
friend void protobuf_AssignDesc_collection_2eproto(); friend void protobuf_AssignDesc_collection_2eproto();
@@ -2055,7 +2009,6 @@ class AudioCollectionResponse : public ::google::protobuf::Message {
typedef AudioCollectionResponse_Track Track; typedef AudioCollectionResponse_Track Track;
typedef AudioCollectionResponse_Type Type; typedef AudioCollectionResponse_Type Type;
static const Type TypeError = AudioCollectionResponse_Type_TypeError;
static const Type TypeRevision = AudioCollectionResponse_Type_TypeRevision; static const Type TypeRevision = AudioCollectionResponse_Type_TypeRevision;
static const Type TypeGenreList = AudioCollectionResponse_Type_TypeGenreList; static const Type TypeGenreList = AudioCollectionResponse_Type_TypeGenreList;
static const Type TypeArtistList = AudioCollectionResponse_Type_TypeArtistList; static const Type TypeArtistList = AudioCollectionResponse_Type_TypeArtistList;
@@ -2092,64 +2045,55 @@ class AudioCollectionResponse : public ::google::protobuf::Message {
inline ::Remote::AudioCollectionResponse_Type type() const; inline ::Remote::AudioCollectionResponse_Type type() const;
inline void set_type(::Remote::AudioCollectionResponse_Type value); inline void set_type(::Remote::AudioCollectionResponse_Type value);
// optional .Remote.Error error = 2; // optional .Remote.AudioCollectionResponse.Revision revision = 2;
inline bool has_error() const;
inline void clear_error();
static const int kErrorFieldNumber = 2;
inline const ::Remote::Error& error() const;
inline ::Remote::Error* mutable_error();
inline ::Remote::Error* release_error();
inline void set_allocated_error(::Remote::Error* error);
// optional .Remote.AudioCollectionResponse.Revision revision = 3;
inline bool has_revision() const; inline bool has_revision() const;
inline void clear_revision(); inline void clear_revision();
static const int kRevisionFieldNumber = 3; static const int kRevisionFieldNumber = 2;
inline const ::Remote::AudioCollectionResponse_Revision& revision() const; inline const ::Remote::AudioCollectionResponse_Revision& revision() const;
inline ::Remote::AudioCollectionResponse_Revision* mutable_revision(); inline ::Remote::AudioCollectionResponse_Revision* mutable_revision();
inline ::Remote::AudioCollectionResponse_Revision* release_revision(); inline ::Remote::AudioCollectionResponse_Revision* release_revision();
inline void set_allocated_revision(::Remote::AudioCollectionResponse_Revision* revision); inline void set_allocated_revision(::Remote::AudioCollectionResponse_Revision* revision);
// optional .Remote.AudioCollectionResponse.GenreList genre_list = 4; // optional .Remote.AudioCollectionResponse.GenreList genre_list = 3;
inline bool has_genre_list() const; inline bool has_genre_list() const;
inline void clear_genre_list(); inline void clear_genre_list();
static const int kGenreListFieldNumber = 4; static const int kGenreListFieldNumber = 3;
inline const ::Remote::AudioCollectionResponse_GenreList& genre_list() const; inline const ::Remote::AudioCollectionResponse_GenreList& genre_list() const;
inline ::Remote::AudioCollectionResponse_GenreList* mutable_genre_list(); inline ::Remote::AudioCollectionResponse_GenreList* mutable_genre_list();
inline ::Remote::AudioCollectionResponse_GenreList* release_genre_list(); inline ::Remote::AudioCollectionResponse_GenreList* release_genre_list();
inline void set_allocated_genre_list(::Remote::AudioCollectionResponse_GenreList* genre_list); inline void set_allocated_genre_list(::Remote::AudioCollectionResponse_GenreList* genre_list);
// optional .Remote.AudioCollectionResponse.ArtistList artist_list = 5; // optional .Remote.AudioCollectionResponse.ArtistList artist_list = 4;
inline bool has_artist_list() const; inline bool has_artist_list() const;
inline void clear_artist_list(); inline void clear_artist_list();
static const int kArtistListFieldNumber = 5; static const int kArtistListFieldNumber = 4;
inline const ::Remote::AudioCollectionResponse_ArtistList& artist_list() const; inline const ::Remote::AudioCollectionResponse_ArtistList& artist_list() const;
inline ::Remote::AudioCollectionResponse_ArtistList* mutable_artist_list(); inline ::Remote::AudioCollectionResponse_ArtistList* mutable_artist_list();
inline ::Remote::AudioCollectionResponse_ArtistList* release_artist_list(); inline ::Remote::AudioCollectionResponse_ArtistList* release_artist_list();
inline void set_allocated_artist_list(::Remote::AudioCollectionResponse_ArtistList* artist_list); inline void set_allocated_artist_list(::Remote::AudioCollectionResponse_ArtistList* artist_list);
// optional .Remote.AudioCollectionResponse.ReleaseList release_list = 6; // optional .Remote.AudioCollectionResponse.ReleaseList release_list = 5;
inline bool has_release_list() const; inline bool has_release_list() const;
inline void clear_release_list(); inline void clear_release_list();
static const int kReleaseListFieldNumber = 6; static const int kReleaseListFieldNumber = 5;
inline const ::Remote::AudioCollectionResponse_ReleaseList& release_list() const; inline const ::Remote::AudioCollectionResponse_ReleaseList& release_list() const;
inline ::Remote::AudioCollectionResponse_ReleaseList* mutable_release_list(); inline ::Remote::AudioCollectionResponse_ReleaseList* mutable_release_list();
inline ::Remote::AudioCollectionResponse_ReleaseList* release_release_list(); inline ::Remote::AudioCollectionResponse_ReleaseList* release_release_list();
inline void set_allocated_release_list(::Remote::AudioCollectionResponse_ReleaseList* release_list); inline void set_allocated_release_list(::Remote::AudioCollectionResponse_ReleaseList* release_list);
// optional .Remote.AudioCollectionResponse.TrackList track_list = 7; // optional .Remote.AudioCollectionResponse.TrackList track_list = 6;
inline bool has_track_list() const; inline bool has_track_list() const;
inline void clear_track_list(); inline void clear_track_list();
static const int kTrackListFieldNumber = 7; static const int kTrackListFieldNumber = 6;
inline const ::Remote::AudioCollectionResponse_TrackList& track_list() const; inline const ::Remote::AudioCollectionResponse_TrackList& track_list() const;
inline ::Remote::AudioCollectionResponse_TrackList* mutable_track_list(); inline ::Remote::AudioCollectionResponse_TrackList* mutable_track_list();
inline ::Remote::AudioCollectionResponse_TrackList* release_track_list(); inline ::Remote::AudioCollectionResponse_TrackList* release_track_list();
inline void set_allocated_track_list(::Remote::AudioCollectionResponse_TrackList* track_list); inline void set_allocated_track_list(::Remote::AudioCollectionResponse_TrackList* track_list);
// repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 8; // repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 7;
inline int cover_art_size() const; inline int cover_art_size() const;
inline void clear_cover_art(); inline void clear_cover_art();
static const int kCoverArtFieldNumber = 8; static const int kCoverArtFieldNumber = 7;
inline const ::Remote::AudioCollectionResponse_CoverArt& cover_art(int index) const; inline const ::Remote::AudioCollectionResponse_CoverArt& cover_art(int index) const;
inline ::Remote::AudioCollectionResponse_CoverArt* mutable_cover_art(int index); inline ::Remote::AudioCollectionResponse_CoverArt* mutable_cover_art(int index);
inline ::Remote::AudioCollectionResponse_CoverArt* add_cover_art(); inline ::Remote::AudioCollectionResponse_CoverArt* add_cover_art();
@@ -2162,8 +2106,6 @@ class AudioCollectionResponse : public ::google::protobuf::Message {
private: private:
inline void set_has_type(); inline void set_has_type();
inline void clear_has_type(); inline void clear_has_type();
inline void set_has_error();
inline void clear_has_error();
inline void set_has_revision(); inline void set_has_revision();
inline void clear_has_revision(); inline void clear_has_revision();
inline void set_has_genre_list(); inline void set_has_genre_list();
@@ -2177,7 +2119,6 @@ class AudioCollectionResponse : public ::google::protobuf::Message {
::google::protobuf::UnknownFieldSet _unknown_fields_; ::google::protobuf::UnknownFieldSet _unknown_fields_;
::Remote::Error* error_;
::Remote::AudioCollectionResponse_Revision* revision_; ::Remote::AudioCollectionResponse_Revision* revision_;
::Remote::AudioCollectionResponse_GenreList* genre_list_; ::Remote::AudioCollectionResponse_GenreList* genre_list_;
::Remote::AudioCollectionResponse_ArtistList* artist_list_; ::Remote::AudioCollectionResponse_ArtistList* artist_list_;
@@ -2187,7 +2128,7 @@ class AudioCollectionResponse : public ::google::protobuf::Message {
int type_; int type_;
mutable int _cached_size_; mutable int _cached_size_;
::google::protobuf::uint32 _has_bits_[(8 + 31) / 32]; ::google::protobuf::uint32 _has_bits_[(7 + 31) / 32];
friend void protobuf_AddDesc_collection_2eproto(); friend void protobuf_AddDesc_collection_2eproto();
friend void protobuf_AssignDesc_collection_2eproto(); friend void protobuf_AssignDesc_collection_2eproto();
@@ -3353,28 +3294,6 @@ inline void AudioCollectionResponse_Artist::set_allocated_name(::std::string* na
} }
} }
// required uint32 nb_releases = 3;
inline bool AudioCollectionResponse_Artist::has_nb_releases() const {
return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void AudioCollectionResponse_Artist::set_has_nb_releases() {
_has_bits_[0] |= 0x00000004u;
}
inline void AudioCollectionResponse_Artist::clear_has_nb_releases() {
_has_bits_[0] &= ~0x00000004u;
}
inline void AudioCollectionResponse_Artist::clear_nb_releases() {
nb_releases_ = 0u;
clear_has_nb_releases();
}
inline ::google::protobuf::uint32 AudioCollectionResponse_Artist::nb_releases() const {
return nb_releases_;
}
inline void AudioCollectionResponse_Artist::set_nb_releases(::google::protobuf::uint32 value) {
set_has_nb_releases();
nb_releases_ = value;
}
// ------------------------------------------------------------------- // -------------------------------------------------------------------
// AudioCollectionResponse_Release // AudioCollectionResponse_Release
@@ -3471,120 +3390,6 @@ inline void AudioCollectionResponse_Release::set_allocated_name(::std::string* n
} }
} }
// required uint32 nb_tracks = 3;
inline bool AudioCollectionResponse_Release::has_nb_tracks() const {
return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void AudioCollectionResponse_Release::set_has_nb_tracks() {
_has_bits_[0] |= 0x00000004u;
}
inline void AudioCollectionResponse_Release::clear_has_nb_tracks() {
_has_bits_[0] &= ~0x00000004u;
}
inline void AudioCollectionResponse_Release::clear_nb_tracks() {
nb_tracks_ = 0u;
clear_has_nb_tracks();
}
inline ::google::protobuf::uint32 AudioCollectionResponse_Release::nb_tracks() const {
return nb_tracks_;
}
inline void AudioCollectionResponse_Release::set_nb_tracks(::google::protobuf::uint32 value) {
set_has_nb_tracks();
nb_tracks_ = value;
}
// required uint32 duration_secs = 4;
inline bool AudioCollectionResponse_Release::has_duration_secs() const {
return (_has_bits_[0] & 0x00000008u) != 0;
}
inline void AudioCollectionResponse_Release::set_has_duration_secs() {
_has_bits_[0] |= 0x00000008u;
}
inline void AudioCollectionResponse_Release::clear_has_duration_secs() {
_has_bits_[0] &= ~0x00000008u;
}
inline void AudioCollectionResponse_Release::clear_duration_secs() {
duration_secs_ = 0u;
clear_has_duration_secs();
}
inline ::google::protobuf::uint32 AudioCollectionResponse_Release::duration_secs() const {
return duration_secs_;
}
inline void AudioCollectionResponse_Release::set_duration_secs(::google::protobuf::uint32 value) {
set_has_duration_secs();
duration_secs_ = value;
}
// optional string release_date = 5;
inline bool AudioCollectionResponse_Release::has_release_date() const {
return (_has_bits_[0] & 0x00000010u) != 0;
}
inline void AudioCollectionResponse_Release::set_has_release_date() {
_has_bits_[0] |= 0x00000010u;
}
inline void AudioCollectionResponse_Release::clear_has_release_date() {
_has_bits_[0] &= ~0x00000010u;
}
inline void AudioCollectionResponse_Release::clear_release_date() {
if (release_date_ != &::google::protobuf::internal::kEmptyString) {
release_date_->clear();
}
clear_has_release_date();
}
inline const ::std::string& AudioCollectionResponse_Release::release_date() const {
return *release_date_;
}
inline void AudioCollectionResponse_Release::set_release_date(const ::std::string& value) {
set_has_release_date();
if (release_date_ == &::google::protobuf::internal::kEmptyString) {
release_date_ = new ::std::string;
}
release_date_->assign(value);
}
inline void AudioCollectionResponse_Release::set_release_date(const char* value) {
set_has_release_date();
if (release_date_ == &::google::protobuf::internal::kEmptyString) {
release_date_ = new ::std::string;
}
release_date_->assign(value);
}
inline void AudioCollectionResponse_Release::set_release_date(const char* value, size_t size) {
set_has_release_date();
if (release_date_ == &::google::protobuf::internal::kEmptyString) {
release_date_ = new ::std::string;
}
release_date_->assign(reinterpret_cast<const char*>(value), size);
}
inline ::std::string* AudioCollectionResponse_Release::mutable_release_date() {
set_has_release_date();
if (release_date_ == &::google::protobuf::internal::kEmptyString) {
release_date_ = new ::std::string;
}
return release_date_;
}
inline ::std::string* AudioCollectionResponse_Release::release_release_date() {
clear_has_release_date();
if (release_date_ == &::google::protobuf::internal::kEmptyString) {
return NULL;
} else {
::std::string* temp = release_date_;
release_date_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
return temp;
}
}
inline void AudioCollectionResponse_Release::set_allocated_release_date(::std::string* release_date) {
if (release_date_ != &::google::protobuf::internal::kEmptyString) {
delete release_date_;
}
if (release_date) {
set_has_release_date();
release_date_ = release_date;
} else {
clear_has_release_date();
release_date_ = const_cast< ::std::string*>(&::google::protobuf::internal::kEmptyString);
}
}
// ------------------------------------------------------------------- // -------------------------------------------------------------------
// AudioCollectionResponse_Track // AudioCollectionResponse_Track
@@ -3983,53 +3788,15 @@ inline void AudioCollectionResponse::set_type(::Remote::AudioCollectionResponse_
type_ = value; type_ = value;
} }
// optional .Remote.Error error = 2; // optional .Remote.AudioCollectionResponse.Revision revision = 2;
inline bool AudioCollectionResponse::has_error() const { inline bool AudioCollectionResponse::has_revision() const {
return (_has_bits_[0] & 0x00000002u) != 0; return (_has_bits_[0] & 0x00000002u) != 0;
} }
inline void AudioCollectionResponse::set_has_error() { inline void AudioCollectionResponse::set_has_revision() {
_has_bits_[0] |= 0x00000002u; _has_bits_[0] |= 0x00000002u;
} }
inline void AudioCollectionResponse::clear_has_error() {
_has_bits_[0] &= ~0x00000002u;
}
inline void AudioCollectionResponse::clear_error() {
if (error_ != NULL) error_->::Remote::Error::Clear();
clear_has_error();
}
inline const ::Remote::Error& AudioCollectionResponse::error() const {
return error_ != NULL ? *error_ : *default_instance_->error_;
}
inline ::Remote::Error* AudioCollectionResponse::mutable_error() {
set_has_error();
if (error_ == NULL) error_ = new ::Remote::Error;
return error_;
}
inline ::Remote::Error* AudioCollectionResponse::release_error() {
clear_has_error();
::Remote::Error* temp = error_;
error_ = NULL;
return temp;
}
inline void AudioCollectionResponse::set_allocated_error(::Remote::Error* error) {
delete error_;
error_ = error;
if (error) {
set_has_error();
} else {
clear_has_error();
}
}
// optional .Remote.AudioCollectionResponse.Revision revision = 3;
inline bool AudioCollectionResponse::has_revision() const {
return (_has_bits_[0] & 0x00000004u) != 0;
}
inline void AudioCollectionResponse::set_has_revision() {
_has_bits_[0] |= 0x00000004u;
}
inline void AudioCollectionResponse::clear_has_revision() { inline void AudioCollectionResponse::clear_has_revision() {
_has_bits_[0] &= ~0x00000004u; _has_bits_[0] &= ~0x00000002u;
} }
inline void AudioCollectionResponse::clear_revision() { inline void AudioCollectionResponse::clear_revision() {
if (revision_ != NULL) revision_->::Remote::AudioCollectionResponse_Revision::Clear(); if (revision_ != NULL) revision_->::Remote::AudioCollectionResponse_Revision::Clear();
@@ -4059,15 +3826,15 @@ inline void AudioCollectionResponse::set_allocated_revision(::Remote::AudioColle
} }
} }
// optional .Remote.AudioCollectionResponse.GenreList genre_list = 4; // optional .Remote.AudioCollectionResponse.GenreList genre_list = 3;
inline bool AudioCollectionResponse::has_genre_list() const { inline bool AudioCollectionResponse::has_genre_list() const {
return (_has_bits_[0] & 0x00000008u) != 0; return (_has_bits_[0] & 0x00000004u) != 0;
} }
inline void AudioCollectionResponse::set_has_genre_list() { inline void AudioCollectionResponse::set_has_genre_list() {
_has_bits_[0] |= 0x00000008u; _has_bits_[0] |= 0x00000004u;
} }
inline void AudioCollectionResponse::clear_has_genre_list() { inline void AudioCollectionResponse::clear_has_genre_list() {
_has_bits_[0] &= ~0x00000008u; _has_bits_[0] &= ~0x00000004u;
} }
inline void AudioCollectionResponse::clear_genre_list() { inline void AudioCollectionResponse::clear_genre_list() {
if (genre_list_ != NULL) genre_list_->::Remote::AudioCollectionResponse_GenreList::Clear(); if (genre_list_ != NULL) genre_list_->::Remote::AudioCollectionResponse_GenreList::Clear();
@@ -4097,15 +3864,15 @@ inline void AudioCollectionResponse::set_allocated_genre_list(::Remote::AudioCol
} }
} }
// optional .Remote.AudioCollectionResponse.ArtistList artist_list = 5; // optional .Remote.AudioCollectionResponse.ArtistList artist_list = 4;
inline bool AudioCollectionResponse::has_artist_list() const { inline bool AudioCollectionResponse::has_artist_list() const {
return (_has_bits_[0] & 0x00000010u) != 0; return (_has_bits_[0] & 0x00000008u) != 0;
} }
inline void AudioCollectionResponse::set_has_artist_list() { inline void AudioCollectionResponse::set_has_artist_list() {
_has_bits_[0] |= 0x00000010u; _has_bits_[0] |= 0x00000008u;
} }
inline void AudioCollectionResponse::clear_has_artist_list() { inline void AudioCollectionResponse::clear_has_artist_list() {
_has_bits_[0] &= ~0x00000010u; _has_bits_[0] &= ~0x00000008u;
} }
inline void AudioCollectionResponse::clear_artist_list() { inline void AudioCollectionResponse::clear_artist_list() {
if (artist_list_ != NULL) artist_list_->::Remote::AudioCollectionResponse_ArtistList::Clear(); if (artist_list_ != NULL) artist_list_->::Remote::AudioCollectionResponse_ArtistList::Clear();
@@ -4135,15 +3902,15 @@ inline void AudioCollectionResponse::set_allocated_artist_list(::Remote::AudioCo
} }
} }
// optional .Remote.AudioCollectionResponse.ReleaseList release_list = 6; // optional .Remote.AudioCollectionResponse.ReleaseList release_list = 5;
inline bool AudioCollectionResponse::has_release_list() const { inline bool AudioCollectionResponse::has_release_list() const {
return (_has_bits_[0] & 0x00000020u) != 0; return (_has_bits_[0] & 0x00000010u) != 0;
} }
inline void AudioCollectionResponse::set_has_release_list() { inline void AudioCollectionResponse::set_has_release_list() {
_has_bits_[0] |= 0x00000020u; _has_bits_[0] |= 0x00000010u;
} }
inline void AudioCollectionResponse::clear_has_release_list() { inline void AudioCollectionResponse::clear_has_release_list() {
_has_bits_[0] &= ~0x00000020u; _has_bits_[0] &= ~0x00000010u;
} }
inline void AudioCollectionResponse::clear_release_list() { inline void AudioCollectionResponse::clear_release_list() {
if (release_list_ != NULL) release_list_->::Remote::AudioCollectionResponse_ReleaseList::Clear(); if (release_list_ != NULL) release_list_->::Remote::AudioCollectionResponse_ReleaseList::Clear();
@@ -4173,15 +3940,15 @@ inline void AudioCollectionResponse::set_allocated_release_list(::Remote::AudioC
} }
} }
// optional .Remote.AudioCollectionResponse.TrackList track_list = 7; // optional .Remote.AudioCollectionResponse.TrackList track_list = 6;
inline bool AudioCollectionResponse::has_track_list() const { inline bool AudioCollectionResponse::has_track_list() const {
return (_has_bits_[0] & 0x00000040u) != 0; return (_has_bits_[0] & 0x00000020u) != 0;
} }
inline void AudioCollectionResponse::set_has_track_list() { inline void AudioCollectionResponse::set_has_track_list() {
_has_bits_[0] |= 0x00000040u; _has_bits_[0] |= 0x00000020u;
} }
inline void AudioCollectionResponse::clear_has_track_list() { inline void AudioCollectionResponse::clear_has_track_list() {
_has_bits_[0] &= ~0x00000040u; _has_bits_[0] &= ~0x00000020u;
} }
inline void AudioCollectionResponse::clear_track_list() { inline void AudioCollectionResponse::clear_track_list() {
if (track_list_ != NULL) track_list_->::Remote::AudioCollectionResponse_TrackList::Clear(); if (track_list_ != NULL) track_list_->::Remote::AudioCollectionResponse_TrackList::Clear();
@@ -4211,7 +3978,7 @@ inline void AudioCollectionResponse::set_allocated_track_list(::Remote::AudioCol
} }
} }
// repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 8; // repeated .Remote.AudioCollectionResponse.CoverArt cover_art = 7;
inline int AudioCollectionResponse::cover_art_size() const { inline int AudioCollectionResponse::cover_art_size() const {
return cover_art_.size(); return cover_art_.size();
} }
+12 -21
View File
@@ -122,7 +122,6 @@ message AudioCollectionResponse
required uint64 id = 1; // Artist Id required uint64 id = 1; // Artist Id
required string name = 2; required string name = 2;
required uint32 nb_releases = 3;
} }
message Release message Release
@@ -130,12 +129,6 @@ message AudioCollectionResponse
required uint64 id = 1; // Release id required uint64 id = 1; // Release id
required string name = 2; required string name = 2;
required uint32 nb_tracks = 3;
required uint32 duration_secs = 4;
optional string release_date = 5;
} }
message Track message Track
@@ -155,25 +148,23 @@ message AudioCollectionResponse
} }
enum Type { enum Type {
TypeError = 1; TypeRevision = 1;
TypeRevision = 2; TypeGenreList = 2;
TypeGenreList = 3; TypeArtistList = 3;
TypeArtistList = 4; TypeReleaseList = 4;
TypeReleaseList = 5; TypeTrackList = 5;
TypeTrackList = 6; TypeCoverArt = 6;
TypeCoverArt = 7;
} }
required Type type = 1; required Type type = 1;
optional Error error = 2; optional Revision revision = 2;
optional Revision revision = 3; optional GenreList genre_list = 3;
optional GenreList genre_list = 4; optional ArtistList artist_list = 4;
optional ArtistList artist_list = 5; optional ReleaseList release_list = 5;
optional ReleaseList release_list = 6; optional TrackList track_list = 6;
optional TrackList track_list = 7; repeated CoverArt cover_art = 7;
repeated CoverArt cover_art = 8;
} }
@@ -1,5 +1,8 @@
#include <algorithm> // std::min #include <algorithm> // std::min
#include <boost/locale.hpp>
#include <boost/foreach.hpp> #include <boost/foreach.hpp>
#include "AudioCollectionRequestHandler.hpp" #include "AudioCollectionRequestHandler.hpp"
@@ -111,7 +114,7 @@ AudioCollectionRequestHandler::processGetGenres(const AudioCollectionRequest::Ge
{ {
AudioCollectionResponse_Genre* genre = response.add_genres(); AudioCollectionResponse_Genre* genre = response.add_genres();
genre->set_name((*it)->getName()); genre->set_name( std::string( boost::locale::conv::to_utf<char>((*it)->getName(), "UTF-8") ) );
genre->set_id(it->id()); genre->set_id(it->id());
} }
@@ -128,8 +131,6 @@ AudioCollectionRequestHandler::processGetArtists(const AudioCollectionRequest::G
return false; return false;
} }
std::cout << "Batch offset = " << request.batch_parameter().offset() << ", batch size = " << request.batch_parameter().size() << std::endl;
std::size_t size = request.batch_parameter().size(); std::size_t size = request.batch_parameter().size();
if (!size) if (!size)
size = _maxListArtists; size = _maxListArtists;
@@ -147,10 +148,8 @@ AudioCollectionRequestHandler::processGetArtists(const AudioCollectionRequest::G
{ {
AudioCollectionResponse_Artist* artist = response.add_artists(); AudioCollectionResponse_Artist* artist = response.add_artists();
artist->set_name((*it)->getName()); artist->set_name( std::string( boost::locale::conv::to_utf<char>((*it)->getName(), "UTF-8") ) );
artist->set_nb_releases(0); // TODO
artist->set_id(it->id()); artist->set_id(it->id());
std::cout << "Adding artist '" << artist->name() << "'" << std::endl;
} }
return true; return true;
@@ -185,13 +184,8 @@ AudioCollectionRequestHandler::processGetReleases(const AudioCollectionRequest::
{ {
AudioCollectionResponse_Release* release = response.add_releases(); AudioCollectionResponse_Release* release = response.add_releases();
release->set_name((*it)->getName()); release->set_name( std::string( boost::locale::conv::to_utf<char>((*it)->getName(), "UTF-8") ) );
release->set_id(it->id()); release->set_id(it->id());
// WARNING: next lines are very time consuming!
release->set_nb_tracks( (*it)->getTracks().size() );
release->set_duration_secs( (*it)->getDuration().total_seconds() );
} }
return true; return true;
@@ -243,7 +237,7 @@ AudioCollectionRequestHandler::processGetTracks(const AudioCollectionRequest::Ge
track->set_artist_id( (*it)->getArtist().id() ); track->set_artist_id( (*it)->getArtist().id() );
track->set_release_id( (*it)->getRelease().id() ); track->set_release_id( (*it)->getRelease().id() );
track->set_name( (*it)->getName() ); track->set_name( std::string( boost::locale::conv::to_utf<char>((*it)->getName(), "UTF-8") ) );
track->set_duration_secs( (*it)->getDuration().total_seconds() ); track->set_duration_secs( (*it)->getDuration().total_seconds() );
// if (!(*it)->getCreationTime().is_special()) // if (!(*it)->getCreationTime().is_special())
// track->set_release_date( boost::posix_time::to_simple_string((*it)->getCreationTime()) ); // track->set_release_date( boost::posix_time::to_simple_string((*it)->getCreationTime()) );
+7 -5
View File
@@ -43,13 +43,11 @@ struct ReleaseInfo
{ {
uint64_t id; uint64_t id;
std::string name; std::string name;
std::size_t nbTracks;
boost::posix_time::time_duration duration;
}; };
std::ostream& operator<<(std::ostream& os, const ReleaseInfo& info) std::ostream& operator<<(std::ostream& os, const ReleaseInfo& info)
{ {
os << "id = " << info.id << ", name = '" << info.name << "', tracks = " << info.nbTracks << ", duration = " << info.duration; os << "id = " << info.id << ", name = '" << info.name;
return os; return os;
} }
@@ -264,6 +262,12 @@ class TestClient
recvMsg(response); recvMsg(response);
// Process message // Process message
if (!response.audio_collection_response().has_type())
throw std::runtime_error("Missing type!");
// if (!response.audio_collection_response().type() != Remote::ServerMessage::AudioCollectionResponse::TypeReleaseList)
// throw std::runtime_error("Bad type!");
if (!response.has_audio_collection_response()) if (!response.has_audio_collection_response())
throw std::runtime_error("not an audio_collection_response!"); throw std::runtime_error("not an audio_collection_response!");
@@ -278,8 +282,6 @@ class TestClient
ReleaseInfo release; ReleaseInfo release;
release.id = response.audio_collection_response().release_list().releases(i).id(); release.id = response.audio_collection_response().release_list().releases(i).id();
release.name = response.audio_collection_response().release_list().releases(i).name(); release.name = response.audio_collection_response().release_list().releases(i).name();
release.duration = boost::posix_time::seconds(response.audio_collection_response().release_list().releases(i).duration_secs());
release.nbTracks = response.audio_collection_response().release_list().releases(i).nb_tracks();
releases.push_back( release ); releases.push_back( release );
nbAdded++; nbAdded++;