Returns the port registered for the specified
name (if it exists). The
host must be an empty string or
nil, since
NSMessagePort
instances on other hosts are inaccessible from
the current host.
The abstract port name server class. This defines an API
for working with port name servers... objects used to
manage access to ports in the distributed objects
system (see
NSConnection
).
Returns the default port name server for the
process. This is a nameserver for
host-local connections private to the current
user. If you with to create public connections or
connections to other hosts, you must use
[NSSocketPortNameServer +sharedInstance]
instead.
This default behavior may be altered by setting the
NSPortIsMessagePort user default to
NO, in which case an
NSSocketPortNameServer
will be used as the default system name server and
you will have to use
[NSMessagePortNameServer +sharedInstance]
for host-local, private connections.
Looks up the port with the specified name
on the local host and returns it or nil if
no port is found with that name.
Different nameservers have different namespaces
appropriate to the type of port they deal with,
so failing to find a named port with one nameserver does
not guarantee that a port does with that
name does not exist. This is a
convenience method calling
-portForName:onHost:
with a nil host argument.
Looks up the port with the specified name
on host and returns it or nil if
no port is found with that name.
Different nameservers have different namespaces
appropriate to the type of port they deal with,
so failing to find a named port with one nameserver does
not guarantee that a port does with that
name does not exist.
Registers port with the supplied
name, so that other processes can look it
up to contact it. A port may be registered
with more than one name by making multiple
calls to this method. Returns YES
on success, NO otherwise. The common
cause for failure is that another port is
already registered with the name. Raises
NSInvalidArgumentException if
given bad arguments.
Removes any port registration for the supplied
name (whether registered in the current
process or another). The common cause for
failure is that no port is registered with the
name. Raises
NSInvalidArgumentException if
given bad arguments.
This is the nameserver handling ports used for
distributed objects communications (see
NSConnection
) between hosts. Use the
[NSSocketPortNameServer +sharedInstance]
method to get a nameserver, rather than allocating and initialising one.
Concrete implementation of
[NSPortNameServer -portForName:onHost:] Looks up and returns a port with the specified name and host. If host is nil or an empty string, this performs a lookup for a port on the current host. If host is an asterisk ('*') then the lookup returns the first port found with the specified name on any machine on the local network. Returns nil if no matching port could be found.
Concrete implementation of
[NSPortNameServer -registerPort:forName:] Registers the port with the specified name such that it is available on all the IP addresses of the host on which the process is running. Returns YES on success, NO on failure (eg the name is already in use or there is a problem registering for some reason).
Concrete implementation of
[NSPortNameServer -removePortForName:] Unregisters the specified name from any associated port on the local host. Returns YES on success, NO on failure.
Instance Variables for NSSocketPortNameServer Class
Warning the underscore at the start of the
name of this instance variable indicates that, even
though it is not technically private, it is
intended for internal use within the package, and
you should not use the variable in other code.
Warning the underscore at the start of the
name of this instance variable indicates that, even
though it is not technically private, it is
intended for internal use within the package, and
you should not use the variable in other code.