From be04f20b5be9c8f6127a1ef90737613632ed73c8 Mon Sep 17 00:00:00 2001 From: Fabio Formosa Date: Sat, 3 Oct 2020 00:22:12 +0200 Subject: [PATCH] Update README.md --- README.md | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index b7fb1a2..be9ab2e 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # QUARTZ MANAGER -GUI Manager for Quartz Scheduler. +UI Manager for Quartz Scheduler. -Through this webapp you can launch and control your scheduled job. The GUI Console is composed by a managament panel to set trigger, start/stop scheduler and a log panel with a progress bar to display the job output. +Through this webapp you can launch and control your scheduled job. The UI Console is composed by a management panel to set trigger, start/stop scheduler and a log panel with a progress bar to display the job output. ## SCREENSHOT ![](https://github.com/fabioformosa/quartz-manager/blob/master/quartz-manager-api/src/main/resources/quartz-manager-2-screenshot_800.PNG) @@ -12,9 +12,14 @@ Through this webapp you can launch and control your scheduled job. The GUI Conso * The GUI manager updates the progress bar and reports all logs of your quartz job. ## ROADMAP -Open the [Projects Section](https://github.com/fabioformosa/quartz-manager/projects) to glance at the roadmap of Quartz Manager. -This project was born in 2016 when I needed a visual panel to monitor a scheduled job that fulfilled a mailing campaign to my customers. -It is currently under development, regarding: frontend, backend and CI/CD. +Open the [Projects Section](https://github.com/fabioformosa/quartz-manager/projects) to take a look at the roadmap of Quartz Manager. +Currently this project might be useful to look how to import Quartz Library in a spring boot application. For this purpose, browse the folder `quartz-manager-parent/quartz-manager-api`. +We're just working to create a library, from `quartz-manager-parent/quartz-manager-api`, to be imported in your spring boot where you have your job to be scheduled. For instance, the project `quartz-manager-parent/quartz-manager-web` imports it and it adds a secure layer and a custom job that says `hello world`. + +## PROJECT STRUCTURE +** quartz-parent/quartz-manager-api ** is the library that can be imported in webapp to have the quartz-manager API. +** quartz-parent/quartz-manager-web ** is an example of webapp that imports quartz-manager-api. It adds a secure layer and a custom job to be scheduled. +** quartz-frontend ** is the angular app that interacts with the Quartz Manager API. ## QUICK START **[requirements]** Make sure you have installed @@ -22,12 +27,14 @@ It is currently under development, regarding: frontend, backend and CI/CD. * [Maven](https://maven.apache.org/) * [npm](https://www.npmjs.com/get-npm), [node](https://nodejs.org) and [angular-cli](https://cli.angular.io/) +To build&run quartz-manager in your machine: + ``` #CLONE REPOSITORY git clone https://github.com/fabioformosa/quartz-manager.git -# START QUARTZ-MANAGER-API -cd quartz-manager/quartz-manager-api +# START QUARTZ-MANAGER-WEB +cd quartz-manager/quartz-parent/quartz-manager-web mvn spring-boot:run # START QUARTZ-MANAGER-FRONTEND @@ -42,15 +49,16 @@ npm start If you are not confident with maven CLI, you can start it by your IDE. For more details [spring boot ref.](http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-running-your-application.html) + ## HOW TO RUN YOUR SCHEDULED JOB -By default, quartz-manager executes the dummy job that logs "hello world!". +By default, quartz-manager-web executes the dummy job that logs "hello world!". Replace the dummy job (class: `it.fabioformosa.quartzmanager.jobs.SampleJob`) with yours. Follow these steps: 1. Extend the super class `it.fabioformosa.quartzmanager.jobs.AbstractLoggingJob` 1. set property `quartz-manager.jobClass` with qualified name of your custom Job Class (default job is SampleJob.class) ## HOW TO CHANGE SETTINGS -* Num of Threads: `/quartz-manager/src/main/resources/quartz.properties` +* Num of Threads: `/quartz-manager-parent/quartz-manager-web/src/main/resources/quartz.properties` * Credentials: To change admin's password, set ENV var `quartz-manager.account.pwd` * quartz-manager backend context path (default `/quartz-manager`) and port (default `8080`): `/quartz-manager/src/main/resources/application.properties`