aboutsummaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorrowanbeentje <rowan@beent.je>2010-08-26 01:22:52 +0000
committerrowanbeentje <rowan@beent.je>2010-08-26 01:22:52 +0000
commit91c2f021d4a8e323872cc733becbdfc19870ceb7 (patch)
treefb858ab649014c78aaca1512029b20713e8a450e /Source
parentdc9d005f21b3e281294f61d4d8e49d0ad003e8fb (diff)
downloadsequelpro-91c2f021d4a8e323872cc733becbdfc19870ceb7.tar.gz
sequelpro-91c2f021d4a8e323872cc733becbdfc19870ceb7.tar.bz2
sequelpro-91c2f021d4a8e323872cc733becbdfc19870ceb7.zip
Exporter:
- Enable alternating table lines in the export table view - this addresses Issue #797 - Reconnect GZIp & BZIP2 compression functionality (TODO: not currently working for file overwrites; to be discussed)
Diffstat (limited to 'Source')
-rw-r--r--Source/SPExportFile.h2
-rw-r--r--Source/SPExportFile.m16
-rw-r--r--Source/SPExportInitializer.m5
-rw-r--r--Source/SPSQLExporter.m2
4 files changed, 22 insertions, 3 deletions
diff --git a/Source/SPExportFile.h b/Source/SPExportFile.h
index fb61eef2..946f6aec 100644
--- a/Source/SPExportFile.h
+++ b/Source/SPExportFile.h
@@ -82,5 +82,5 @@
- (BOOL)delete;
- (void)writeData:(NSData *)data;
- (SPExportFileHandleStatus)createExportFileHandle:(BOOL)overwrite;
-
+- (void)setCompressionFormat:(SPFileCompressionFormat)fileCompressionFormat;
@end
diff --git a/Source/SPExportFile.m b/Source/SPExportFile.m
index e102b28e..1f09157f 100644
--- a/Source/SPExportFile.m
+++ b/Source/SPExportFile.m
@@ -168,6 +168,22 @@
return exportFileHandleStatus;
}
+/**
+ * Sets the compression level on the newly created file. Throws an exception
+ * if attempting to set the compression level when no file handle exists.
+ *
+ * @param fileCompressionFormat The compression level to support, from the SPFileCompressionFormat enum.
+ */
+- (void)setCompressionFormat:(SPFileCompressionFormat)fileCompressionFormat
+{
+ if (![self exportFileHandle]) {
+ [NSException raise:NSInternalInconsistencyException format:@"Attempting to set compression level of an uninitialized file handle."];
+ return;
+ }
+
+ [[self exportFileHandle] setShouldWriteWithCompressionFormat:fileCompressionFormat];
+}
+
#pragma mark -
#pragma mark Private API
diff --git a/Source/SPExportInitializer.m b/Source/SPExportInitializer.m
index a34f729b..4812dd82 100644
--- a/Source/SPExportInitializer.m
+++ b/Source/SPExportInitializer.m
@@ -397,8 +397,11 @@
// Create the actual file handles while dealing with errors (e.g. file already exists, etc) during creation
for (SPExportFile *exportFile in exportFiles)
- {
+ {
if ([exportFile createExportFileHandle:NO] == SPExportFileHandleCreated) {
+
+ // TODO: these will not currently get triggered if there's an error in creating the files - eg when the user later chooses "overwrite".
+ [exportFile setCompressionFormat:[exportOutputCompressionFormatPopupButton indexOfSelectedItem]];
if ([exportFile exportFileNeedsCSVHeader]) {
[self writeCSVHeaderToExportFile:exportFile];
}
diff --git a/Source/SPSQLExporter.m b/Source/SPSQLExporter.m
index a38732cb..186243b1 100644
--- a/Source/SPSQLExporter.m
+++ b/Source/SPSQLExporter.m
@@ -135,7 +135,7 @@
// Clear errors
[self setSqlExportErrors:@""];
-
+
// Copy over the selected item names into tables in preparation for iteration
NSMutableArray *targetArray;