diff options
author | Matt Ronge <mronge@mronge.com> | 2013-02-01 13:04:58 -0600 |
---|---|---|
committer | Matt Ronge <mronge@mronge.com> | 2013-02-01 13:04:58 -0600 |
commit | e759990770cde316ce5d74d3fec155b9bf8d00bb (patch) | |
tree | b3ee036620bca81e8734fc485dd087dd23466b01 | |
parent | 64ea14666f89fe4aac3beea7699d3af233710cfb (diff) |
Forgot a file
-rw-r--r-- | src/objc/imap/MCOFetchFoldersOperation.mm | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/objc/imap/MCOFetchFoldersOperation.mm b/src/objc/imap/MCOFetchFoldersOperation.mm new file mode 100644 index 00000000..2418666b --- /dev/null +++ b/src/objc/imap/MCOFetchFoldersOperation.mm @@ -0,0 +1,35 @@ +// +// MCOFetchFoldersOperation.m +// mailcore2 +// +// Created by Matt Ronge on 1/31/13. +// Copyright (c) 2013 MailCore. All rights reserved. +// + +#import "MCOFetchFoldersOperation.h" +#import "NSError+MCO.h" +#import "NSString+MCO.h" +#import "MCOOperation+Internals.h" + +#import <Foundation/Foundation.h> +#import <mailcore/MCAsync.h> + +using namespace mailcore; + +@implementation MCOFetchFoldersOperation +- (void)operationCompleted { + IMAPFetchFoldersOperation *op = dynamic_cast<IMAPFetchFoldersOperation *>(self.operation); + if (op->error() == ErrorNone) { + NSMutableArray *nsfolders = [NSMutableArray array]; + Array *folders = op->folders(); + for (int i = 0 ; i < folders->count(); folders++) { + NSString *folder = [NSString mco_stringWithMCObject:folders->objectAtIndex(i)]; + [nsfolders addObject:folder]; + } + + self.completionBlock(nil, self, nsfolders); + } else { + self.completionBlock([NSError mco_errorWithErrorCode:op->error()], self, nil); + } +} +@end |