3 #import <Foundation/NSObject.h>
6 @class OCSFolderManager;
8 @interface Tool : NSObject
11 OCSFolderManager *folderManager;
18 #include <OGoContentStore/OCSFolder.h>
19 #include <OGoContentStore/OCSFolderManager.h>
25 if ((self = [super init])) {
26 self->ud = [[NSUserDefaults standardUserDefaults] retain];
27 self->folderManager = [[OCSFolderManager defaultFolderManager] retain];
33 [self->folderManager release];
39 - (int)runOnPath:(NSString *)_path {
41 NSString *dirname, *filename;
44 dirname = [_path stringByDeletingLastPathComponent];
45 filename = [_path lastPathComponent];
47 if ((folder = [self->folderManager folderAtPath:dirname]) == nil) {
48 [self logWithFormat:@"did not find folder for file: '%@'", dirname];
52 if ((content = [folder fetchContentWithName:filename]) == nil) {
53 [self logWithFormat:@"did not find file: '%@'", _path];
57 printf("%s\n", [content cString]);
66 [self logWithFormat:@"manager: %@", self->folderManager];
68 if (![self->folderManager canConnect]) {
69 [self logWithFormat:@"cannot connect folder-info database!"];
73 e = [[[NSProcessInfo processInfo] argumentsWithoutDefaults]
75 [e nextObject]; // skip tool name
77 while ((path = [e nextObject]))
78 [self runOnPath:path];
83 return [(Tool *)[[[self alloc] init] autorelease] run];
88 int main(int argc, char **argv, char **env) {
89 NSAutoreleasePool *pool;
92 pool = [[NSAutoreleasePool alloc] init];
93 #if LIB_FOUNDATION_LIBRARY
94 [NSProcessInfo initializeWithArguments:argv count:argc environment:env];