CatNiP prefinal
Sähköinen nuottikirja, HY-TKTKL-OHTUPROJ KESÄ11
|
00001 // 00002 // IMSLPQueryHelper.h 00003 // WebConnectionProto 00004 // 00005 // Created by Antti V J Niemela, tkol on 5/30/11. 00006 // Copyright 2011 University of Helsinki. All rights reserved. 00007 // 00008 00009 #import <Foundation/Foundation.h> 00010 #import "MediaWikiDownload.h" 00011 #import "MediaWikiCategoryQueryDelegate.h" 00012 #import "MediaWikiCategoryQuery.h" 00013 #import "MediaWikiPageQueryDelegate.h" 00014 #import "MediaWikiPageQuery.h" 00015 #import "MediaWikiDownloadDelegate.h" 00016 #import "MediaWikiProgressListener.h" 00017 #import "CatNiPErrorManager.h" 00018 00019 #import "CompositionData.h" 00020 00021 @interface IMSLPQueryHelper : NSObject <MediaWikiCategoryQueryDelegate, MediaWikiPageQueryDelegate, 00022 MediaWikiDownloadDelegate, MediaWikiProgressListener> 00023 { 00025 NSString* categoryName; 00027 NSMutableArray* targetArray; 00029 NSString* composerName; 00032 NSString* pageTitle; 00033 CompositionData* thisComposition; 00034 int queryStatus; 00036 BOOL working; 00038 BOOL stopRequested; 00039 @private 00041 MediaWikiCategoryQuery* myCategoryQuery; 00043 MediaWikiPageQuery* myPageQuery; 00045 MediaWikiDownload* myDownload; 00046 } 00047 + (BOOL)readIMSLPCategory:(NSString *)categoryName reportTo:(id)targetObj withMethod:(SEL)targetMethod; 00048 00049 + (BOOL)readIMSLPPage:(NSString *)pageName composerName:(NSString *)cName reportTo:(id)targetObj withMethod:(SEL)targetMethod; 00050 00051 + (BOOL)readIMSLPFile:(NSString *)fileName ofComposition:(CompositionData*)theCompo reportTo:(id)targetObj 00052 withMethod:(SEL)targetMethod; 00053 00054 + (BOOL)readInProgressFor:(NSString*)destination; 00055 + (int)queryStatusFor:(NSString*)destination; 00056 + (float)downloadProgressFor:(NSString*)fileName; 00057 + (BOOL)abortRead:(NSString*)destination; 00058 + (BOOL)abortAllReads; 00059 00060 + (NSString*)imslpAPIURL; 00061 + (void)setImslpAPIURL:(NSString*)newUrl; 00062 00063 + (NSString*)imslpFetchURL; 00064 + (void)setImslpFetchURL:(NSString*)newUrl; 00065 00066 + (NSString*)imslpFileURL; 00067 + (void)setImslpFileURL:(NSString*)newUrl; 00068 00069 00070 - initWithCategory:(NSString*)category intoArray:(NSMutableArray *)targetArray; 00071 - initWithTitle:(NSString*)pTitle; 00072 - (void)startCategoryFetch; 00073 - (void)startPageFetch; 00074 - (void)startDownload; 00075 - (float)getDownloadProgress; 00076 00078 @property (copy) NSString* categoryName; 00080 @property (copy) NSString* composerName; 00082 @property (retain) NSMutableArray* targetArray; 00083 00085 @property (copy) NSString* pageTitle; 00086 00088 @property (assign) BOOL working; 00091 @property (assign) SEL targetMethod; 00093 @property (retain) id targetObject; 00095 @property (assign) BOOL stopRequested; 00097 @property (retain) CompositionData* thisComposition; 00099 @property (assign) int queryStatus; 00100 00101 00103 enum MWStatus { 00104 MWQueryNoStatus = 1 << 0, 00105 MWQueryStarting = 1 << 1, 00106 MWQueryInProgress = 1 << 2, 00107 MWQueryCompleted = 1 << 3, 00108 MWQueryFailed = 1 << 4, 00109 MWQueryCancelled = 1 << 5 00110 00111 }; 00112 00113 @end