Author: thebeing
Date: Mon May 15 22:40:32 2017
New Revision: 40504
URL: http://svn.gna.org/viewcvs/gnustep?rev=40504&view=rev
Log:
More expressive return codes for bus name requests
Modified:
libs/dbuskit/trunk/Headers/DKPortNameServer.h
libs/dbuskit/trunk/Source/DKPortNameServer.m
Modified: libs/dbuskit/trunk/Headers/DKPortNameServer.h
URL:
http://svn.gna.org/viewcvs/gnustep/libs/dbuskit/trunk/Headers/DKPortNameServer.h?rev=40504&r1=40503&r2=40504&view=diff
==============================================================================
--- libs/dbuskit/trunk/Headers/DKPortNameServer.h (original)
+++ libs/dbuskit/trunk/Headers/DKPortNameServer.h Mon May 15 22:40:32 2017
@@ -34,6 +34,31 @@
DKPortNameFlagMax = 7
};
+/**
+ * The status returned by D-Bus in response to a request to register a name.
+ */
+typedef NS_ENUM(uint32_t, DKPortNameRegistrationStatus)
+{
+ /**
+ * The port is now the primary owner of the name.
+ */
+ DKPortNamePrimaryOwner = 1,
+ /**
+ * The name has been queued and will be assigned to the port once previous
+ * registrands of the name go away.
+ */
+ DKPortNameQueued = 2,
+ /**
+ * The name is already in use by a different port, but queuing was not
+ * requested.
+ */
+ DKPortNameExists = 3,
+ /**
+ * The port had already been registered by the port. No changes occurred.
+ */
+ DKPortNameAlreadyOwner = 4
+};
+
@interface DKPortNameServer: NSObject
{
@private
@@ -68,12 +93,12 @@
- (DKPort*)portForName: (NSString*)name;
-- (BOOL)registerPort: (DKPort*)port
- name: (NSString*)name;
+- (DKPortNameRegistrationStatus)registerPort: (DKPort*)port
+ name: (NSString*)name;
-- (BOOL)registerPort: (DKPort*)port
- name: (NSString*)name
- flags: (DKPortNameFlags)flags;
+- (DKPortNameRegistrationStatus)registerPort: (DKPort*)port
+ name: (NSString*)name
+ flags: (DKPortNameFlags)flags;
- (void)removePortForName: (NSString*)name;
@end
Modified: libs/dbuskit/trunk/Source/DKPortNameServer.m
URL:
http://svn.gna.org/viewcvs/gnustep/libs/dbuskit/trunk/Source/DKPortNameServer.m?rev=40504&r1=40503&r2=40504&view=diff
==============================================================================
--- libs/dbuskit/trunk/Source/DKPortNameServer.m (original)
+++ libs/dbuskit/trunk/Source/DKPortNameServer.m Mon May 15 22:40:32 2017
@@ -30,6 +30,7 @@
#import <Foundation/NSDictionary.h>
#import <Foundation/NSHashTable.h>
#import <Foundation/NSString.h>
+#import <Foundation/NSException.h>
#include <stdint.h>
#include <dbus/dbus.h>
@@ -120,18 +121,20 @@
return thisPort;
}
-- (BOOL)registerPort: (DKPort*)port
- name: (NSString*)name
+- (DKPortNameRegistrationStatus)registerPort: (DKPort*)port
+ name: (NSString*)name
{
return [self registerPort: port
name: name
flags: 0];
}
-- (BOOL)registerPort: (DKPort*)port
- name: (NSString*)name
- flags: (DKPortNameFlags)flags
+- (DKPortNameRegistrationStatus)registerPort: (DKPort*)port
+ name: (NSString*)name
+ flags: (DKPortNameFlags)flags
{
- return NO;
+ [NSException raise: NSGenericException
+ format: @"Not implemented"];
+ return DKPortNameExists;
}
- (void)removePortForName: (NSString*)name
_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs