-include ./Version
LIBRARY_NAME = libSOGo
+TOOL_NAME = agenor_email2uid
libSOGo_SOVERSION=$(MAJOR_VERSION).$(MINOR_VERSION)
AgenorUserManager.m \
NSObject+AptComparison.m \
+# tools
+
+agenor_email2uid_OBJC_FILES += \
+ agenor_email2uid.m \
+ AgenorUserManager.m \
+ SOGoLRUCache.m \
+
-include GNUmakefile.preamble
include $(GNUSTEP_MAKEFILES)/library.make
+include $(GNUSTEP_MAKEFILES)/tool.make
-include GNUmakefile.postamble
--- /dev/null
+/*
+ Copyright (C) 2005 SKYRIX Software AG
+
+ This file is part of OpenGroupware.org.
+
+ OGo is free software; you can redistribute it and/or modify it under
+ the terms of the GNU Lesser General Public License as published by the
+ Free Software Foundation; either version 2, or (at your option) any
+ later version.
+
+ OGo is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with OGo; see the file COPYING. If not, write to the
+ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
+ 02111-1307, USA.
+*/
+
+#include "AgenorUserManager.h"
+#include "common.h"
+
+static void usage(NSArray *args) {
+ fprintf(stderr, "usage: %s <uid1> <uid2> <uid3>\n",
+ [[args objectAtIndex:0] cString]);
+}
+
+static void doIt(NSArray *args) {
+ AgenorUserManager *userManager;
+ NSEnumerator *e;
+ NSString *email;
+
+ if ([args count] < 2) {
+ usage(args);
+ return;
+ }
+
+ userManager = [AgenorUserManager sharedUserManager];
+ NSLog(@"We are using user manager: %@", userManager);
+
+ e = [args objectEnumerator];
+ [e nextObject]; /* consume the command name */
+
+ while ((email = [e nextObject]) != nil) {
+ NSString *uid;
+
+ uid = [userManager getUIDForEmail:email];
+
+ if ([uid isNotNull])
+ printf("%s: %s\n", [email cString], [uid cString]);
+ else {
+ fprintf(stderr, "ERROR: did not find uid for email: '%s'\n",
+ [email cString]);
+ }
+ }
+}
+
+int main(int argc, char **argv, char **env) {
+ NSAutoreleasePool *pool;
+
+ pool = [[NSAutoreleasePool alloc] init];
+#if LIB_FOUNDATION_LIBRARY
+ [NSProcessInfo initializeWithArguments:argv count:argc environment:env];
+#endif
+
+ doIt([[NSProcessInfo processInfo] argumentsWithoutDefaults]);
+
+ [pool release];
+ return 0;
+}