Download FUNCIONAMIENTO DEL PROLOG CON EL JAVA

Document related concepts
no text concepts found
Transcript
FUNCIONAMIENTO DEL PROLOG CON
EL JAVA
Para poder comunicar el Prolog y el Java se han tenido que hacer DLL’s en C
con el JNI.
Se ha hecho una DLL que hace la comunicación con el Prolog a través de
eventos. Esta recoge los datos del Prolog y le devuelve las respuestas, permitiendo asi la
comunicación del Prolog.
Para la parte del Java se han tenido que realizar dos DLL’s, una para devolver el
primer dato que nos de el Prolog y la segunda para enviarle la respuesta al Prolog y
volver a recoger lo que le envía el Prolog.
La comunicación entre las 3 DLL’s es a través de la creación de eventos que se
disparan cuando el dato correspondiente se ha depositado en un fichero temporal dentro
de un directorio temporal.
En primer lugar, la DLL del Prolog crea los eventos, luego recoge el dato del
Prolog y, tras colocarlo en el fichero correspondiente, lanza el evento que recibe la DLL
del Java y se queda esperando hasta que le avisen que ya ha tenido una contestación.
Esta última, crea primero los eventos y se pone a esperar a que le llegue el aviso que le
indica que el dato del Prolog ya esta disponible. Tras despertarse, recoge el dato y lo
envía al usuario, el cual le da una respuesta que ella deposita en el fichero
correspondiente y le lanza el aviso a la DLL del Prolog que se despierta y le pasa el dato
recibido al Prolog. Este último le vuelve a devolver algo que es enviado de la misma
forma explicada anteriormente a la otra DLL del Java que vuelve a hacer los mismo.
Este proceso se repite hasta que se llega a una respuesta valida, ya sea verdadera
o falsa.