aboutsummaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
Diffstat (limited to 'Source')
-rw-r--r--Source/SPUserManager.h3
-rw-r--r--Source/SPUserManager.m29
-rw-r--r--Source/TableDocument.m2
3 files changed, 15 insertions, 19 deletions
diff --git a/Source/SPUserManager.h b/Source/SPUserManager.h
index d673226a..cd397e3d 100644
--- a/Source/SPUserManager.h
+++ b/Source/SPUserManager.h
@@ -42,14 +42,13 @@
IBOutlet NSTreeController *treeController;
IBOutlet NSMutableDictionary *privsSupportedByServer;
}
+@property (nonatomic, retain) MCPConnection *mySqlConnection;
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator;
- (NSManagedObjectModel *)managedObjectModel;
- (NSManagedObjectContext *)managedObjectContext;
- (id)initWithConnection:(MCPConnection *)connection;
-- (void)setConnection:(MCPConnection *)connection;
-- (MCPConnection *)connection;
- (void)show;
- (void)initializeChild:(NSManagedObject *)child withItem:(NSDictionary *)item;
diff --git a/Source/SPUserManager.m b/Source/SPUserManager.m
index aaa56b1a..4b7863e1 100644
--- a/Source/SPUserManager.m
+++ b/Source/SPUserManager.m
@@ -29,6 +29,7 @@
#import "ImageAndTextCell.h"
#import "SPArrayAdditions.h"
#import "SPStringAdditions.h"
+#import "SPGrowlController.h"
#define COLUMNIDNAME @"NameColumn"
@@ -44,6 +45,8 @@
@implementation SPUserManager
+@synthesize mySqlConnection;
+
- (id)init
{
[self dealloc];
@@ -57,7 +60,7 @@
return nil;
}
- [self setConnection:connection];
+ self.mySqlConnection = connection;
// When reading privileges from the database, they are converted automatically to a
// lowercase key used in the user privileges stores, from which a GRANT syntax
@@ -97,10 +100,6 @@
selector:@selector(contextDidSave:)
name:NSManagedObjectContextDidSaveNotification
object:nil];
- //[[NSNotificationCenter defaultCenter] addObserver:self
-// selector:@selector(contextDidChange:)
-// name:NSManagedObjectContextObjectsDidChangeNotification
-// object:nil];
[tabView selectTabViewItemAtIndex:0];
NSTableColumn *tableColumn = [outlineView tableColumnWithIdentifier:COLUMNIDNAME];
@@ -110,7 +109,6 @@
[tableColumn setDataCell:imageAndTextCell];
[self _initializeUsers];
-// [NSThread detachNewThreadSelector:@selector(_initializeUsers) toTarget:self withObject:nil];
[[self window] makeKeyAndOrderFront:nil];
}
@@ -124,7 +122,7 @@
NSMutableArray *resultAsArray = [NSMutableArray array];
NSMutableArray *usersResultArray = [NSMutableArray array];
- MCPResult *result = [[[self connection] queryString:@"SELECT * FROM `mysql`.`user` ORDER BY `user`"] retain];
+ MCPResult *result = [[self.mySqlConnection queryString:@"SELECT * FROM `mysql`.`user` ORDER BY `user`"] retain];
int rows = [result numOfRows];
if (rows > 0)
{
@@ -146,7 +144,7 @@
[privsSupportedByServer removeAllObjects];
// Attempt to use SHOW PRIVILEGES syntax - supported since 4.1.0
- result = [[self connection] queryString:@"SHOW PRIVILEGES"];
+ result = [self.mySqlConnection queryString:@"SHOW PRIVILEGES"];
if ([result numOfRows]) {
while (privRow = [result fetchRowAsArray]) {
privKey = [NSMutableString stringWithString:[[privRow objectAtIndex:0] lowercaseString]];
@@ -157,7 +155,7 @@
// If that fails, base privilege support on the mysql.users columns
} else {
- result = [[self connection] queryString:@"SHOW COLUMNS FROM `mysql`.`user`"];
+ result = [self.mySqlConnection queryString:@"SHOW COLUMNS FROM `mysql`.`user`"];
while (privRow = [result fetchRowAsArray]) {
privKey = [NSMutableString stringWithString:[privRow objectAtIndex:0]];
if (![privKey hasSuffix:@"_priv"]) continue;
@@ -592,7 +590,7 @@
}
droppedUsers = [[droppedUsers substringToIndex:[droppedUsers length]-2] mutableCopy];
- [[self connection] queryString:[NSString stringWithFormat:@"DROP USER %@", droppedUsers]];
+ [self.mySqlConnection queryString:[NSString stringWithFormat:@"DROP USER %@", droppedUsers]];
return TRUE;
}
@@ -607,7 +605,7 @@
[[user valueForKey:@"host"] tickQuotedString],
[[[user parent] valueForKey:@"password"] tickQuotedString]];
// Create user in database
- [[self connection] queryString:[NSString stringWithFormat:createStatement]];
+ [self.mySqlConnection queryString:[NSString stringWithFormat:createStatement]];
if ([self checkAndDisplayMySqlError])
{
@@ -615,7 +613,6 @@
}
}
}
-
return TRUE;
}
@@ -654,7 +651,7 @@
[[[user parent] valueForKey:@"user"] tickQuotedString],
[[user valueForKey:@"host"] tickQuotedString]];
DLog(@"%@", grantStatement);
- [[self connection] queryString:[NSString stringWithFormat:grantStatement]];
+ [self.mySqlConnection queryString:[NSString stringWithFormat:grantStatement]];
[self checkAndDisplayMySqlError];
}
@@ -666,7 +663,7 @@
[[[user parent] valueForKey:@"user"] tickQuotedString],
[[user valueForKey:@"host"] tickQuotedString]];
DLog(@"%@", revokeStatement);
- [[self connection] queryString:[NSString stringWithFormat:revokeStatement]];
+ [self.mySqlConnection queryString:[NSString stringWithFormat:revokeStatement]];
[self checkAndDisplayMySqlError];
}
}
@@ -703,9 +700,9 @@
- (BOOL)checkAndDisplayMySqlError
{
- if (![[[self connection] getLastErrorMessage] isEqualToString:@""])
+ if (![[self.mySqlConnection getLastErrorMessage] isEqualToString:@""])
{
- NSAlert *alert = [NSAlert alertWithMessageText:@"MySQL Error" defaultButton:@"OK" alternateButton:nil otherButton:nil informativeTextWithFormat:[[self connection] getLastErrorMessage]];
+ NSAlert *alert = [NSAlert alertWithMessageText:@"MySQL Error" defaultButton:@"OK" alternateButton:nil otherButton:nil informativeTextWithFormat:[self.mySqlConnection getLastErrorMessage]];
[alert runModal];
return FALSE;
diff --git a/Source/TableDocument.m b/Source/TableDocument.m
index 82092668..6b9e5eb4 100644
--- a/Source/TableDocument.m
+++ b/Source/TableDocument.m
@@ -625,7 +625,7 @@
userManagerInstance = [[SPUserManager alloc] initWithConnection:mySQLConnection];
}
- [userManagerInstance setConnection:mySQLConnection];
+ userManagerInstance.mySqlConnection = mySQLConnection;
// Set the cutom query editor's MySQL version
[customQueryInstance setMySQLversion:mySQLVersion];