123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- #include <objc/runtime.h>
- #import "GTLRUploadParameters.h"
- @implementation GTLRUploadParameters
- @synthesize MIMEType = _MIMEType,
- data = _data,
- fileHandle = _fileHandle,
- uploadLocationURL = _uploadLocationURL,
- fileURL = _fileURL,
- shouldUploadWithSingleRequest = _shouldUploadWithSingleRequest,
- shouldSendUploadOnly = _shouldSendUploadOnly,
- useBackgroundSession = _useBackgroundSession;
- + (instancetype)uploadParametersWithData:(NSData *)data
- MIMEType:(NSString *)mimeType {
- GTLRUploadParameters *params = [[self alloc] init];
- params.data = data;
- params.MIMEType = mimeType;
- return params;
- }
- + (instancetype)uploadParametersWithFileHandle:(NSFileHandle *)fileHandle
- MIMEType:(NSString *)mimeType {
- GTLRUploadParameters *params = [[self alloc] init];
- params.fileHandle = fileHandle;
- params.MIMEType = mimeType;
- return params;
- }
- + (instancetype)uploadParametersWithFileURL:(NSURL *)fileURL
- MIMEType:(NSString *)mimeType {
- GTLRUploadParameters *params = [[self alloc] init];
- params.fileURL = fileURL;
- params.MIMEType = mimeType;
- return params;
- }
- - (id)copyWithZone:(NSZone *)zone {
- GTLRUploadParameters *newParams = [[[self class] allocWithZone:zone] init];
- newParams.MIMEType = self.MIMEType;
- newParams.data = self.data;
- newParams.fileHandle = self.fileHandle;
- newParams.fileURL = self.fileURL;
- newParams.uploadLocationURL = self.uploadLocationURL;
- newParams.shouldUploadWithSingleRequest = self.shouldUploadWithSingleRequest;
- newParams.shouldSendUploadOnly = self.shouldSendUploadOnly;
- newParams.useBackgroundSession = self.useBackgroundSession;
- return newParams;
- }
- #if DEBUG
- - (NSString *)description {
- NSMutableArray *array = [NSMutableArray array];
- NSString *str = [NSString stringWithFormat:@"MIMEType:%@", _MIMEType];
- [array addObject:str];
- if (_data) {
- str = [NSString stringWithFormat:@"data:%llu bytes",
- (unsigned long long)_data.length];
- [array addObject:str];
- }
- if (_fileHandle) {
- str = [NSString stringWithFormat:@"fileHandle:%@", _fileHandle];
- [array addObject:str];
- }
- if (_fileURL) {
- str = [NSString stringWithFormat:@"file:%@", [_fileURL path]];
- [array addObject:str];
- }
- if (_uploadLocationURL) {
- str = [NSString stringWithFormat:@"uploadLocation:%@",
- [_uploadLocationURL absoluteString]];
- [array addObject:str];
- }
- if (_shouldSendUploadOnly) {
- [array addObject:@"shouldSendUploadOnly"];
- }
- if (_shouldUploadWithSingleRequest) {
- [array addObject:@"uploadWithSingleRequest"];
- }
- if (_useBackgroundSession) {
- [array addObject:@"useBackgroundSession"];
- }
- NSString *descStr = [array componentsJoinedByString:@", "];
- str = [NSString stringWithFormat:@"%@ %p: {%@}",
- [self class], self, descStr];
- return str;
- }
- #endif // DEBUG
- @end
|