Files
wagic/projects/mtg/iOS/asi-http-request/S3/ASIS3BucketObject.m
techdragon.nguyen@gmail.com 128c60bc2b added download feature for iOS port
required libs: 
    * ZipArchive - Obj-C impl of zip
    * asi-http-request : http request help to assist with asynchoronous downloading of files
    * minizip : support for ZipArchive
    * 
Added default splash screen for iOS app.  (using the Wagic background to keep it neutral to module)

TODO: refine handling for iPad splash screen
    * add selection screen and input screen for location of downloadable content. (ie core files, image files, etc )
    * add support to opt out of backing up to iCloud for core files. Right now iOS will automatically backup all files under Documents folder to iCloud.  Consider only allowing player data to be backed up to iCloud.  All graphics and other assets are considered volatile.
2011-12-11 07:40:22 +00:00

75 lines
1.9 KiB
Objective-C

//
// ASIS3BucketObject.m
// Part of ASIHTTPRequest -> http://allseeing-i.com/ASIHTTPRequest
//
// Created by Ben Copsey on 13/07/2009.
// Copyright 2009 All-Seeing Interactive. All rights reserved.
//
#import "ASIS3BucketObject.h"
#import "ASIS3ObjectRequest.h"
@implementation ASIS3BucketObject
+ (id)objectWithBucket:(NSString *)theBucket
{
ASIS3BucketObject *object = [[[self alloc] init] autorelease];
[object setBucket:theBucket];
return object;
}
- (void)dealloc
{
[bucket release];
[key release];
[lastModified release];
[ETag release];
[ownerID release];
[ownerName release];
[super dealloc];
}
- (ASIS3ObjectRequest *)GETRequest
{
return [ASIS3ObjectRequest requestWithBucket:[self bucket] key:[self key]];
}
- (ASIS3ObjectRequest *)PUTRequestWithFile:(NSString *)filePath
{
return [ASIS3ObjectRequest PUTRequestForFile:filePath withBucket:[self bucket] key:[self key]];
}
- (ASIS3ObjectRequest *)DELETERequest
{
ASIS3ObjectRequest *request = [ASIS3ObjectRequest requestWithBucket:[self bucket] key:[self key]];
[request setRequestMethod:@"DELETE"];
return request;
}
- (NSString *)description
{
return [NSString stringWithFormat:@"Key: %@ lastModified: %@ ETag: %@ size: %llu ownerID: %@ ownerName: %@",[self key],[self lastModified],[self ETag],[self size],[self ownerID],[self ownerName]];
}
- (id)copyWithZone:(NSZone *)zone
{
ASIS3BucketObject *newBucketObject = [[[self class] alloc] init];
[newBucketObject setBucket:[self bucket]];
[newBucketObject setKey:[self key]];
[newBucketObject setLastModified:[self lastModified]];
[newBucketObject setETag:[self ETag]];
[newBucketObject setSize:[self size]];
[newBucketObject setOwnerID:[self ownerID]];
[newBucketObject setOwnerName:[self ownerName]];
return newBucketObject;
}
@synthesize bucket;
@synthesize key;
@synthesize lastModified;
@synthesize ETag;
@synthesize size;
@synthesize ownerID;
@synthesize ownerName;
@end