The Stepper Application is a Java 8-based project designed to execute flows of operations on the user's local machine. Each operation is referred to as a "step," and the system allows users to add their own custom steps. This application is built to collect, export, delete files, run command-line commands, send HTTP calls, and perform various other tasks as needed. The system uses a combination of server-side (HttpServlet) and client-side (JavaFX) technologies, along with Gson and JAXB for data serialization. The flows of operations are described in an XML file, which users can upload to the system for execution. Multi-threading is employed to improve performance and handle concurrent operations efficiently.
Before using the Stepper Application, ensure that you have the following components set up:
- Java 8 or later installed on your local machine.
Follow these steps to install and set up the Stepper Application:
-
Server Setup:
- Download the
stepper_app.warfile and deploy it using Apache Tomcat (tested with Tomcat 9). - The server provides the API for managing flows, users, user roles, and execution history.
- Download the
-
Client Setup:
- Download the
ClientApp.jarandAdminApp.jarfiles to your local machine. - The ClientApp is a JavaFX-based desktop GUI for users to interact with the Stepper Application and execute flows.
- The AdminApp is a JavaFX-based desktop GUI for administrators to manage flows, users, and user roles.
- Download the
The AdminApp provides administrators with the ability to manage flows, users, and user roles. User roles determine the flows a user can see and execute.
-
Execute the AdminApp JAR file on your local machine.
-
Use the graphical interface to:
- Upload XML flow files to define new flows for users to execute.
- Manage user accounts and their associated roles, granting specific flow access based on roles.
- View statistics and data of all past flow executions.
The ClientApp is designed for regular users who can view and execute flows assigned to their roles.
-
Execute the ClientApp JAR file on your local machine.
-
Use the graphical interface to:
- View the list of available flows based on your assigned user roles.
- Select a flow from the list and initiate its execution.
- Monitor the progress of ongoing executions and view results of completed executions.
- Access a history of your past flow executions.
Please note that the AdminApp does not have execution capabilities; it is solely for administrative tasks. Users can execute flows and monitor their own executions through the ClientApp.
The Stepper Application utilizes multi-threading to enhance performance and efficiency. Multi-threading allows the application to execute multiple steps concurrently, reducing the overall execution time for flows containing multiple operations. This approach ensures that time-consuming operations do not hinder the execution of subsequent steps, leading to faster and more responsive flow execution.
Congratulations! You have successfully set up and used the Stepper Application to execute flows of operations on your local machine. Administrators can manage flows, users, and user roles using the AdminApp, while regular users can execute flows and monitor their executions through the ClientApp.
For any issues, questions, or feedback, please contact "omeref2@mta.ac.il". We hope you find the Stepper Application helpful in streamlining your operations and improving productivity!