aboutsummaryrefslogtreecommitdiffstats
path: root/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions
diff options
context:
space:
mode:
Diffstat (limited to 'Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions')
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Databases & Tables.h49
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Delegate & Proxy.h36
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Encoding.h53
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Field Definitions.h38
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Max Packet Size.h40
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Querying & Preparation.h103
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQL.h62
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnection.h177
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionDelegate.h106
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionProxy.h77
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConstants.h76
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLFastStreamingResult.h47
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLGeometryData.h53
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLResult.h120
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLStreamingResult.h54
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Server Info.h50
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/English.lproj/InfoPlist.stringsbin0 -> 92 bytes
-rw-r--r--Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/Info.plist40
-rwxr-xr-xFrameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/SPMySQLbin0 -> 1249328 bytes
l---------Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/Current1
20 files changed, 1182 insertions, 0 deletions
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Databases & Tables.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Databases & Tables.h
new file mode 100644
index 00000000..332b2680
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Databases & Tables.h
@@ -0,0 +1,49 @@
+//
+// $Id$
+//
+// Databases & Tables.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on February 11, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLConnection (Databases_and_Tables)
+
+// Database selection
+- (BOOL)selectDatabase:(NSString *)aDatabase;
+
+// Database lists
+- (NSArray *)databases;
+- (NSArray *)databasesLike:(NSString *)nameLikeString;
+
+// Table lists
+- (NSArray *)tables;
+- (NSArray *)tablesLike:(NSString *)nameLikeString;
+- (NSArray *)tablesFromDatabase:(NSString *)aDatabase;
+- (NSArray *)tablesLike:(NSString *)nameLikeString fromDatabase:(NSString *)aDatabase;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Delegate & Proxy.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Delegate & Proxy.h
new file mode 100644
index 00000000..cf132fcf
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Delegate & Proxy.h
@@ -0,0 +1,36 @@
+//
+// $Id$
+//
+// Delegate & Proxy.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on February 9, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLConnection (Delegate_and_Proxy)
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Encoding.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Encoding.h
new file mode 100644
index 00000000..bb5bf25d
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Encoding.h
@@ -0,0 +1,53 @@
+//
+// $Id$
+//
+// Encoding.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 14, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLConnection (Encoding)
+
+// Current connection encoding information
+- (NSString *)encoding;
+- (NSStringEncoding)stringEncoding;
+- (BOOL)encodingUsesLatin1Transport;
+
+// Setting connection encoding
+- (BOOL)setEncoding:(NSString *)theEncoding;
+- (BOOL)setEncodingUsesLatin1Transport:(BOOL)useLatin1;
+
+// Encoding storage and restoration
+- (void)storeEncodingForRestoration;
+- (void)restoreStoredEncoding;
+
+// Encoding conversion
++ (NSStringEncoding)stringEncodingForMySQLCharset:(const char *)mysqlCharset;
++ (NSString *)mySQLCharsetForStringEncoding:(NSStringEncoding)aStringEncoding;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Field Definitions.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Field Definitions.h
new file mode 100644
index 00000000..20e1ddc9
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Field Definitions.h
@@ -0,0 +1,38 @@
+//
+// $Id$
+//
+// Field Definitions.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on February 2, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLResult (Field_Definitions)
+
+- (NSArray *)fieldDefinitions;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Max Packet Size.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Max Packet Size.h
new file mode 100644
index 00000000..faa667d8
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Max Packet Size.h
@@ -0,0 +1,40 @@
+//
+// $Id$
+//
+// Max Packet Size.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on February 9, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLConnection (Max_Packet_Size)
+
+- (NSUInteger)maxQuerySize;
+- (BOOL)isMaxQuerySizeEditable;
+- (NSUInteger)setGlobalMaxQuerySize:(NSUInteger)newMaxSize;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Querying & Preparation.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Querying & Preparation.h
new file mode 100644
index 00000000..ff55f796
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Querying & Preparation.h
@@ -0,0 +1,103 @@
+//
+// $Id$
+//
+// Querying & Preparation.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 14, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLConnection (Querying_and_Preparation)
+
+// Data preparation
+- (NSString *)escapeAndQuoteString:(NSString *)theString;
+- (NSString *)escapeString:(NSString *)theString includingQuotes:(BOOL)includeQuotes;
+- (NSString *)escapeAndQuoteData:(NSData *)theData;
+- (NSString *)escapeData:(NSData *)theData includingQuotes:(BOOL)includeQuotes;
+
+// Queries
+- (SPMySQLResult *)queryString:(NSString *)theQueryString;
+- (SPMySQLFastStreamingResult *)streamingQueryString:(NSString *)theQueryString;
+- (id)streamingQueryString:(NSString *)theQueryString useLowMemoryBlockingStreaming:(BOOL)fullStreaming;
+- (id)queryString:(NSString *)theQueryString usingEncoding:(NSStringEncoding)theEncoding withResultType:(SPMySQLResultType)theReturnType;
+
+// Query information
+- (unsigned long long)rowsAffectedByLastQuery;
+- (unsigned long long)lastInsertID;
+
+// Connection and query error state
+- (BOOL)queryErrored;
+- (NSString *)lastErrorMessage;
+- (NSUInteger)lastErrorID;
++ (BOOL)isErrorIDConnectionError:(NSUInteger)theErrorID;
+
+// Query cancellation
+- (void)cancelCurrentQuery;
+- (BOOL)lastQueryWasCancelled;
+- (BOOL)lastQueryWasCancelledUsingReconnect;
+
+@end
+
+/**
+ * Set up static functions to allow fast calling with cached selectors
+ */
+
+static inline id SPMySQLConnectionEscapeString(SPMySQLConnection* self, NSString *theString, BOOL encloseInQuotes)
+{
+ typedef id (*SPMySQLConnectionEscapeStringMethodPtr)(SPMySQLConnection*, SEL, NSString *, BOOL);
+ static SPMySQLConnectionEscapeStringMethodPtr cachedMethodPointer;
+ static SEL cachedSelector;
+
+ if (!cachedSelector) cachedSelector = @selector(escapeString:includingQuotes:);
+ if (!cachedMethodPointer) cachedMethodPointer = (SPMySQLConnectionEscapeStringMethodPtr)[self methodForSelector:cachedSelector];
+
+ return cachedMethodPointer(self, cachedSelector, theString, encloseInQuotes);
+}
+
+static inline id SPMySQLConnectionEscapeData(SPMySQLConnection* self, NSData *theData, BOOL encloseInQuotes)
+{
+ typedef id (*SPMySQLConnectionEscapeDataMethodPtr)(SPMySQLConnection*, SEL, NSData *, BOOL);
+ static SPMySQLConnectionEscapeDataMethodPtr cachedMethodPointer;
+ static SEL cachedSelector;
+
+ if (!cachedSelector) cachedSelector = @selector(escapeData:includingQuotes:);
+ if (!cachedMethodPointer) cachedMethodPointer = (SPMySQLConnectionEscapeDataMethodPtr)[self methodForSelector:cachedSelector];
+
+ return cachedMethodPointer(self, cachedSelector, theData, encloseInQuotes);
+}
+
+static inline id SPMySQLConnectionQueryString(SPMySQLConnection* self, NSString *theQueryString, NSStringEncoding theEncoding, SPMySQLResultType theReturnType)
+{
+ typedef id (*SPMySQLConnectionQueryStringMethodPtr)(SPMySQLConnection*, SEL, NSString *, NSStringEncoding, SPMySQLResultType);
+ static SPMySQLConnectionQueryStringMethodPtr cachedMethodPointer;
+ static SEL cachedSelector;
+
+ if (!cachedSelector) cachedSelector = @selector(queryString:usingEncoding:withResultType:);
+ if (!cachedMethodPointer) cachedMethodPointer = (SPMySQLConnectionQueryStringMethodPtr)[self methodForSelector:cachedSelector];
+
+ return cachedMethodPointer(self, cachedSelector, theQueryString, theEncoding, theReturnType);
+} \ No newline at end of file
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQL.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQL.h
new file mode 100644
index 00000000..a9150f46
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQL.h
@@ -0,0 +1,62 @@
+//
+// $Id$
+//
+// SPMySQL.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 22, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+@class SPMySQLConnection, SPMySQLResult, SPMySQLStreamingResult, SPMySQLFastStreamingResult;
+
+// Global include file for the framework.
+// Constants
+#import "SPMySQLConstants.h"
+
+// Required category additions
+#import "SPMySQLStringAdditions.h"
+
+// MySQL Connection Delegate and Proxy protocols
+#import "SPMySQLConnectionDelegate.h"
+#import "SPMySQLConnectionProxy.h"
+
+// MySQL Connection class and public categories
+#import "SPMySQLConnection.h"
+#import "Delegate & Proxy.h"
+#import "Databases & Tables.h"
+#import "Max Packet Size.h"
+#import "Querying & Preparation.h"
+#import "Encoding.h"
+#import "Server Info.h"
+
+// MySQL result set, streaming subclasses of same, and associated categories
+#import "SPMySQLResult.h"
+#import "SPMySQLStreamingResult.h"
+#import "SPMySQLFastStreamingResult.h"
+#import "Field Definitions.h"
+
+// Result data objects
+#import "SPMySQLGeometryData.h" \ No newline at end of file
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnection.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnection.h
new file mode 100644
index 00000000..db6dc0af
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnection.h
@@ -0,0 +1,177 @@
+//
+// $Id$
+//
+// SPMySQLConnection.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 8, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+@interface SPMySQLConnection : NSObject {
+
+ // Delegate
+ NSObject <SPMySQLConnectionDelegate> *delegate;
+ BOOL delegateSupportsWillQueryString;
+ BOOL delegateSupportsConnectionLost;
+ BOOL delegateQueryLogging; // Defaults to YES if protocol implemented
+
+ // Basic connection details
+ NSString *host;
+ NSString *username;
+ NSString *password;
+ NSUInteger port;
+ BOOL useSocket;
+ NSString *socketPath;
+
+ // SSL connection details
+ BOOL useSSL;
+ NSString *sslKeyFilePath;
+ NSString *sslCertificatePath;
+ NSString *sslCACertificatePath;
+
+ // MySQL connection details and state
+ struct st_mysql *mySQLConnection;
+ SPMySQLConnectionState state;
+ BOOL connectedWithSSL;
+ BOOL userTriggeredDisconnect;
+ BOOL isReconnecting;
+ uint64_t initialConnectTime;
+ unsigned long mysqlConnectionThreadId;
+
+ // Connection proxy
+ NSObject <SPMySQLConnectionProxy> *proxy;
+ SPMySQLConnectionProxyState previousProxyState;
+ BOOL proxyStateChangeNotificationsIgnored;
+
+ // Connection lock to prevent non-thread-safe query misuse
+ NSConditionLock *connectionLock;
+
+ // Currently selected database
+ NSString *database;
+
+ // Delegate connection lost decisions
+ NSUInteger reconnectionRetryAttempts;
+ SPMySQLConnectionLostDecision lastDelegateDecisionForLostConnection;
+ NSLock *delegateDecisionLock;
+
+ // Timeout and keep-alive
+ NSUInteger timeout;
+ BOOL useKeepAlive;
+ NSTimer *keepAliveTimer;
+ CGFloat keepAliveInterval;
+ uint64_t lastKeepAliveTime;
+ NSUInteger keepAlivePingFailures;
+ pthread_t keepAlivePingThread;
+ BOOL keepAlivePingThreadActive;
+ BOOL keepAliveLastPingSuccess;
+ BOOL keepAliveLastPingBlocked;
+
+ // Encoding details - and also a record of any previous encoding to allow
+ // switching back and forth
+ NSString *encoding;
+ NSStringEncoding stringEncoding;
+ BOOL encodingUsesLatin1Transport;
+ NSString *previousEncoding;
+ BOOL previousEncodingUsesLatin1Transport;
+
+ // Server details
+ NSString *serverVersionString;
+
+ // Error state for the last query or connection state
+ NSUInteger queryErrorID;
+ NSString *queryErrorMessage;
+
+ // Query details
+ unsigned long long lastQueryAffectedRowCount;
+ unsigned long long lastQueryInsertID;
+
+ // Query cancellation details
+ BOOL lastQueryWasCancelled;
+ BOOL lastQueryWasCancelledUsingReconnect;
+
+ // Timing details
+ uint64_t lastConnectionUsedTime;
+ double lastQueryExecutionTime;
+
+ // Maximum query size
+ NSUInteger maxQuerySize;
+ BOOL maxQuerySizeIsEditable;
+ BOOL maxQuerySizeEditabilityChecked;
+ NSUInteger queryActionShouldRestoreMaxQuerySize;
+
+ // Queries
+ BOOL retryQueriesOnConnectionFailure;
+}
+
+#pragma mark -
+#pragma mark Synthesized properties
+
+@property (readwrite, assign, nonatomic) NSObject <SPMySQLConnectionDelegate> *delegate;
+@property (readwrite, assign, nonatomic) NSObject <SPMySQLConnectionProxy> *proxy;
+
+@property (readwrite, retain) NSString *host;
+@property (readwrite, retain) NSString *username;
+@property (readwrite, retain) NSString *password;
+@property (readwrite, assign) NSUInteger port;
+@property (readwrite, assign) BOOL useSocket;
+@property (readwrite, retain) NSString *socketPath;
+
+@property (readwrite, assign) BOOL useSSL;
+@property (readwrite, retain) NSString *sslKeyFilePath;
+@property (readwrite, retain) NSString *sslCertificatePath;
+@property (readwrite, retain) NSString *sslCACertificatePath;
+
+@property (readwrite, assign) NSUInteger timeout;
+@property (readwrite, assign) BOOL useKeepAlive;
+@property (readwrite, assign) CGFloat keepAliveInterval;
+
+@property (readonly) unsigned long mysqlConnectionThreadId;
+@property (readwrite, assign) BOOL retryQueriesOnConnectionFailure;
+
+@property (readwrite, assign) BOOL delegateQueryLogging;
+
+#pragma mark -
+#pragma mark Connection and disconnection
+
+- (BOOL)connect;
+- (BOOL)reconnect;
+- (void)disconnect;
+
+#pragma mark -
+#pragma mark Connection state
+
+- (BOOL)isConnected;
+- (BOOL)isConnectedViaSSL;
+- (BOOL)checkConnection;
+- (double)timeConnected;
+- (BOOL)userTriggeredDisconnect;
+
+#pragma mark -
+#pragma mark Connection utility
+
++ (NSString *)findSocketPath;
+
+@end \ No newline at end of file
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionDelegate.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionDelegate.h
new file mode 100644
index 00000000..f1a1f911
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionDelegate.h
@@ -0,0 +1,106 @@
+//
+// $Id$
+//
+// SPMySQLConnectionDelegate.h
+// SPMySQLFramework
+//
+// Created by Stuart Connolly (stuconnolly.com) on October 20, 2010.
+// Copyright (c) 2010 Stuart Connolly. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+@protocol SPMySQLConnectionDelegate <NSObject>
+@optional
+
+/**
+ * Notifies the delegate that a query will be performed.
+ *
+ * @param query The query string that will be sent to the MySQL server
+ * @param connection The connection instance performing the query
+ */
+- (void)willQueryString:(NSString *)query connection:(id)connection;
+
+/**
+ * Notifies the delegate that a query that was just performed gave
+ * an error.
+ *
+ * @param error The query error, as a string
+ * @param connection The connection instance which received the error
+ */
+- (void)queryGaveError:(NSString *)error connection:(id)connection;
+
+/**
+ * Notifies the delegate that it should display the supplied error.
+ * The connection may sometimes want to notify the user directly
+ * about certain issues, and will use this method to allow the
+ * delegate to do so.
+ *
+ * @param title The title of the message to display to the user
+ * @param message The main text of the message to display to the user
+ */
+- (void)showErrorWithTitle:(NSString *)title message:(NSString *)message;
+
+/**
+ * Requests the keychain password for the connection.
+ * When a connection is being made to a server, it is best not to
+ * set the password on the class; instead, it should be kept within
+ * the secure store, and the other connection details (user, host)
+ * can be used to look it up and supplied on demand.
+ *
+ * @param connection The connection instance to supply the password for
+ */
+- (NSString *)keychainPasswordForConnection:(id)connection;
+
+/**
+ * Notifies the delegate that no underlying connection is available,
+ * typically when the connection has been asked to perform a query
+ * or some other action for which a connection must be present.
+ * Those actions will still return false or error states as appropriate,
+ * but the delegate may wish to perform actions as a result of a total
+ * loss of connection.
+ *
+ * @param connection The connection instance which has lost the connection to the host
+ */
+- (void)noConnectionAvailable:(id)connection;
+
+/**
+ * Notifies the delegate that although a SSL connection was requested,
+ * MySQL made the connection without using SSL. This can happen because
+ * the server connected to doesn't support SSL or had it disabled, or
+ * that insufficient details were provided to make the connection over
+ * SSL.
+ */
+- (void)connectionFellBackToNonSSL:(id)connection;
+
+/**
+ * Notifies the delegate that the connection has been temporarily lost,
+ * and asks the delegate for guidance on how to proceed. If the delegate
+ * does not implement this method, reconnections will automatically be
+ * attempted - up to a small limit of attempts.
+ *
+ * @param connection The connection instance that requires a decision on how to proceed
+ */
+- (SPMySQLConnectionLostDecision)connectionLost:(id)connection;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionProxy.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionProxy.h
new file mode 100644
index 00000000..afd7c95a
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConnectionProxy.h
@@ -0,0 +1,77 @@
+//
+// $Id$
+//
+// SPMySQLConnectionProxy.h
+// SPMySQLFramework
+//
+// Created by Stuart Connolly (stuconnolly.com) on July 2, 2009.
+// Copyright (c) 2009 Stuart Connolly. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+/**
+ * Connection proxy state constants.
+ */
+typedef enum {
+ SPMySQLProxyIdle = 0,
+ SPMySQLProxyConnecting = 1,
+ SPMySQLProxyWaitingForAuth = 2,
+ SPMySQLProxyConnected = 3,
+ SPMySQLProxyForwardingFailed = 4
+} SPMySQLConnectionProxyState;
+
+
+@protocol SPMySQLConnectionProxy <NSObject>
+
+/**
+ * All the methods for this protocol are required.
+ */
+
+/**
+ * Connect the proxy.
+ */
+- (void)connect;
+
+/**
+ * Disconnect the proxy.
+ */
+- (void)disconnect;
+
+/**
+ * Get the current state of the proxy.
+ */
+- (SPMySQLConnectionProxyState)state;
+
+/**
+ * Get the local port being provided by the proxy.
+ */
+- (NSUInteger)localPort;
+
+/**
+ * Sets the method the proxy should call whenever the state of the connection changes.
+ */
+- (BOOL)setConnectionStateChangeSelector:(SEL)theStateChangeSelector delegate:(id)theDelegate;
+
+@end \ No newline at end of file
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConstants.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConstants.h
new file mode 100644
index 00000000..6fb3d279
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLConstants.h
@@ -0,0 +1,76 @@
+//
+// $Id$
+//
+// SPMySQLConstants.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 14, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+// Connection state
+typedef enum {
+ SPMySQLDisconnected = 0,
+ SPMySQLConnecting = 1,
+ SPMySQLConnected = 2,
+ SPMySQLDisconnecting = 3
+} SPMySQLConnectionState;
+
+// Connection lock state
+typedef enum {
+ SPMySQLConnectionIdle = 0,
+ SPMySQLConnectionBusy = 1
+} SPMySQLConnectionLockState;
+
+// Decision on how to handle lost connections
+// Connection check constants
+typedef enum {
+ SPMySQLConnectionLostDisconnect = 0,
+ SPMySQLConnectionLostReconnect = 1
+} SPMySQLConnectionLostDecision;
+
+// Result set row types
+typedef enum {
+ SPMySQLResultRowAsDefault = 0,
+ SPMySQLResultRowAsArray = 1,
+ SPMySQLResultRowAsDictionary = 2
+} SPMySQLResultRowType;
+
+// Result charset list
+typedef struct {
+ NSUInteger nr;
+ const char *name;
+ const char *collation;
+ NSUInteger char_minlen;
+ NSUInteger char_maxlen;
+} SPMySQLResultCharset;
+
+// Query result types
+typedef enum {
+ SPMySQLResultAsResult = 0,
+ SPMySQLResultAsFastStreamingResult = 1,
+ SPMySQLResultAsLowMemStreamingResult = 2
+} SPMySQLResultType; \ No newline at end of file
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLFastStreamingResult.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLFastStreamingResult.h
new file mode 100644
index 00000000..a4f07cdd
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLFastStreamingResult.h
@@ -0,0 +1,47 @@
+//
+// $Id$
+//
+// SPMySQLFastStreamingResult.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on February 2, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLFastStreamingResult : SPMySQLStreamingResult {
+
+ // Linked list setup
+ struct st_spmysqlstreamingrowdata *currentDataStoreEntry;
+ struct st_spmysqlstreamingrowdata *lastDataStoreEntry;
+
+ // Additional counts and memory length tracking
+ NSUInteger processedRowCount;
+
+ // Thread safety
+ pthread_mutex_t dataLock;
+}
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLGeometryData.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLGeometryData.h
new file mode 100644
index 00000000..e1313032
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLGeometryData.h
@@ -0,0 +1,53 @@
+//
+// $Id$
+//
+// SPMySQLGeometryData.h
+// sequel-pro
+//
+// Created by Hans-Jörg Bibiko on October 07, 2010
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+@interface SPMySQLGeometryData : NSObject
+{
+ // Holds the WKB bytes coming from SQL server
+ Byte *geoBuffer;
+
+ // Holds the buffer length
+ NSUInteger bufferLength;
+
+}
+
+- (id)initWithBytes:(const void *)geoData length:(NSUInteger)length;
++ (id)dataWithBytes:(const void *)geoData length:(NSUInteger)length;
+- (NSString *)description;
+- (NSUInteger)length;
+- (NSData *)data;
+- (NSString *)wktString;
+- (NSDictionary *)coordinates;
+- (NSInteger)wkbType;
+- (NSString *)wktType;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLResult.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLResult.h
new file mode 100644
index 00000000..baddf8aa
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLResult.h
@@ -0,0 +1,120 @@
+//
+// $Id$
+//
+// SPMySQLResult.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 26, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+
+typedef enum {
+ SPMySQLResultFieldAsUnhandled = 0,
+ SPMySQLResultFieldAsString = 1,
+ SPMySQLResultFieldAsStringOrBlob = 2,
+ SPMySQLResultFieldAsBlob = 3,
+ SPMySQLResultFieldAsBit = 4,
+ SPMySQLResultFieldAsGeometry = 5,
+ SPMySQLResultFieldAsNull = 6
+} SPMySQLResultFieldProcessor;
+
+@interface SPMySQLResult : NSObject <NSFastEnumeration> {
+
+ // Wrapped MySQL result set and its encoding
+ struct st_mysql_res *resultSet;
+ NSStringEncoding stringEncoding;
+
+ // Number of fields in the result set, and the field names and information
+ NSUInteger numberOfFields;
+ struct st_mysql_field *fieldDefinitions;
+ unsigned int *fieldTypes;
+ NSString **fieldNames;
+
+ // Number of rows in the result set and an internal data position counter
+ unsigned long long numberOfRows;
+ unsigned long long currentRowIndex;
+
+ // How long it took to execute the query that produced this result
+ double queryExecutionTime;
+
+ // The target result set type for fast enumeration and unspecified row retrieval
+ SPMySQLResultRowType defaultRowReturnType;
+
+ // Whether all data should be returned as strings - useful for working with some older server types
+ BOOL returnDataAsStrings;
+}
+
+// Master init method
+- (id)initWithMySQLResult:(void *)theResult stringEncoding:(NSStringEncoding)theStringEncoding;
+
+// Result set information
+- (NSUInteger)numberOfFields;
+- (unsigned long long)numberOfRows;
+
+// Column information
+- (NSArray *)fieldNames;
+
+// Data retrieval (note that fast enumeration is also supported, using instance-default format)
+- (void)seekToRow:(unsigned long long)targetRow;
+- (id)getRow;
+- (NSArray *)getRowAsArray;
+- (NSDictionary *)getRowAsDictionary;
+- (id)getRowAsType:(SPMySQLResultRowType)theType;
+
+// Data conversion
++ (NSString *)bitStringWithBytes:(const char *)bytes length:(NSUInteger)length padToLength:(NSUInteger)padLength;
+
+#pragma mark -
+#pragma mark Synthesized properties
+
+/**
+ * Set whether the result should return data types as strings. This may be useful
+ * for queries where the result may be returned in either string or data form, but
+ * will be converted to string for display and use anyway.
+ * Note that certain MySQL versions also return data types for strings - eg SHOW
+ * commands like SHOW CREATE TABLE or SHOW VARIABLES, and this conversion can be
+ * necessary there.
+ */
+@property (readwrite, assign) BOOL returnDataAsStrings;
+
+@property (readwrite, assign) SPMySQLResultRowType defaultRowReturnType;
+
+@end
+
+/**
+ * Set up a static function to allow fast calling with cached selectors
+ */
+static inline id SPMySQLResultGetRow(SPMySQLResult* self, SPMySQLResultRowType rowType)
+{
+ typedef id (*SPMySQLResultGetRowMethodPtr)(SPMySQLResult*, SEL, SPMySQLResultRowType);
+ static SPMySQLResultGetRowMethodPtr cachedMethodPointer;
+ static SEL cachedSelector;
+
+ if (!cachedSelector) cachedSelector = @selector(getRowAsType:);
+ if (!cachedMethodPointer) cachedMethodPointer = (SPMySQLResultGetRowMethodPtr)[self methodForSelector:cachedSelector];
+
+ return cachedMethodPointer(self, cachedSelector, rowType);
+} \ No newline at end of file
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLStreamingResult.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLStreamingResult.h
new file mode 100644
index 00000000..5abb85db
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/SPMySQLStreamingResult.h
@@ -0,0 +1,54 @@
+//
+// $Id$
+//
+// SPMySQLStreamingResult.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on February 18, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+@interface SPMySQLStreamingResult : SPMySQLResult {
+
+ // Keep a link to the parent connection for locking purposes
+ SPMySQLConnection *parentConnection;
+
+ // Streaming result information and tracking
+ BOOL connectionUnlocked;
+ BOOL dataDownloaded;
+
+ // Counts and memory length tracking
+ NSUInteger downloadedRowCount;
+
+ IMP isConnectedPtr;
+ SEL isConnectedSelector;
+}
+
+- (id)initWithMySQLResult:(void *)theResult stringEncoding:(NSStringEncoding)theStringEncoding connection:(SPMySQLConnection *)theConnection;
+
+// Allow result fetching to be cancelled
+- (void)cancelResultLoad;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Server Info.h b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Server Info.h
new file mode 100644
index 00000000..d8f5f183
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Headers/Server Info.h
@@ -0,0 +1,50 @@
+//
+// $Id$
+//
+// Server Info.h
+// SPMySQLFramework
+//
+// Created by Rowan Beentje (rowan.beent.je) on January 14, 2012
+// Copyright (c) 2012 Rowan Beentje. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+@class SPMySQLResult;
+
+@interface SPMySQLConnection (Server_Info)
+
+// Server version information
+- (NSString *)serverVersionString;
+- (NSUInteger)serverMajorVersion;
+- (NSUInteger)serverMinorVersion;
+- (NSUInteger)serverReleaseVersion;
+
+// Server version comparisons
+- (BOOL)serverVersionIsGreaterThanOrEqualTo:(NSUInteger)aMajorVersion minorVersion:(NSUInteger)aMinorVersion releaseVersion:(NSUInteger)aReleaseVersion;
+
+// Server tasks & processes
+- (SPMySQLResult *)listProcesses;
+- (BOOL)killQueryOnThreadID:(unsigned long)theThreadID;
+
+@end
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/English.lproj/InfoPlist.strings b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/English.lproj/InfoPlist.strings
new file mode 100644
index 00000000..dea12de4
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/English.lproj/InfoPlist.strings
Binary files differ
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/Info.plist b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/Info.plist
new file mode 100644
index 00000000..6f7e4285
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/Resources/Info.plist
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>BuildMachineOSBuild</key>
+ <string>11D50b</string>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>SPMySQL</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.yourcompany.SPMySQL</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>SPMySQL</string>
+ <key>CFBundlePackageType</key>
+ <string>FMWK</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleSignature</key>
+ <string>SPDT</string>
+ <key>CFBundleVersion</key>
+ <string>1</string>
+ <key>DTCompiler</key>
+ <string>com.apple.compilers.llvm.clang.1_0</string>
+ <key>DTPlatformBuild</key>
+ <string>10M2518</string>
+ <key>DTPlatformVersion</key>
+ <string>PG</string>
+ <key>DTSDKBuild</key>
+ <string>9L31a</string>
+ <key>DTSDKName</key>
+ <string>macosx10.5</string>
+ <key>DTXcode</key>
+ <string>0400</string>
+ <key>DTXcodeBuild</key>
+ <string>10M2518</string>
+</dict>
+</plist>
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/SPMySQL b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/SPMySQL
new file mode 100755
index 00000000..8b1d8803
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/A/SPMySQL
Binary files differ
diff --git a/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/Current b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/Current
new file mode 120000
index 00000000..8c7e5a66
--- /dev/null
+++ b/Frameworks/SPMySQLFramework/build/Debug/SPMySQL.framework/Versions/Current
@@ -0,0 +1 @@
+A \ No newline at end of file