!act #15626 expose DatagramChannel creation in SocketOption

Fixes #15626
no, I’d propose to `collectFirst { case c: ChannelCreator => c.openDatagramChannel }`, no need for more indirection and Java/Scala differences