30 #ifndef GOOGLE_STORAGE_API_HMAC_KEY_H_ 31 #define GOOGLE_STORAGE_API_HMAC_KEY_H_ 34 #include "googleapis/base/macros.h" 35 #include "googleapis/client/data/jsoncpp_data.h" 36 #include "googleapis/strings/stringpiece.h" 38 #include "google/storage_api/hmac_key_metadata.h" 52 class HmacKey :
public client::JsonCppData {
66 explicit HmacKey(
const Json::Value& storage);
73 explicit HmacKey(Json::Value* storage);
86 return StringPiece(
"google_storage_api::HmacKey");
95 return Storage().isMember(
"kind");
102 MutableStorage()->removeMember(
"kind");
110 const Json::Value& v = Storage(
"kind");
111 if (v == Json::Value::null)
return StringPiece(
"");
112 return StringPiece(v.asCString());
123 *MutableStorage(
"kind") = value.data();
132 return Storage().isMember(
"metadata");
139 MutableStorage()->removeMember(
"metadata");
164 return Storage().isMember(
"secret");
171 MutableStorage()->removeMember(
"secret");
179 const Json::Value& v = Storage(
"secret");
180 if (v == Json::Value::null)
return StringPiece(
"");
181 return StringPiece(v.asCString());
192 *MutableStorage(
"secret") = value.data();
196 void operator=(
const HmacKey&);
199 #endif // GOOGLE_STORAGE_API_HMAC_KEY_H_ void clear_kind()
Definition: hmac_key.h:101
Definition: hmac_key.h:52
const StringPiece get_secret() const
Definition: hmac_key.h:178
void clear_metadata()
Definition: hmac_key.h:138
void set_secret(const StringPiece &value)
Definition: hmac_key.h:191
const StringPiece get_kind() const
Definition: hmac_key.h:109
bool has_secret() const
Definition: hmac_key.h:163
void set_kind(const StringPiece &value)
Definition: hmac_key.h:122
bool has_metadata() const
Definition: hmac_key.h:131
void clear_secret()
Definition: hmac_key.h:170
bool has_kind() const
Definition: hmac_key.h:94
const StringPiece GetTypeName() const
Definition: hmac_key.h:85