Skip to content

Commit

Permalink
remove reinterpret_cast
Browse files Browse the repository at this point in the history
  • Loading branch information
Kimmy Mu committed May 12, 2021
1 parent 3416648 commit a1400c4
Showing 1 changed file with 21 additions and 12 deletions.
33 changes: 21 additions & 12 deletions wrapper/hermes_wrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,10 @@ BucketClass *HermesBucketCreate(const char *name) {
LOG(INFO) << "Hermes Wrapper: Creating Bucket " << name << '\n';

try {
return reinterpret_cast<BucketClass *>(new hermes::api::Bucket(
std::string(name), hermes_ptr, ctx));
hermes::api::Bucket *new_bucket =
new hermes::api::Bucket(std::string(name), hermes_ptr, ctx);

return (BucketClass *)new_bucket;
}
catch (const std::runtime_error& e) {
LOG(ERROR) << "Blob runtime error\n";
Expand All @@ -52,32 +54,38 @@ BucketClass *HermesBucketCreate(const char *name) {
}

void HermesBucketClose(BucketClass *bkt) {
LOG(INFO) << "Hermes Wrapper: Closing Bucket " <<
reinterpret_cast<hermes::api::Bucket *>(bkt)->GetName() << '\n';
hermes::api::Bucket *my_bkt = (hermes::api::Bucket *)bkt;

LOG(INFO) << "Hermes Wrapper: Closing Bucket " << my_bkt->GetName() << '\n';

reinterpret_cast<hermes::api::Bucket *>(bkt)->Release(ctx);
my_bkt->Release(ctx);
}

void HermesBucketDestroy(BucketClass *bkt) {
hermes::api::Bucket *my_bkt = (hermes::api::Bucket *)bkt;

LOG(INFO) << "Hermes Wrapper: Destroying Bucket\n";

delete reinterpret_cast<hermes::api::Bucket *>(bkt);
my_bkt->Destroy();
}

bool HermesBucketContainsBlob(BucketClass *bkt, char *name) {
hermes::api::Bucket *bucket = (hermes::api::Bucket *)bkt;

LOG(INFO) << "Hermes Wrapper: Checking if Bucket "
<< reinterpret_cast<hermes::api::Bucket *>(bkt)->GetName()
<< bucket->GetName()
<< " contains Blob " << name << '\n';

return reinterpret_cast<hermes::api::Bucket *>(bkt)->ContainsBlob(name);
return bucket->ContainsBlob(name);
}

void HermesBucketPut(BucketClass *bkt, char *name, unsigned char *put_data,
size_t size) {
hermes::api::Bucket *bucket = (hermes::api::Bucket *)bkt;

LOG(INFO) << "Hermes Wrapper: Putting Blob " << name << " to bucket " <<
reinterpret_cast<hermes::api::Bucket *>(bkt)->GetName() << '\n';
bucket->GetName() << '\n';

hermes::api::Bucket *bucket = reinterpret_cast<hermes::api::Bucket *>(bkt);
hermes::api::Status status = bucket->Put(name, put_data, size, ctx);

if (status.Failed())
Expand All @@ -86,10 +94,11 @@ void HermesBucketPut(BucketClass *bkt, char *name, unsigned char *put_data,

void HermesBucketGet(BucketClass *bkt, char *blob_name, size_t kPageSize,
unsigned char *buf) {
hermes::api::Bucket *bucket = (hermes::api::Bucket *)bkt;

LOG(INFO) << "Hermes Wrapper: Getting blob " << blob_name << " from Bucket "
<< reinterpret_cast<hermes::api::Bucket *>(bkt)->GetName();
<< bucket->GetName();

hermes::api::Bucket *bucket = reinterpret_cast<hermes::api::Bucket *>(bkt);
size_t blob_size = bucket->Get(blob_name, buf, kPageSize, ctx);
if (blob_size != kPageSize)
LOG(ERROR) << "Blob size error: expected to get " << kPageSize
Expand Down

0 comments on commit a1400c4

Please sign in to comment.