[![Build Status](https://travis-ci.org/MontiSim/RMIModelServer.svg?branch=master)](https://travis-ci.org/MontiSim/RMIModelServer) # RMIModelServer RMIServer allowing remote access to vehicle models developed in different languages and integrated with Java. ## Requirements In order the project to be built locally, the following software is required: Windows 64 bit Apache Maven Java Development Kit, Version 8+ (optional) Git To clone this github repository, one can use the following commands cd MontiSim git clone https://github.com/MontiSim/RMIModelServer.git __NOTE:__ _MontiSim_ is the directory, in which MontiSim-belonging projects should be clonned. It has to be manually created. ## Running the RMI server To run the server one can has to run the corresponding script file from the __scripts__ directory in _RMIModelServer_ project. * For Windows the `run.bat` file has to be executed * For Linux the `run.sh` file has to be exeuted __*(irrelevant, due to dependency on Windows platform)__ ## External models To use an external vehicle model, one has to clone the corresponding repository. For the _Autopilot emam_ vehicle model, located in [Autopilot emam repository](https://github.com/MontiSim/EMAM-showcase), the following commands have to be executed: cd MontiSim git clone https://github.com/MontiSim/EMAM-showcase.git cd ./EMAM-showcase mvn clean install cd EMAM-showcase/scripts main.bat The last command `main.bat` will compile the model and run it in a server container to test it. __NOTE:__ Autopilot EMAM model works only in _Windows 64 bit_ environment. The scripts in `script` directory are already adjusted to use _Autopilot_ model. If a new model has to be integrated to the RMI Model server, an implementation of _VehicleModel_ has to be created and adjusted with the _ModelManager_. Additionally, all dependencies of the new model have to be declared in the _library_ or _class-path_ of the RMI Model server.