THRIFT-821. Add a method to get a copy of the TMemoryBuffer's buffer.
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@966385 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cocoa/src/transport/TMemoryBuffer.h b/lib/cocoa/src/transport/TMemoryBuffer.h
index 45a5e17..fa4d371 100644
--- a/lib/cocoa/src/transport/TMemoryBuffer.h
+++ b/lib/cocoa/src/transport/TMemoryBuffer.h
@@ -25,4 +25,5 @@
NSUInteger mOffset;
}
- (id)initWithData:(NSData *)data;
+- (NSData *)getBuffer;
@end
diff --git a/lib/cocoa/src/transport/TMemoryBuffer.m b/lib/cocoa/src/transport/TMemoryBuffer.m
index 7912bcd..869010a 100644
--- a/lib/cocoa/src/transport/TMemoryBuffer.m
+++ b/lib/cocoa/src/transport/TMemoryBuffer.m
@@ -23,6 +23,14 @@
#define GARBAGE_BUFFER_SIZE 4096 // 4KiB
@implementation TMemoryBuffer
+- (id)init {
+ if (self = [super init]) {
+ mBuffer = [[NSMutableData alloc] init];
+ mOffset = 0;
+ }
+ return self;
+}
+
- (id)initWithData:(NSData *)data {
if (self = [super init]) {
mBuffer = [data mutableCopy];
@@ -52,6 +60,10 @@
// noop
}
+- (NSData *)getBuffer {
+ return [[mBuffer copy] autorelease];
+}
+
- (void)dealloc {
[mBuffer release];
[super dealloc];