Esta biblioteca proporciona API para enviar/recibir mensajes hacia/desde otro proceso de aplicación (local o remoto) para protocolos sin conexión.
Cuando la dirección del host local o la dirección IP no se proporciona en el campo localHost
opcional, la dirección localhost
está vinculada de forma predeterminada. El número de puerto local que se utiliza para conectarse al servidor remoto se determina aleatoriamente (puerto efímero).
El udp:Client
se utiliza para interactuar con el host UDP remoto y se puede definir de la siguiente manera:
udp : Client socketClient = check new ;
udp : Datagram datagram = {
remoteHost : " localhost " ,
remotePort : 48829 ,
data : " Hello Ballerina " . toBytes ()
};
check socketClient -> sendDatagram ( datagram );
readonly & udp : Datagram result = check socketClient -> receiveDatagram ();
check socketClient -> close ();
udp:ConnectClient
se configura proporcionando el remoteHost
y remotePort
para que solo reciba y envíe datos del host remoto configurado. Una vez conectado, no se podrán recibir ni enviar datos a ningún otro host. El cliente permanece conectado hasta que se cierra explícitamente. Si el número de bytes asignado al método writeBytes
es mayor que el tamaño de datos permitido por un datagrama, enviará iterativamente todos los bytes con varios datagramas.
udp : ConnectClient socketClient = check new ( " localhost " , 48829 );
string msg = " Hello Ballerina " ;
check socketClient -> writeBytes ( msg . toBytes ());
readonly & byte [] result = check socketClient -> readBytes ();
check socketClient -> close ();
udp:Listener
se utiliza para escuchar la solicitud de socket entrante.
udp:Listener
puede tener los siguientes métodos.
onBytes(readonly & byte[] data, udp:Caller caller)
o onDatagram(readonly & udp:Datagram, udp:Caller)
: estos métodos remotos se invocan una vez que se recibe el contenido del cliente. El cliente se representa mediante udp:Caller
.
onError(readonly & udp:Error err)
: este método remoto se invoca en una situación de error.
Un udp:Listener
se puede definir de la siguiente manera:
service on new udp:Listener( 48829 ) {
remote function onDatagram( readonly & udp : Datagram datagram )
returns udp : Datagram | udp : Error ? {
// Handle the content received from the client
}
remote function onError( udp : Error err ) {
// Handle the error situation
}
}
Las pestañas de Problemas y Proyectos están deshabilitadas para este repositorio ya que forma parte de la Biblioteca estándar de Ballerina. Para informar errores, solicitar nuevas funciones, iniciar nuevas discusiones, ver tableros de proyectos, etc., visite el repositorio para padres de Ballerina Standard Library.
Este repositorio solo contiene el código fuente del paquete.
Descargue e instale Java SE Development Kit (JDK) versión 21 (desde una de las siguientes ubicaciones).
Oráculo
AbiertoJDK
Nota: Establezca la variable de entorno JAVA_HOME en el nombre de la ruta del directorio en el que instaló JDK.
Ejecute los siguientes comandos para compilar desde la fuente.
Para construir el paquete:
./gradlew clean build
Para ejecutar las pruebas:
./gradlew clean test
Para ejecutar un grupo de pruebas
./gradlew clean test -Pgroups=<test_group_names>
Para construir sin las pruebas:
./gradlew clean build -x test
Para depurar la implementación del paquete:
./gradlew clean build -Pdebug=<port>
Para depurar con el lenguaje Ballerina:
./gradlew clean build -PbalJavaDebug=<port>
Publique los artefactos generados en el repositorio central local de Ballerina:
./gradlew clean build -PpublishToLocalCentral=true
Publique los artefactos generados en el repositorio central de Ballerina:
./gradlew clean build -PpublishToCentral=true
Como proyecto de código abierto, Ballerina agradece las contribuciones de la comunidad.
Para obtener más información, vaya a las pautas de contribución.
Se anima a todos los contribuyentes a leer el Código de conducta de Ballerina.
udp
.