AT-POS-System                           			24 June 2021
===============                            			============

This System is based on its according regulation BGBI. II Nr. 313/2020. Each
software component used within this paper is under the Apache license 2.0.

Installation Guide
==================

	1) First of all, Java must be downloaded and installed. Make sure 
	   it matches the bit rate of ooRexx (mostly 64-Bit). See [1] underneath.

	2) Furthermore, ooRexx must be downloaded and installed too if it is
	   not already installed. Make sure that it matches the same bit rate 
	   of Java (mostly 64-Bit).See [2] underneath.

	3) Additionally, the associated Bean Scripting Framework for ooRexx 
	   (BSF4ooRexx) must be downloaded and installed. See [3] underneath.

	4) Optionally, it is possible to install one more application, which helps
	   in dealing with databases. It is called DB Browser for SQLite. 
	   See [4] underneath.

	5) Furthermore, if a Graphical User Interface has to be adapted the application
	   in [5] comes in handy.

	6) To be able to use the AT-POS-System it is required to download the associated
	   .jar-Files. See [Prerequisites (.JAR-Files)] underneath.
	   After this, the .jar-File must be added to the CLASSPATH.

	   To do so, it is recommended that all these Java-Archive-Files are stored
	   within the same directory. After that, open the windows start menu type
	   "env" and press enter.
	   After that, the window "System properties" (Tab: Advanced) should be opened.
 	   Within this window press the button "Environment Variables". Now, under the 
	   tab "System variables" double click "CLASSPATH". Now, it is possible to add
	   the previously mentioned directory. Press the button "New" on the right hand
	   side of the window and add the full true path of the directory. After the
	   directory write an asterisk as a placeholder for every .JAR-file. Such a
	   patch can look like this:
	   [C:\Users\test\Documents\AT-POS-System\JAR\*]
	

Prerequisites (Applications)
============================

	[1] Java Runtime Environment (JRE) 1.8 or higher installed on your computer.
     	    Sometimes it is possible to run Java from the command line. To check, open
    	    a command line window and enter: "java -version"

   	    Used Java version, displayed after the command line execution:
    	    "1.8.0_191"
    	    Azul JDK-FX:
    	    cf. <https://www.azul.com/downloads/?version=java-8-lts&package=jdk-fx>

    	    Liberica Full JDK
            cf. <https://bell-sw.com/pages/downloads/#/java-8-lts>

	[2] ooRexx 5.0 or higher, 
	        cf. <https://sourceforge.net/projects/oorexx/files/oorexx/>
   	        Use the same bit rate as the operating system.
    	    Used ooRexx version:
    	        Open Object Rexx Version 5.0.0 r12165
                Build date: Feb 15 2021
                Addressing mode: 64

	[3] BSF4ooRexx 5.0 or higher, 
	        cf. <https://sourceforge.net/projects/bsf4oorexx/files/>
   	        Used BSF4ooRexx version: "bsf4ooRexx-v641-20210207-bin"
    
	[4] DB Browser for SQLite 3.12.0 or higher,
	        cf. <https://sqlitebrowser.org/dl/>
    	    Used version "3.12.0"

    [5] SceneBuilder 11.0.0,
	        cf. <https://gluonhq.com/products/scene-builder/>

Prerequisites (.JAR-Files)
=================================================

	[SQLLite-JDBC]      Overview:
	                    cf. <https://github.com/xerial/sqlite-jdbc>

	                    Used:
	                    sqlite-jdbc-3.32.3.2.jar
			            cf. <https://github.com/xerial/sqlite-jdbc/releases/tag/3.32.3.2>

	[JFoenix]           Overview:
	                    cf. <https://github.com/sshahine/JFoenix>

	                    Used:
	                    jfoenix-9.0.10.jar
			            Instant download:
			            cf. <https://search.maven.org/remotecontent?filepath=com/jfoenix/jfoenix/9.0.10/jfoenix-9.0.10.jar>

    [Core-3]            Overview:
                        cf. <https://github.com/zxing/zxing>

                        Used:
                        core-3.4.1.jar
    		            cf. <https://mvnrepository.com/artifact/com.google.zxing/core/3.4.1>

    [Javase-3]          Overview:
                        cf. <https://github.com/zxing/zxing>

                        Used:
                        javase-3.4.1.jar
        	            cf. <https://mvnrepository.com/artifact/com.google.zxing/javase/3.4.1>

    [JSON-Simple-1]     Overview:
                        cf. <https://code.google.com/archive/p/json-simple/>

                        Used:
                        json-simple-1.1.1.jar
            	        cf. <https://mvnrepository.com/artifact/com.googlecode.json-simple/json-simple/1.1.1>

    [nimbus-jose]       Overview:
                        cf. <https://bitbucket.org/connect2id/nimbus-jose-jwt/src/master/>

                        Used:
                        nimbus-jose-jwt-9.8.1.jar
                 	    cf. <https://mvnrepository.com/artifact/com.nimbusds/nimbus-jose-jwt>

    [spring-security]   Overview:
                        cf. <https://spring.io/projects/spring-security>

                        Used:
                        spring-security-crypto-5.4.5
                     	cf. <https://mvnrepository.com/artifact/org.springframework.security/spring-security-crypto/5.4.5>

To get more information about the installation process, or the required components feel free to 
read the associated paper about the AT-POS-System.

Have fun,

Manuel Schwarzer


