1
0
Fork 0
This repository has been archived on 2022-02-17. You can view files and clone it, but cannot push or open issues or pull requests.
osmo-st-network/pharo-porting/changes_for_pharo.st

60 lines
1.4 KiB
Smalltalk

"""
The following changes need to be kept for pharo.
"""
OsmoUDPSocketTest extend [
createSocket [
^ Socket newUDP
]
]
OsmoUDPSocket extend [
startRXProcess [
^ [[[
Processor activeProcess name: name, ' RX'.
self runRXProcess
] on: ConnectionClosed do: []
] ensure: [net_exit signal]] fork.
]
]
OsmoAppConnection extend [
createConnection: aHostname port: aPort [
<category: 'pharo-porting'>
^(SocketStream openConnectionToHostNamed: aHostname port: aPort)
binary;
noTimeout;
yourself
]
]
OsmoStreamSocketBase extend [
driveDispatch [
<category: 'private'>
[
[self dispatchOne] on: ConnectionClosed do: [:e |
self logError: 'OsmoApplication dispatch failed.' area: #osmo.
self scheduleReconnect]
] on: Error do: [:e |
e logException: 'OsmoApplication error' area: #osmo.
self scheduleReconnect]
]
driveSend [
<category: 'private'>
[
self sendOne.
] on: ConnectionClosed do: [:e |
e logException: 'OsmoAppConnection send failed' area: #osmo.
self scheduleReconnect.
]
]
]
OsmoStreamSocketBase class extend [
connectionException [
<category: 'pharo-porting'>
^ConnectionTimedOut
]
]