instance creation of peer refactored
(dispatch via peerFromDomain:name:port: into concrete SockAddr)
--- a/Socket.st Wed Jul 09 16:26:27 2003 +0200
+++ b/Socket.st Wed Jul 09 16:26:57 2003 +0200
@@ -1883,27 +1883,18 @@
"
!
-peerFromDomain:domain name:peerName andPort:port
- domain == #unix ifTrue:[
- ^ UDSocketAddress name:peerName
- ].
- domain == #inet ifTrue:[
- ^ IPSocketAddress hostAddress:(self ipAddressOfHost:peerName) port:port
- ].
- domain == #inet6 ifTrue:[
- ^ IPv6SocketAddress hostAddress:(self ipV6AddressOfHost:peerName) port:port
- ].
- domain == #appletalk ifTrue:[
- ^ AppletalkSocketAddress hostAddress:(self appletalkAddressOfHost:peerName) port:port
- ].
- domain == #decnet ifTrue:[
- ^ DecNetSocketAddress hostAddress:(self decnetAddressOfHost:peerName) port:port
- ].
- self error:'unsupported domain'.
+peerFromDomain:domain name:peerName port:port
+ |addrClass|
+
+ addrClass := self socketAddressClassForDomain:domain.
+ ^ addrClass peerName:peerName port:port
!
peerNameFromDomain:domain peer:peer
- ^ peer hostName
+ |addrClass|
+
+ addrClass := self socketAddressClassForDomain:domain.
+ ^ addrClass peerNameFromPeer:peer
!
portOfService:aNameOrNumber
@@ -2014,6 +2005,7 @@
"
self socketAddressClassForDomain:#inet
+ self socketAddressClassForDomain:#unix
"
!
@@ -4089,7 +4081,7 @@
If you are interested in the hostname, use getPeerName directly."
peer isNil ifTrue:[
- peer := self class peerFromDomain:domain name:peerName andPort:port.
+ peer := self class peerFromDomain:domain name:peerName port:port.
].
^ peer
!
@@ -4789,5 +4781,5 @@
!Socket class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic2/Socket.st,v 1.178 2003-06-02 20:29:52 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic2/Socket.st,v 1.179 2003-07-09 14:26:57 cg Exp $'
! !