30 #ifndef GOOGLE_ANDROIDENTERPRISE_API_PRODUCT_H_ 31 #define GOOGLE_ANDROIDENTERPRISE_API_PRODUCT_H_ 34 #include "googleapis/base/integral_types.h" 35 #include "googleapis/base/macros.h" 36 #include "googleapis/client/data/jsoncpp_data.h" 37 #include "googleapis/strings/stringpiece.h" 39 #include "google/androidenterprise_api/app_version.h" 40 #include "google/androidenterprise_api/product_permission.h" 41 #include "google/androidenterprise_api/product_signing_certificate.h" 42 #include "google/androidenterprise_api/track_info.h" 63 class Product :
public client::JsonCppData {
77 explicit Product(
const Json::Value& storage);
84 explicit Product(Json::Value* storage);
97 return StringPiece(
"google_androidenterprise_api::Product");
106 return Storage().isMember(
"appTracks");
113 MutableStorage()->removeMember(
"appTracks");
120 const client::JsonCppArray<TrackInfo > get_app_tracks()
const;
130 client::JsonCppArray<TrackInfo > mutable_appTracks();
138 return Storage().isMember(
"appVersion");
145 MutableStorage()->removeMember(
"appVersion");
152 const client::JsonCppArray<AppVersion > get_app_version()
const;
162 client::JsonCppArray<AppVersion > mutable_appVersion();
170 return Storage().isMember(
"authorName");
177 MutableStorage()->removeMember(
"authorName");
185 const Json::Value& v = Storage(
"authorName");
186 if (v == Json::Value::null)
return StringPiece(
"");
187 return StringPiece(v.asCString());
198 *MutableStorage(
"authorName") = value.data();
207 return Storage().isMember(
"availableCountries");
214 MutableStorage()->removeMember(
"availableCountries");
223 const Json::Value& storage = Storage(
"availableCountries");
224 return client::JsonValueToCppValueHelper<client::JsonCppArray<string > >(storage);
236 Json::Value* storage = MutableStorage(
"availableCountries");
237 return client::JsonValueToMutableCppValueHelper<client::JsonCppArray<string > >(storage);
246 return Storage().isMember(
"availableTracks");
253 MutableStorage()->removeMember(
"availableTracks");
262 const Json::Value& storage = Storage(
"availableTracks");
263 return client::JsonValueToCppValueHelper<client::JsonCppArray<string > >(storage);
277 Json::Value* storage = MutableStorage(
"availableTracks");
278 return client::JsonValueToMutableCppValueHelper<client::JsonCppArray<string > >(storage);
287 return Storage().isMember(
"category");
294 MutableStorage()->removeMember(
"category");
302 const Json::Value& v = Storage(
"category");
303 if (v == Json::Value::null)
return StringPiece(
"");
304 return StringPiece(v.asCString());
315 *MutableStorage(
"category") = value.data();
324 return Storage().isMember(
"contentRating");
331 MutableStorage()->removeMember(
"contentRating");
339 const Json::Value& v = Storage(
"contentRating");
340 if (v == Json::Value::null)
return StringPiece(
"");
341 return StringPiece(v.asCString());
352 *MutableStorage(
"contentRating") = value.data();
361 return Storage().isMember(
"description");
368 MutableStorage()->removeMember(
"description");
376 const Json::Value& v = Storage(
"description");
377 if (v == Json::Value::null)
return StringPiece(
"");
378 return StringPiece(v.asCString());
389 *MutableStorage(
"description") = value.data();
398 return Storage().isMember(
"detailsUrl");
405 MutableStorage()->removeMember(
"detailsUrl");
413 const Json::Value& v = Storage(
"detailsUrl");
414 if (v == Json::Value::null)
return StringPiece(
"");
415 return StringPiece(v.asCString());
426 *MutableStorage(
"detailsUrl") = value.data();
435 return Storage().isMember(
"distributionChannel");
442 MutableStorage()->removeMember(
"distributionChannel");
450 const Json::Value& v = Storage(
"distributionChannel");
451 if (v == Json::Value::null)
return StringPiece(
"");
452 return StringPiece(v.asCString());
468 *MutableStorage(
"distributionChannel") = value.data();
477 return Storage().isMember(
"features");
484 MutableStorage()->removeMember(
"features");
492 const Json::Value& storage = Storage(
"features");
493 return client::JsonValueToCppValueHelper<client::JsonCppArray<string > >(storage);
505 Json::Value* storage = MutableStorage(
"features");
506 return client::JsonValueToMutableCppValueHelper<client::JsonCppArray<string > >(storage);
515 return Storage().isMember(
"iconUrl");
522 MutableStorage()->removeMember(
"iconUrl");
530 const Json::Value& v = Storage(
"iconUrl");
531 if (v == Json::Value::null)
return StringPiece(
"");
532 return StringPiece(v.asCString());
544 *MutableStorage(
"iconUrl") = value.data();
553 return Storage().isMember(
"kind");
560 MutableStorage()->removeMember(
"kind");
568 const Json::Value& v = Storage(
"kind");
569 if (v == Json::Value::null)
return StringPiece(
"");
570 return StringPiece(v.asCString());
578 *MutableStorage(
"kind") = value.data();
589 return Storage().isMember(
"lastUpdatedTimestampMillis");
596 MutableStorage()->removeMember(
"lastUpdatedTimestampMillis");
604 const Json::Value& storage = Storage(
"lastUpdatedTimestampMillis");
605 return client::JsonValueToCppValueHelper<int64 >(storage);
617 client::SetJsonValueFromCppValueHelper<int64 >(
618 value, MutableStorage(
"lastUpdatedTimestampMillis"));
627 return Storage().isMember(
"minAndroidSdkVersion");
634 MutableStorage()->removeMember(
"minAndroidSdkVersion");
642 const Json::Value& storage = Storage(
"minAndroidSdkVersion");
643 return client::JsonValueToCppValueHelper<int32 >(storage);
654 client::SetJsonValueFromCppValueHelper<int32 >(
655 value, MutableStorage(
"minAndroidSdkVersion"));
664 return Storage().isMember(
"permissions");
671 MutableStorage()->removeMember(
"permissions");
678 const client::JsonCppArray<ProductPermission > get_permissions()
const;
688 client::JsonCppArray<ProductPermission > mutable_permissions();
696 return Storage().isMember(
"productId");
703 MutableStorage()->removeMember(
"productId");
711 const Json::Value& v = Storage(
"productId");
712 if (v == Json::Value::null)
return StringPiece(
"");
713 return StringPiece(v.asCString());
725 *MutableStorage(
"productId") = value.data();
734 return Storage().isMember(
"productPricing");
741 MutableStorage()->removeMember(
"productPricing");
749 const Json::Value& v = Storage(
"productPricing");
750 if (v == Json::Value::null)
return StringPiece(
"");
751 return StringPiece(v.asCString());
764 *MutableStorage(
"productPricing") = value.data();
773 return Storage().isMember(
"recentChanges");
780 MutableStorage()->removeMember(
"recentChanges");
788 const Json::Value& v = Storage(
"recentChanges");
789 if (v == Json::Value::null)
return StringPiece(
"");
790 return StringPiece(v.asCString());
801 *MutableStorage(
"recentChanges") = value.data();
810 return Storage().isMember(
"requiresContainerApp");
817 MutableStorage()->removeMember(
"requiresContainerApp");
825 const Json::Value& storage = Storage(
"requiresContainerApp");
826 return client::JsonValueToCppValueHelper<bool >(storage);
839 client::SetJsonValueFromCppValueHelper<bool >(
840 value, MutableStorage(
"requiresContainerApp"));
849 return Storage().isMember(
"screenshotUrls");
856 MutableStorage()->removeMember(
"screenshotUrls");
865 const Json::Value& storage = Storage(
"screenshotUrls");
866 return client::JsonValueToCppValueHelper<client::JsonCppArray<string > >(storage);
878 Json::Value* storage = MutableStorage(
"screenshotUrls");
879 return client::JsonValueToMutableCppValueHelper<client::JsonCppArray<string > >(storage);
888 return Storage().isMember(
"signingCertificate");
895 MutableStorage()->removeMember(
"signingCertificate");
921 return Storage().isMember(
"smallIconUrl");
928 MutableStorage()->removeMember(
"smallIconUrl");
936 const Json::Value& v = Storage(
"smallIconUrl");
937 if (v == Json::Value::null)
return StringPiece(
"");
938 return StringPiece(v.asCString());
950 *MutableStorage(
"smallIconUrl") = value.data();
959 return Storage().isMember(
"title");
966 MutableStorage()->removeMember(
"title");
974 const Json::Value& v = Storage(
"title");
975 if (v == Json::Value::null)
return StringPiece(
"");
976 return StringPiece(v.asCString());
987 *MutableStorage(
"title") = value.data();
996 return Storage().isMember(
"workDetailsUrl");
1003 MutableStorage()->removeMember(
"workDetailsUrl");
1011 const Json::Value& v = Storage(
"workDetailsUrl");
1012 if (v == Json::Value::null)
return StringPiece(
"");
1013 return StringPiece(v.asCString());
1025 *MutableStorage(
"workDetailsUrl") = value.data();
1029 void operator=(
const Product&);
1032 #endif // GOOGLE_ANDROIDENTERPRISE_API_PRODUCT_H_ void set_content_rating(const StringPiece &value)
Definition: product.h:351
const StringPiece get_product_pricing() const
Definition: product.h:748
bool has_available_tracks() const
Definition: product.h:245
void set_requires_container_app(bool value)
Definition: product.h:838
const StringPiece get_work_details_url() const
Definition: product.h:1010
void set_recent_changes(const StringPiece &value)
Definition: product.h:800
bool has_icon_url() const
Definition: product.h:514
const StringPiece get_title() const
Definition: product.h:973
void clear_last_updated_timestamp_millis()
Definition: product.h:595
void clear_app_version()
Definition: product.h:144
void set_small_icon_url(const StringPiece &value)
Definition: product.h:949
bool has_category() const
Definition: product.h:286
void set_details_url(const StringPiece &value)
Definition: product.h:425
const StringPiece get_distribution_channel() const
Definition: product.h:449
bool has_work_details_url() const
Definition: product.h:995
bool has_app_version() const
Definition: product.h:137
void clear_category()
Definition: product.h:293
void clear_author_name()
Definition: product.h:176
void clear_product_pricing()
Definition: product.h:740
void clear_product_id()
Definition: product.h:702
bool has_app_tracks() const
Definition: product.h:105
const client::JsonCppArray< string > get_screenshot_urls() const
Definition: product.h:864
void clear_features()
Definition: product.h:483
bool has_title() const
Definition: product.h:958
void clear_available_tracks()
Definition: product.h:252
const StringPiece get_details_url() const
Definition: product.h:412
void set_description(const StringPiece &value)
Definition: product.h:388
bool has_available_countries() const
Definition: product.h:206
const StringPiece get_recent_changes() const
Definition: product.h:787
void clear_title()
Definition: product.h:965
bool has_author_name() const
Definition: product.h:169
void set_min_android_sdk_version(int32 value)
Definition: product.h:653
bool has_features() const
Definition: product.h:476
bool has_screenshot_urls() const
Definition: product.h:848
const StringPiece get_small_icon_url() const
Definition: product.h:935
bool has_requires_container_app() const
Definition: product.h:809
int64 get_last_updated_timestamp_millis() const
Definition: product.h:603
void set_author_name(const StringPiece &value)
Definition: product.h:197
const StringPiece get_description() const
Definition: product.h:375
void clear_work_details_url()
Definition: product.h:1002
const client::JsonCppArray< string > get_available_countries() const
Definition: product.h:222
bool has_kind() const
Definition: product.h:552
const StringPiece get_content_rating() const
Definition: product.h:338
void set_icon_url(const StringPiece &value)
Definition: product.h:543
void set_last_updated_timestamp_millis(int64 value)
Definition: product.h:616
void clear_icon_url()
Definition: product.h:521
const StringPiece get_category() const
Definition: product.h:301
bool has_details_url() const
Definition: product.h:397
void clear_small_icon_url()
Definition: product.h:927
const StringPiece GetTypeName() const
Definition: product.h:96
void set_kind(const StringPiece &value)
Definition: product.h:577
Definition: administrator.h:38
Definition: administrator.cc:40
void clear_available_countries()
Definition: product.h:213
bool has_description() const
Definition: product.h:360
void clear_screenshot_urls()
Definition: product.h:855
client::JsonCppArray< string > mutable_availableTracks()
Definition: product.h:276
void set_product_pricing(const StringPiece &value)
Definition: product.h:763
bool has_product_pricing() const
Definition: product.h:733
bool has_permissions() const
Definition: product.h:663
const StringPiece get_author_name() const
Definition: product.h:184
bool has_product_id() const
Definition: product.h:695
void clear_content_rating()
Definition: product.h:330
bool has_signing_certificate() const
Definition: product.h:887
Definition: product_signing_certificate.h:50
void clear_app_tracks()
Definition: product.h:112
void clear_description()
Definition: product.h:367
void clear_details_url()
Definition: product.h:404
const StringPiece get_kind() const
Definition: product.h:567
bool has_distribution_channel() const
Definition: product.h:434
bool has_min_android_sdk_version() const
Definition: product.h:626
client::JsonCppArray< string > mutable_features()
Definition: product.h:504
const client::JsonCppArray< string > get_features() const
Definition: product.h:491
bool has_small_icon_url() const
Definition: product.h:920
bool has_content_rating() const
Definition: product.h:323
void set_category(const StringPiece &value)
Definition: product.h:314
void set_work_details_url(const StringPiece &value)
Definition: product.h:1024
void clear_signing_certificate()
Definition: product.h:894
void clear_min_android_sdk_version()
Definition: product.h:633
void clear_kind()
Definition: product.h:559
void clear_permissions()
Definition: product.h:670
bool has_recent_changes() const
Definition: product.h:772
bool get_requires_container_app() const
Definition: product.h:824
void set_distribution_channel(const StringPiece &value)
Definition: product.h:467
client::JsonCppArray< string > mutable_screenshotUrls()
Definition: product.h:877
void clear_distribution_channel()
Definition: product.h:441
void clear_recent_changes()
Definition: product.h:779
int32 get_min_android_sdk_version() const
Definition: product.h:641
client::JsonCppArray< string > mutable_availableCountries()
Definition: product.h:235
const StringPiece get_icon_url() const
Definition: product.h:529
void clear_requires_container_app()
Definition: product.h:816
const client::JsonCppArray< string > get_available_tracks() const
Definition: product.h:261
void set_product_id(const StringPiece &value)
Definition: product.h:724
bool has_last_updated_timestamp_millis() const
Definition: product.h:588
void set_title(const StringPiece &value)
Definition: product.h:986
const StringPiece get_product_id() const
Definition: product.h:710