The tool to simplify the process of the configuration of network routers in a closed network. A Configuration Portal is intended to automate network switches & routers configuration process using custom-built SSH client.
One of the challenging tasks was to provide the possibility to write scripts for the custom SSH client using XML. The other — to build the SSH server bundled with the traffic shaper based on a user role, i.e. different users should have different speed limits for file downloads.
As the solution for custom scripts, the following algorithm was suggested. The first step is to make up the syntax for XML, then transform XML into Groovy, and, finally, run Groovy using either portal application or using Groovy CLI. We’ve used Apache MINA as the SSH server and implemented a socket-based traffic shaper for it.
Java 8, Jackson FasterXML, Commons (FileUpload, IO, Lang, CSV), Java Servlet, Spring MVC, Spring Websockets, Spring Data, SLF4J, Hibernate, H2, TestNG, Maven, Thymeleaf, Bootstrap, JSch, Hibernate Validation, Spring Security, Spring Boot, Apache MINA, LDAP, Apache POI, Groovy, XSLT, XSD, Sax Parser, jsTree, jQuery, Quartz