-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathLatestBooks.m
More file actions
116 lines (100 loc) · 2.52 KB
/
LatestBooks.m
File metadata and controls
116 lines (100 loc) · 2.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
//
// LatestBooks.m
// MyLauncher
//
// Created by ramonqlee on 10/15/12.
//
//
#import "LatestBooks.h"
#import "AppDelegate.h"
#import "CoreDataMgr.h"
#import "GDataXMLNode.h"
#import "Tree.h"
static LatestBooks * sSharedInstance;
#define kLatestBooksFileNameWithSuffix @"latestbooks.xml"
@implementation LatestBooks
-(oneway void)release
{
[super release];
sSharedInstance = nil;
}
+(id)shareInstance
{
if(!sSharedInstance)
{
sSharedInstance = [[LatestBooks alloc] init];
}
return sSharedInstance;
}
-(id)init:(NSString*)filePath
{
if (self = [super init]) {
[self parseLocalCategoryXML];
}
return self;
}
-(void)parseLocalCategoryXML
{
AppDelegate* delegate = (AppDelegate*)[[UIApplication sharedApplication]delegate];
NSString* xmlFileName = [[delegate applicationDocumentsDirectory]stringByAppendingPathComponent:kLatestBooksFileNameWithSuffix];
NSFileManager* fm = [NSFileManager defaultManager];
if(![fm fileExistsAtPath:xmlFileName])
{
return;
}
//parse xml in local directory
NSData* responseXML = [NSData dataWithContentsOfFile:xmlFileName];
NSError *error;
GDataXMLDocument *doc = [[[GDataXMLDocument alloc] initWithData:responseXML options:0 error:&error]autorelease];
if (doc == nil) {
return;
}
NSArray *members = [doc nodesForXPath:@"//channel/item" error:nil];
NSMutableArray* names = [[NSMutableArray alloc]init];
NSMutableArray* icons = [[NSMutableArray alloc]init];
for (GDataXMLElement *member in members){
NSString *title = [[member attributeForName:@"title"] stringValue];
NSString *icon = [[member attributeForName:@"icon"] stringValue];
NSLog(@"name:%@,icon:%@",title,icon);
[names addObject:title];
[icons addObject:icon];
}
//_mSectionName = names;
//_mSectionNameIcons = icons;
//[doc release];??
}
-(void)dealloc
{
// for (NSInteger i = 0; i < [_mData count]; ++i) {
// [[_mData objectAtIndex:i]release];
// }
// [_mData release];
// [_mSectionName release];
[super dealloc];
}
#pragma mark interfaceImplementation
//edit
-(void)addBook:(id)book
{
}
-(void)updateBook:(id)book
{
}
-(void)deleteBook:(id)book
{
}
//Query
//category related
-(NSInteger)countOfBooks
{
return 1;
}
-(id)bookInfo:(NSInteger)index
{
Tree* item=[[Tree alloc]init];
item.image = @"itemImage";
item.filename = @"iOSUIGuide.pdf";
item.name = @"iOSUIGuide";
return item;
}
@end