00001 /* 00002 * Copyright (c) 2008 Plausible Labs. 00003 * All rights reserved. 00004 * 00005 * Redistribution and use in source and binary forms, with or without 00006 * modification, are permitted provided that the following conditions 00007 * are met: 00008 * 1. Redistributions of source code must retain the above copyright 00009 * notice, this list of conditions and the following disclaimer. 00010 * 2. Redistributions in binary form must reproduce the above copyright 00011 * notice, this list of conditions and the following disclaimer in the 00012 * documentation and/or other materials provided with the distribution. 00013 * 3. Neither the name of the copyright holder nor the names of any contributors 00014 * may be used to endorse or promote products derived from this 00015 * software without specific prior written permission. 00016 * 00017 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 00018 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 00019 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 00020 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 00021 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 00022 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 00023 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 00024 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 00025 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 00026 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 00027 * POSSIBILITY OF SUCH DAMAGE. 00028 */ 00029 00030 00031 /* Dependencies */ 00032 #import <Foundation/Foundation.h> 00033 00034 /* Library Includes */ 00035 #import "PLResultSet.h" 00036 #import "PLDatabase.h" 00037 00038 #import "PLSqliteDatabase.h" 00039 #import "PLSqliteResultSet.h" 00040 00041 /* Error Domain and Codes */ 00042 extern NSString *PLDatabaseErrorDomain; 00043 extern NSString *PLDatabaseErrorQueryStringKey; 00044 extern NSString *PLDatabaseErrorVendorErrorKey; 00045 extern NSString *PLDatabaseErrorVendorStringKey; 00046 00050 typedef enum { 00053 PLDatabaseErrorUnknown = 0, 00054 00056 PLDatabaseErrorFileNotFound = 1, 00057 00059 PLDatabaseErrorQueryFailed = 2, 00060 00062 PLDatabaseErrorInvalidStatement = 3, 00063 } PLDatabaseError; 00064 00065 #ifdef PL_DB_PRIVATE 00066 00067 @interface PlausibleDatabase : NSObject { 00068 } 00069 00070 + (NSError *) errorWithCode: (PLDatabaseError) errorCode localizedDescription: (NSString *) localizedDescription 00071 queryString: (NSString *) queryString 00072 vendorError: (NSNumber *) vendorError vendorErrorString: (NSString *) vendorErrorString; 00073 00074 @end 00075 00076 #endif /* PL_DB_PRIVATE */ 00077
1.5.5