Skip to content

A Java application that is able to execute logic programs with different solvers, using the EmbASP framework

License

Notifications You must be signed in to change notification settings

DeMaCS-UNICAL/EmbASPServerExecutor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub license GitHub release GitHub issues Twitter

EmbASPServerExecutor

EmbASPServerExecutor is a Java application that is able to execute ASP programs with different solvers, using the EmbASP framework. It runs on top of Apache Tomcat® and it exposes a set of API that can be used to invoke the solvers. It uses WebSocket as communication protocol and JSON ad data interchange format.

IMPORTANT NOTE

EmbASPServerExecutor started as an undergraduate student's work of thesis, and is still at the early stages of development.

It currently supports only two solvers (DLV and Clingo) for Answer Set Programming; we encourage any feedback, but we do NOT recommend it for production yet.

Getting Started (Installation and Usage)

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

It requires only Java® and Apache Tomcat®

Installing

Download the Latest Release of EmbASPServerExecutor

Deploy EmbASPServerExecutor.war in Tomcat:

  1. Go to Tomcat webapps folder and paste it.
  2. Go to Tomcat/bin folder and start Tomcat by clicking startup.bat for Windows, for Linux run startup.sh
  3. Go to webapps/EmbASPServerExecutor/WEB-INF/classes/resources folder and change the value absolute_path in config.properties file with your absolute path of the ASP solvers (substitute $CATALINA_BASE with the path of your Tomcat installation, it is shown when you start Tomcat)
  4. Restart Tomcat (or just restart the EmbASPServerExecutor application)

Note that on Linux systems you may need to change the Execute permission of the files in the WebContent/WEB-INF/lib folder.

Running

Can be invoked using the WebSocket protocol, as explained in the Wiki

Built With

  • EmbASP - To execute logic programs with different solvers
  • Gson - To convert Java Objects into JSON and back
  • timeout - To limit time and memory consumption of the executors under Linux

Versioning

We use Semantic Versioning for versioning. For the versions available, see the releases on this repository.

Credits

  • Eliana Palermiti
  • Stefano Germano
  • Francesco Calimeri

From the Department of Mathematics and Computer Science of the University of Calabria

License

This project is licensed under the MIT License

About

A Java application that is able to execute logic programs with different solvers, using the EmbASP framework

Resources

License

Stars

Watchers

Forks

Packages

No packages published