From 1fce986a2d19aa73a5d854b52c2015072f579efe Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Wed, 10 Jun 2020 18:08:16 +0200 Subject: [PATCH 01/16] Write Backend Technologiebeschreibung --- documentation/parts/backend.tex | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index 6095505..aae8af4 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -1,11 +1,31 @@ \chapter{Backend} + Das Backend ist das Herzstück einer jeden Anwendung. Es muss hochverfügbar und enorm fehlertolerant sein. Aus diesem Grund haben wir uns für Technologien entschieden, die Open-Source-Software sind und eine entsprechend große Verbreitung haben. Weiter war es von Anfang an wichtig trotz der großen Abhängigkeit zum Backend die Entwicklung der anderen Teile nicht zu blockieren. Es wurden daher frühzeitig Modelle und Protokolle erstellt, die bereits vor der Fertigstellung gemockt werden konnten. \section{Technologiebeschreibung} \subsection{Spring Boot} + Für die Implementierung des REST-Backends haben wir auf das Spring Framework gesetzt. Genauer gesagt, das Spring \emph{Boot} Framework. Das Wort "Boot" steht hierbei sinngemäß für "bootstrap", was uns viel Konfigurationsarbeit abgenommen hat. Alle Standard Beans und Factories waren bereits initialisiert und konnten ohne weitere Konfiguration genutzt werden. + + Es wurden im Projektverlauf auch noch diverse Erweiterungen des Frameworks genutzt. + \begin{itemize} + \item \textbf{org.springframework.boot:spring-boot-starter-web}, bringt einen integrierten Tomcat Application Server mit und ermöglicht das Verarbeiten von Webanfragen. + \item \textbf{org.springframework.boot:spring-boot-starter-actuator}, wird genutzt um Diagnose-Endpoints freizuschalten. + \item \textbf{org.springframework.boot:spring-boot-starter-data-jpa}, bringt alle nötigen Abhängigkeiten um mit der Java Persistence API Daten in einer Datenbank abzulegen. + \item \textbf{org.springframework.boot:spring-boot-starter-data-rest}, bietet Möglichkeiten sehr leicht Datenbank Entitäten als HTTP REST Ressourcen bereitzustellen. + \item \textbf{org.springframework.boot:spring-boot-starter-security}, wird später zusammen mit der Authentifizierung über JWT genutzt. + \item \textbf{org.springframework.boot:spring-boot-starter-test}, bringt Möglichkeiten leichtgewichtig Unit Tests für Webanwendungen zu schreiben. + \end{itemize} + + Zur weiteren Reduktion des "Boilerplate Codes" wurde zusätzlich noch das Lombok Framework\footnote{\url{https://projectlombok.org/}} genutzt. Es bietet die Möglichkeit Getter und Setter sowie diverse Konstruktoren für Datenklassen zu generieren. Dadurch konnten die Datenklassen um etwa 80\% in der große reduziert werden, dies fördert die Lesbarkeit und vermeidet auch Leichtsinnsfehler. \subsection{MariaDB} + Als Datenbank wurde MariaDB eingesetzt. MariaDB ist die Quelloffene Entwicklung der MySQL Datenbank und nimmt deshalb alle Befehle an die auch MySQL annimmt. Als Alternative stand noch Postgres zur Auswahl, da wir aber keine der erweiterten Funktionen von Postgres brauchten fiel die Auswahl auf MariaDB. MariaDB musste auf keinem Entwicklungsrechner installiert werden, da immer das offizielle Dockerimage\footnote{\url{https://hub.docker.com/_/mariadb}} genutzt wurde. \subsection{Weitere Open Source Software} + Eine weitere Bibliothek die für die Authentifizierung benutzt wird ist die Java-JWT Implementation von Auth0. Sowie die H2 In-Memory Datenbank. Diese zweite Datenbank wird während der Entwicklung genutzt, um schnell homogene Beispieldaten zu laden und Tests auf diesen durchzuführen. \subsection{Spezielles Setup} + Um produktiv zu Arbeiten mussten noch weitere Tools genutzt werden. Dazu zählt primär die IntelliJ IDEA Ultimate Entwicklungsumgebung\footnote{\url{https://www.jetbrains.com/de-de/idea/}}. Diese IDE hat sehr viele Integrationen für das Spring Framework, als auch mit unseren Docker-Setup. Es wird dadurch möglich ausschließlich in der IDE zu arbeiten, ohne weitere Kommandozeilenfenster. + + Das Zweite wichtige Programm war der REST-Client Insomnia REST\footnote{\url{https://insomnia.rest/}}, welcher alle Möglichkeiten bietet, um REST APIs zu testen und Testabfragen auszuführen. \section{Umsetzung} \subsection{Spring Entities} + \missingfigure{Datenbankmodell (Entitiy Relationship Modell)} \subsection{Sicherheit durch JWT} \subsection{Repositories} \subsection{Projections} From d0cae8af877e33632371610b9a73d6f6fb18177a Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Wed, 10 Jun 2020 20:20:23 +0200 Subject: [PATCH 02/16] Write Entities and JWT --- documentation/img/backend/er-modell.png | Bin 0 -> 419165 bytes documentation/img/backend/jwt.io.png | Bin 0 -> 63000 bytes documentation/parts/backend.tex | 70 +++++++++++++++++++++++- 3 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 documentation/img/backend/er-modell.png create mode 100644 documentation/img/backend/jwt.io.png diff --git a/documentation/img/backend/er-modell.png b/documentation/img/backend/er-modell.png new file mode 100644 index 0000000000000000000000000000000000000000..b345c2a03260c350c69309eb5b8cb7c55ef5453d GIT binary patch literal 419165 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

QzuETf=K^t9TOH{Kn=8 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

q98B?+DSiq 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
bTHo?Y4dM+|Kj0Lw8<6guj3i(JGOK{jg(S&nC-) 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

gcdADMYA=43;0zKtXG~Y1L=48s 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 literal 0 HcmV?d00001 diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index aae8af4..11ba2c0 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -25,8 +25,76 @@ Das Zweite wichtige Programm war der REST-Client Insomnia REST\footnote{\url{https://insomnia.rest/}}, welcher alle Möglichkeiten bietet, um REST APIs zu testen und Testabfragen auszuführen. \section{Umsetzung} \subsection{Spring Entities} - \missingfigure{Datenbankmodell (Entitiy Relationship Modell)} + \begin{figure}[H] + \centering + \includegraphics[width=\linewidth]{img/backend/er-modell.png} + \caption{ER-Modell} + \label{fig:er-modell} + \end{figure} + + Das ER-Modell in Abbildung \ref{fig:er-modell} zeigt die komplette Hierarchie wie sie unserem Konzept entspricht. Wir legen diese Definition aber nicht selbst in SQL an, sondern lassen Java Hibernate dies für uns tun. Die Grundstruktur der gespeicherten Daten ist wie folgt zu verstehen: + \begin{itemize} + \item Der \textbf{TimetrackUser} ist die Grundstruktur, die alle anderen Daten des Users zusammenhält. Sie speichert allgemeine Nutzerdaten und hält Referenzen auf die \textbf{Role} des Nutzers, seine \textbf{Location} und alle im gehörenden \textbf{TimetrackAccounts}. + \item Die \textbf{Role} sollte ursprünglich erlauben zwischen eines Admins und eines normalen Nutzers zu unterscheiden, aus Zeitgründen wurde dies aber weggelassen. Die Grundstruktur ist dennoch implementiert, allerdings so, dass jeder Nutzer automatisch Administrator ist. + \item Die \textbf{Location} Entität speichert den Geofence des Nutzers. Diese Daten werden ausschließlich von der Android App genutzt um beim Einloggen den Geofence zu setzen. + \item Der \textbf{TimetrackAccount} ist die zweite große Struktur, die alle \textbf{TimeRecords} des Nutzers verwaltet, jeder Nutzer kann mehrere \textbf{TimetrackAccounts} besitzen, aber jeder Account kann nur einem Nutzer gehören. + \item Jede getrackte Zeitspanne wird in einem \textbf{TimeRecord} abgespeichert. Dieser Record speichert einen Typ sowie das Start- und Enddatum. Der Typ kann entweder "PAID" oder "BREAK" sein. Jeder Record gehört zu genau einem TimetrackAccount. + \end{itemize} + + Die Umsetzung in Java wird nun am Beispiel des TimetrackUsers und des TimetrackAccounts gezeigt. + + \lstinputlisting[language=Java,caption=TimetrackUser,firstline=12]{../backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java} + + Die komplette Klasse ist durch die Lombok Integration sehr klein gehalten. Alles weitere wird durch Annotationen geregelt, einige Beispiele sind hier: + \begin{itemize} + \item[] \textbf{@Entity} markiert die Klasse als Speicherbar in der Datenbank. + \item[] \textbf{@ManyToOne} markiert das Attribut als Fremdschlüssenrelation aus einer anderen Tabelle. + \item[] \textbf{@Id} zeichnet des Primärschlüssel der Tabelle aus. + \item[] \textbf{@Column} setzt spezielle Attribute für die Spalte in der Datenbank. + \end{itemize} + + Die TimetrackAccounts haben zusätzlich noch die Eigenschaft, dass sie sich selbst rekursiv löschen wenn der zugehörige User gelöscht wird. Selbiges gilt auch für die Records, wenn der zugehörige Account gelöscht wird. + + \lstinputlisting[language=Java,caption=TimetrackAccount,firstline=12]{../backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java} + \subsection{Sicherheit durch JWT} + Da wird die Web App im laufe des Projekts auch öffentlich in Internet stellen mussten, war eine Art Authentifizierung so gut wie unumgänglich. Damit wird keine Probleme mit Session-Affinity haben, entschieden wir uns für eine Token-Based Authentifizierung. Bei der genauen Implementation handelt es sich hier um das Json Web Token, kurz JWT. + \begin{figure}[H] + \centering + \includegraphics[width=\linewidth]{img/backend/jwt.io.png} + \caption{Aufbau eines JWT} + \label{fig:aufbau-jwt} + \end{figure} + + In Abbildung \ref{fig:aufbau-jwt} ist ein exemplarischer Aufbau eines JWT dargestellt. Das JWT besteht grundsätzlich aus drei Teilbereichen: + \begin{enumerate} + \item \textbf{Rot hinterlegt:} Bei diesem Teil handelt es sich um den Header, dieser beinhaltet den Typ des Tokens, als auch den Algorithmus mit dem es verschlüsselt wurde. + \item \textbf{Lila hinterlegt:} In diesem Teil werden die eigentlichen Nutzdaten des Tokens abgelegt, dort können z.B. Nutzernamen oder Nutzer-Id sowie eine Rolle hinterlegt werden. + \item \textbf{Blau hinterlegt:} Der letzte Part ist dann noch die Signatur des Tokens. + \end{enumerate} + Jeder dieser Teile ist durch einen Punkt im Token abgetrennt. Es ist daher nicht wunderlich, dass alle Token das selbe Präfix haben werden und nur der Mittelteil, sowie die Signatur sich ändern. + + Die Implementation in Spring Boot gelang in drei, vergleichsweise einfachen, Schritten. Zunächst mussten einige Konstanten definiert werden, zur einfacheren Handhabung wurde auch das Secret in den Code platziert. Dieses könnte aber sehr leicht über eine Umgebungsvariable überschrieben werden. + + \lstinputlisting[language=Java,caption=JWT Security Constants]{../backend/src/main/java/de/hft/geotime/security/SecurityConstants.java} + + Die Lebensdauer eines Tokens wurde mit 10 Tagen ebenfalls sehr hoch gewählt, um die Entwicklung zu vereinfachen. Auch muss dem Token zur erfolgreichen Nutzung in anderen Systemen das Prefix "Bearer " vorangestellt werden. + + Um nun die Tokens in Java zu erzeugen und Abzugleichen, musste die Filterkette von Spring Boot, welche bei jeden Request durchlaufen wird, bearbeitet werden. Jeder Endpunkt außer "/login" und "/sign-up" benötigten ab diesen Zeitpunkt eine autorisierte Anfrage. + + \lstinputlisting[language=Java,linerange={30-48},caption=JWT Authentication Filter,label=code:jwt-authentication-parse]{../backend/src/main/java/de/hft/geotime/security/JWTAuthenticationFilter.java} + + In Listing \ref{code:jwt-authentication-parse} ist der Schritt zu sehen, der die ankommende Anfrage versucht in eine Loginanfrage zu parsen. Diese Anfrage wird dann in der Filterkette weitergereicht. Bis Sie zum UserDetailsService kommt, welcher den User in der Datenbank abfragt und auch das Password abgleicht. Sollte die interne Autorisation erfolgreich sein, wird dieses Objekt mit den Nutzerdaten wieder an die Filterkette zurückgegeben und landet schließlich bei Listing \ref{code:jwt-authentication-create}. + + \lstinputlisting[language=Java,linerange={50-62},caption=JWT Authentication Filter,label=code:jwt-authentication-create]{../backend/src/main/java/de/hft/geotime/security/JWTAuthenticationFilter.java} + + Der letzte Schritt ist dann nur noch das Token mit den erhaltenen Daten zu befüllen und dann den "Authorization" Header der Antwort auf das soeben erstelle Token zu setzen. + + Ab jetzt kann sich der Client der das Token angefragt hat für die nächsten 10 Tage damit authentifizieren. Dies läuft sehr ähnlich ab, deshalb hier nur sehr kurz dargestellt. + + \lstinputlisting[language=Java,linerange={40-55},caption=JWT Authorization Filter,label=code:jwt-authorization]{../backend/src/main/java/de/hft/geotime/security/JWTAuthorizationFilter.java} + + Der eingehende Request geht wieder durch die Filterkette und wenn er an dem Filter in Listing \ref{code:jwt-authorization} ankommt, wird der User extrahiert und später im Security Manager als Autorisation für diesen Request gesetzt. Wichtig ist hier, dass keine weitere Prüfung auf die Existenz des Users durchgeführt wird, auch das Password wird nicht nochmal abgefragt. Der Grund hierfür ist, wenn es den User nicht geben würde, wie käme er dann an das Token? \subsection{Repositories} \subsection{Projections} \section{Endpoints} From 92da1e539e7344f35e4a7ee0a9f73668b081a543 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Wed, 10 Jun 2020 20:25:38 +0200 Subject: [PATCH 03/16] Autoformat backend project --- .../main/java/de/hft/geotime/entities/TimetrackAccount.java | 1 - .../src/main/java/de/hft/geotime/entities/TimetrackUser.java | 2 -- .../src/main/java/de/hft/geotime/security/WebSecurity.java | 3 +-- documentation/parts/backend.tex | 4 ++-- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java b/backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java index af3b5ba..42caf6d 100644 --- a/backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java +++ b/backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java @@ -1,6 +1,5 @@ package de.hft.geotime.entities; -import com.fasterxml.jackson.annotation.JsonBackReference; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; diff --git a/backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java b/backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java index 46447cb..7c8c010 100644 --- a/backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java +++ b/backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java @@ -1,13 +1,11 @@ package de.hft.geotime.entities; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonManagedReference; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import javax.persistence.*; -import java.util.List; @Data @NoArgsConstructor diff --git a/backend/src/main/java/de/hft/geotime/security/WebSecurity.java b/backend/src/main/java/de/hft/geotime/security/WebSecurity.java index 8fdecfa..c100f84 100644 --- a/backend/src/main/java/de/hft/geotime/security/WebSecurity.java +++ b/backend/src/main/java/de/hft/geotime/security/WebSecurity.java @@ -11,7 +11,6 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfigurationSource; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; -import java.util.Arrays; import static de.hft.geotime.security.SecurityConstants.SIGN_UP_URL; @@ -44,7 +43,7 @@ public class WebSecurity extends WebSecurityConfigurerAdapter { @Bean CorsConfigurationSource corsConfigurationSource() { - final CorsConfiguration configuration = new CorsConfiguration().applyPermitDefaultValues(); + final CorsConfiguration configuration = new CorsConfiguration().applyPermitDefaultValues(); configuration.addAllowedMethod("*"); final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**", configuration); diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index 11ba2c0..d69406d 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -43,7 +43,7 @@ Die Umsetzung in Java wird nun am Beispiel des TimetrackUsers und des TimetrackAccounts gezeigt. - \lstinputlisting[language=Java,caption=TimetrackUser,firstline=12]{../backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java} + \lstinputlisting[language=Java,caption=TimetrackUser,firstline=10]{../backend/src/main/java/de/hft/geotime/entities/TimetrackUser.java} Die komplette Klasse ist durch die Lombok Integration sehr klein gehalten. Alles weitere wird durch Annotationen geregelt, einige Beispiele sind hier: \begin{itemize} @@ -55,7 +55,7 @@ Die TimetrackAccounts haben zusätzlich noch die Eigenschaft, dass sie sich selbst rekursiv löschen wenn der zugehörige User gelöscht wird. Selbiges gilt auch für die Records, wenn der zugehörige Account gelöscht wird. - \lstinputlisting[language=Java,caption=TimetrackAccount,firstline=12]{../backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java} + \lstinputlisting[language=Java,caption=TimetrackAccount,firstline=11]{../backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java} \subsection{Sicherheit durch JWT} Da wird die Web App im laufe des Projekts auch öffentlich in Internet stellen mussten, war eine Art Authentifizierung so gut wie unumgänglich. Damit wird keine Probleme mit Session-Affinity haben, entschieden wir uns für eine Token-Based Authentifizierung. Bei der genauen Implementation handelt es sich hier um das Json Web Token, kurz JWT. From cc41db8f16ad7167704ffb3731b3db1a0072a564 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Wed, 10 Jun 2020 21:59:19 +0200 Subject: [PATCH 04/16] Add Geotime logo in titlepage --- documentation/img/gt_logo.png | Bin 0 -> 306517 bytes documentation/parts/titlepage.tex | 4 +++- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 documentation/img/gt_logo.png diff --git a/documentation/img/gt_logo.png b/documentation/img/gt_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..405eb93c0fa7d026aeda7e7c84826ffde33e317f GIT binary patch literal 306517 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 Date: Wed, 10 Jun 2020 23:46:41 +0200 Subject: [PATCH 05/16] Add JSON formatting for listings --- documentation/documentation.tex | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/documentation/documentation.tex b/documentation/documentation.tex index b52abfb..03b9952 100644 --- a/documentation/documentation.tex +++ b/documentation/documentation.tex @@ -26,7 +26,7 @@ % Code \usepackage{listings} -\usepackage{color} +\usepackage{xcolor} \definecolor{dkgreen}{rgb}{0,0.6,0} \definecolor{gray}{rgb}{0.5,0.5,0.5} \definecolor{mauve}{rgb}{0.58,0,0.82} @@ -97,6 +97,33 @@ sensitive=true, stringstyle={\color{dkgreen}\ttfamily}, } +\colorlet{punct}{red!60!black} +\definecolor{delim}{RGB}{20,105,176} +\colorlet{numb}{magenta!60!black} +\lstdefinelanguage{json}{ + basicstyle=\normalfont\ttfamily, + stepnumber=1, + numbersep=8pt, + showstringspaces=false, + breaklines=true, + literate= + *{0}{{{\color{numb}0}}}{1} + {1}{{{\color{numb}1}}}{1} + {2}{{{\color{numb}2}}}{1} + {3}{{{\color{numb}3}}}{1} + {4}{{{\color{numb}4}}}{1} + {5}{{{\color{numb}5}}}{1} + {6}{{{\color{numb}6}}}{1} + {7}{{{\color{numb}7}}}{1} + {8}{{{\color{numb}8}}}{1} + {9}{{{\color{numb}9}}}{1} + {:}{{{\color{punct}{:}}}}{1} + {,}{{{\color{punct}{,}}}}{1} + {\{}{{{\color{delim}{\{}}}}{1} + {\}}{{{\color{delim}{\}}}}}{1} + {[}{{{\color{delim}{[}}}}{1} + {]}{{{\color{delim}{]}}}}{1}, +} \usepackage{setspace} \setstretch{1.2} %Zeilenabstand From 88bc4517fe00707856090f1fa3788be4390a9533 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Wed, 10 Jun 2020 23:48:23 +0200 Subject: [PATCH 06/16] Write Repositories and Projections --- documentation/parts/backend.tex | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index d69406d..80e7d70 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -96,7 +96,31 @@ Der eingehende Request geht wieder durch die Filterkette und wenn er an dem Filter in Listing \ref{code:jwt-authorization} ankommt, wird der User extrahiert und später im Security Manager als Autorisation für diesen Request gesetzt. Wichtig ist hier, dass keine weitere Prüfung auf die Existenz des Users durchgeführt wird, auch das Password wird nicht nochmal abgefragt. Der Grund hierfür ist, wenn es den User nicht geben würde, wie käme er dann an das Token? \subsection{Repositories} + Nachdem der Nutzer authentifiziert ist, bekommt er Zugriff auf alle REST-Repositories. Für jede Ressource, die oben im ER-Modell definiert ist gibt es ein entsprechendes Repository. Dieses wird größtenteils automatisch vom Classpath Scan von Spring automatisch implementiert. Die basis CRUD Operationen werden für jedes angelegte Repository komplett ohne zutun implementiert. Ein solches Repository ist beispielsweise das der Location. + + \lstinputlisting[language=Java,firstline=8,caption=LocationRepository,label=code:location-repository]{../backend/src/main/java/de/hft/geotime/repositories/LocationRepository.java} + + Das einzige was dort getan werden muss, ist die Angabe des Typs, der hier behandelt wird, hier Location, und der Datentyp des Primärschlüssels, hier ein Long. Die Bedeutung der Klasse "PagingAndSortingRepository" wird in einem späteren Kapitel genauer erläutert. Um den Link der Ressource anzupassen werden die Parameter in der "RepositoryRestRessource" Annotation genutzt. Der Pfad geht immer vom Rootpfad der Applikation aus. + + Werden nun noch weitere Funktionalitäten in den Repositories benötigt können diese entweder selbst implementiert werden, oder durch gut ausgewählte Funktionsdefinitionen im Interface der Ressource deklariert werden. Spring kann die Implementierung dann aus dem Namen und den Parametern der Funktion ableiten. Als unser Maximalbeispiel dient hier das RecordRepository. + + \lstinputlisting[language=Java,linerange={14-27,38-41,47-54},caption=RecordRepository,label=code:record-repository]{../backend/src/main/java/de/hft/geotime/repositories/RecordRepository.java} + + In diesem Repository befinden sich diverse verschiedene Methoden wie Datenoperationen definiert werden können, ohne dass sie aktiv implementiert werden müssen. Es beginnt mit der funktion "findAllByStartdateBetween". Dieser Name kann direkt als Java Hibernate Statement interpretiert werden und nimmt als Parameter zwei Datumsangaben entgegen und eine Page. Die zwei Datumsangaben werden aus dem Schlüsselwort "Between" abgeleitet. Damit es sich aber um echt vergleichbare Daten handelt, müssen diese nach einem bestimmten Schema geparsed werden. Dieses Schema ist in der "DateTimeFormat" Annotation angegeben. Als Rückgabe liefert diese Funktion dann eine Menge aller Einträge zwischen diesen Daten. + + Die nächste Funktion funktioniert nun ähnlich, nur dass dort über Eigenschaften mehrerer verlinkter Objekte gegangen werden kann. "findAllBy" ist wieder das selbe wie oben und zeigt an, dass eine Liste von Ergebnissen zurückgeliefert wird, aber "Account\_User\_Username" bedeutet nun folgendes: "Gehe zum Account des Records, dann zum User dieses Accounts und von diesem User dann den Username". Der gefundene Username wird dann mit dem Parameter der Funktion verglichen und die Ergebnisse entsprechend gefiltert. Weiter zeigt das "And" eine Verkettung eines weiteren Ausdrucks an. So können auch relativ komplexe Abfragen automatisch implementiert werden. + + Reicht allerdings die obige Syntax nicht mehr aus, kann auch direkt eine Hibernate Abfrage über die "@Query" Annotation angegeben werden. Der Name der Funktion ist dann nicht mehr relevant für die Implementation, sondern nur noch für den Pfad unter dem die Funktion später zu erreichen ist. Die Query an der "today" Funktion bietet nun die Möglichkeit alle Einträge in der Records Tabelle für den aktuell anfragenden User zu bestimmen. Zusätzlich wird der Zeitraum noch auf den aktuellen Tag eingeschränkt, daher ergab sich auch der passende Name "today" für die Funktion. Der Nutzer wird automatisch über die "principal" Variable in der Abfrage eingefügt. Der Pricipal wird gesetzt, sobald der Authentication Filter den User erfolgreich eingeloggt hat. Weiter wird der aktuelle Tag über die Datenbankvariable "current\_date" abgefragt. + + Zuletzt kann auch nach Standard SQL Werten wie "null" oder "not null" gefragt werden. Zu sehen ist dies in der zuletzt dargestellten Funktion. + + Die Datei ist nicht vollständig abgedruckt, sondern nur Ausschnittsweise um die Grundkonzepte zu erläutern. \subsection{Projections} + Projections bieten nun noch weitere Möglichkeiten, Daten vor der Rückgabe noch zu transformieren und gegebenenfalls mit Zusatzdaten anzureichern. Eine Projektion ist ebenfalls durch ein Interface definiert und bring vor allem dann Vorteile wenn mehrere Ressourcen gebündelt angefragt werden müssen, um Beispielsweise eine Übersicht zu erstellen. + + \lstinputlisting[language=Java,firstline=9,caption=RecordOverviewProjection,label=code:record-repository]{../backend/src/main/java/de/hft/geotime/entities/projections/RecordOverviewProjection.java} + + Die "RecordOverviewProjection" reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Die Dauer des Records in Minuten. \section{Endpoints} \subsection{HAL und Paging} \section{Probleme und Lösungen} From 41b53998def83745fedc24ac78f563e47e0aafd1 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 01:02:00 +0200 Subject: [PATCH 07/16] Write endpoints section --- documentation/parts/backend.tex | 137 +++++++++++++++++++++++++++++++- 1 file changed, 135 insertions(+), 2 deletions(-) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index 80e7d70..08567c0 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -122,6 +122,139 @@ Die "RecordOverviewProjection" reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Die Dauer des Records in Minuten. \section{Endpoints} - \subsection{HAL und Paging} + Die vier Hauptendpoints sind sicherlich die unserer Hautptressourcen: locations, accounts, records und users. Unten gibt es noch den nicht implementierten Endpoint für die Rollen ("roles") dieser liefert aber kaum Informationen. Der "profile" Endpoint wird erst im nächsten Kapitel erläutert. Um diesen Output zu bekommen muss der Nutzer authentifiziert sein. Dies geschieht wie oben schon erwähnt über den "/login" Endpoint. Da dieser aber keine Ausgaben außer dem Header mit dem Token liefert, wird er hier nicht weiter erläutert. Selbiges gilt auch für den "/sign-up" Endpoint. Alle Anfragen die ab jetzt ausgeführt werden geschehen immer mit vorheriger Authentifizierung. + \begin{lstlisting}[language=json,caption=Zugriff auf die Route "/" der API,label=code:main-route-api] +{ + "_links": { + "locations": { + "href": "http://localhost:5000/locations{?page,size,sort}", + "templated": true + }, + "accounts": { + "href": "http://localhost:5000/accounts{?page,size,sort,projection}", + "templated": true + }, + "records": { + "href": "http://localhost:5000/records{?page,size,sort,projection}", + "templated": true + }, + "users": { + "href": "http://localhost:5000/users{?page,size,sort,projection}", + "templated": true + }, + "roles": { + "href": "http://localhost:5000/roles" + }, + "profile": { + "href": "http://localhost:5000/profile" + } + } +} + \end{lstlisting} + + \begin{lstlisting}[language=json,caption=Zugriff auf die Route "/locations" der API,label=code:locations-route-api] +{ + "_embedded": { + "locations": [ + { + "latitude": 1.0, + "longitude": 2.0, + "radius": 3, + "_links": { + "self": { + "href": "http://plesk.icaotix.de:5000/locations/1" + }, + "locations": { + "href": "http://plesk.icaotix.de:5000/locations/1" + } + } + } + ] + }, + "_links": { + "self": { + "href": "http://plesk.icaotix.de:5000/locations{?page,size,sort}", + "templated": true + }, + "profile": { + "href": "http://plesk.icaotix.de:5000/profile/locations" + } + }, + "page": { + "size": 20, + "totalElements": 6, + "totalPages": 1, + "number": 0 + } +} + \end{lstlisting} + + Aufgrund der massiven Größe der Ausgaben der API werden die weiteren Ressourcen nur noch mit ihrem Link angegeben. Alle Ressourcen unterstützen zudem die CRUD Operationen auf einzelnen Ressourcen als auch auf der Hauptressource, deshalb werden sie aus Platzgründen ebenfalls übergangen. + + \subsection*{Endpoints für Ressourcen} + \begin{itemize} + \item \verb|/locations{?page,size,sort,projection}| + \item \verb|/locations/{?projection}| + \item \verb|/roles{?page,size,sort,projection}| + \item \verb|/accounts{?page,size,sort,projection}| + \item \verb|/accounts/{?projection}| + \item \verb|/accounts//user{?projection}| + \item \verb|/accounts/search/findByUsernameAndName{?username,account,projection}| + \item \verb|/accounts/search/findByUsername{?username,page,size,sort,projection}| + \item \verb|/users{?page,size,sort,projection}| + \item \verb|/users/{?projection}| + \item \verb|/users//location{?projection}| + \item \verb|/users//role{?projection}| + \item \verb|/users/search/byUsername{?username,projection}| + \item \verb|/records{?page,size,sort,projection}| + \item \verb|/records/{?projection}| + \item \verb|/records//account{?projection}| + \item \verb|/records/search/allBetweenAndUser{?start,end,username,page,size,sort,projection}| + \item \verb|/records/search/openEntries{?page,size,sort,projection}| + \item \verb|/records/search/today{?page,size,sort,projection}| + \item \verb|/records/search/allForUser{?username,page,size,sort,projection}| + \item \verb|/records/search/allBetween{?start,end,page,size,sort,projection}| + \item \verb|/records/search/allFrom{?date,page,size,sort,projection}| + \item \verb|/records/search/allForUserAndAccount{?username,account,page,size,sort,projection}| + \end{itemize} + + Wenn Ressourcen aktualisiert werden müssen, müssen die Daten immer im JSON Format vorliegen. Die Felder des JSON Objekts müssen mit denen der Ressource übereinstimmen. Es müssen aber nicht alle Felder Werte beinhalten. Soll eine neue Ressource erstellt werden, werden die Daten als POST abgesendet, bei einer Aktualisierung als PATCH. Links zwischen Ressourcen können über den Self Link der Ressource hergestellt werden. Weiter gibt es noch zwei komplett selbst gebaute Endpoints. + + \subsection*{Der "/whoami" Endpoint} + Dieser Endpoint dient um nach dem Login schnell die Startseite der App oder der Webseite mit den Nutzerdaten zu befüllen. Es sind Daten wie der Vor- und Nachname, sowie der Username enthalten. Zusätzlich wird noch die gesetzte Location des Nutzers mitgegeben. + + \subsection*{Der "/track" Endpoint} + Beim "/track" Endpoint handelt es sich um einen der wichtigsten Endpoints. Er erlaubt es ein Recording zu erstellen, ohne Angabe des Nutzers. Lediglich der Name des Timetrack Accounts auf den gebucht werden soll muss angegeben werden. Der Endpoint entscheidet auf Serverseite von welchem Nutzer die Anfrage ankam. Dazu wird der Nutzer aus dem JWT extrahiert und abhängig davon im Account des Nutzers geschaut ob schon ein Tracking läuft oder nicht. Sollte noch kein Tracking laufen, wird ein neuer Eintrag mit der aktuellen Zeit erstellt und zurückgeliefert. Das Enddatum ist zu diesem Zeitpunkt noch leer und auch die Duration zeigt "0" an. Sollte schon ein Tracking laufen, wird dieses mit der aktuellen Zeit als Endzeit beendet und ebenfalls zurückgeliefert. Sollte der Account nicht gefunden werden, oder ein anderer Fehler auftreten, wird ein entsprechender HTTP Statuscode zurückgeliefert. + \begin{lstlisting}[language=json,caption=Aufruf von "/track" ohne und mit laufendem Tracking,label=code:start-tracking-endpoint] +{ + "duration": 0, + "username": "scma", + "account": "Demo", + "startdate": "2020-06-11T00:59:22", + "enddate": null, + "type": "PAID" +} +{ + "duration": 129, + "username": "scma", + "account": "Demo", + "startdate": "2020-06-10T22:47:55", + "enddate": "2020-06-11T00:57:41", + "type": "PAID" +} + \end{lstlisting} + + \subsection{HAL, Paging und Sorting} + Die Hypertext Application Language, kurz HAL, ist eine Spezifikation, mit der APIs automatisch erkundbar gemacht werden können. Sie bietet META-Elemente an einige davon werden auch bei uns benutzt. + \begin{itemize} + \item \textbf{"\_links"} zeigt weiterführende Links zu Ressourcen oder Informationen zum Paging an. + \item \textbf{"\_embedded"} enthält die Nutzdaten zur entsprechenden Ressource aber auch weitere Einbettungen zu Sub-Ressourcen. + \end{itemize} + Zusätzlich dazu nutzt Spring bei der Generation der Repositories auch teile der Hypermedia as the Engine of Application State, kurz HATEOAS, Spezifikation. Das Listing \ref{code:main-route-api} zeigt hierfür den zusätzlichen Endpoint "profile". Unter diesem sind viele Spezifikationen zu finden, wie alle anderen Routen auf bestimmte Daten reagieren und auch antworten. + + Der "profile" Endpoint zeigt zusätzlich noch alle Projektionen an, die auf eine bestimmte Ressource angewendet werden kann. Der Name der Projektion wird dann durch den URL-Parameter "projection=" angehängt. + + Zuletzt gilt es noch zu erwähnen, dass alle Ressourcen Paging und Sorting unterstützen. Paging ist besonders bei Web APIs wichtig, da die Geschwindigkeit sehr stark von der Menge der übertragenen Daten abhängt. Wenn eine Ressource immer alle Daten zurückliefern würde, würde dies bei mehreren hundert Einträgen sicher noch funktionieren. Aber sobald die Zahl der Einträge deutlich höher wird, muss abgeschnitten und aufgeteilt werden. Unsere Standard Seitengröße ist auf 20 Einträge gesetzt. Weiter enthält die Antwort des Servers durch die HAL Integration immer Links zur aktuellen, nächsten und vorherigen Seite als Link. Sorting wird ebenfalls unterstützt. Es kann nach jedem Feld im zurückgegebenen JSON Sortiert werden, auch die Richtung ist spezifizierbar. \section{Probleme und Lösungen} - \section{Deployment} \ No newline at end of file + \section{Deployment} + Das Deployment des Backends findet immer gleichzeitig mit der Datenbank und dem Frontend statt. Die Daten bleiben dabei erhalten und werden, so fern nötig, von Spring automatisch migriert. Auch beim hinzufügen oder entfernen von Feldern aus Entitäten aktualisiert Spring die Datenbanktabellen entsprechend den neuen Feldern. Sollten Felder wegfallen werden diese einfach gelöscht, kommen neue hinzu wird entweder der Defaultwert gesetzt oder, wenn erlaubt, "Null". \ No newline at end of file From f7c6914f4d91f07013edbc5d90e6dbe94930b97b Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 01:14:47 +0200 Subject: [PATCH 08/16] Write probleme und loesungen --- documentation/parts/backend.tex | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index 08567c0..31380c2 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -225,7 +225,7 @@ \subsection*{Der "/track" Endpoint} Beim "/track" Endpoint handelt es sich um einen der wichtigsten Endpoints. Er erlaubt es ein Recording zu erstellen, ohne Angabe des Nutzers. Lediglich der Name des Timetrack Accounts auf den gebucht werden soll muss angegeben werden. Der Endpoint entscheidet auf Serverseite von welchem Nutzer die Anfrage ankam. Dazu wird der Nutzer aus dem JWT extrahiert und abhängig davon im Account des Nutzers geschaut ob schon ein Tracking läuft oder nicht. Sollte noch kein Tracking laufen, wird ein neuer Eintrag mit der aktuellen Zeit erstellt und zurückgeliefert. Das Enddatum ist zu diesem Zeitpunkt noch leer und auch die Duration zeigt "0" an. Sollte schon ein Tracking laufen, wird dieses mit der aktuellen Zeit als Endzeit beendet und ebenfalls zurückgeliefert. Sollte der Account nicht gefunden werden, oder ein anderer Fehler auftreten, wird ein entsprechender HTTP Statuscode zurückgeliefert. - \begin{lstlisting}[language=json,caption=Aufruf von "/track" ohne und mit laufendem Tracking,label=code:start-tracking-endpoint] + \begin{lstlisting}[language=json,caption=Aufruf von "/track" ohne laufendes Tracking,label=code:start-tracking-endpoint] { "duration": 0, "username": "scma", @@ -234,6 +234,8 @@ "enddate": null, "type": "PAID" } + \end{lstlisting} + \begin{lstlisting}[language=json,caption=Aufruf von "/track" mit laufendem Tracking,label=code:stop-tracking-endpoint] { "duration": 129, "username": "scma", @@ -256,5 +258,11 @@ Zuletzt gilt es noch zu erwähnen, dass alle Ressourcen Paging und Sorting unterstützen. Paging ist besonders bei Web APIs wichtig, da die Geschwindigkeit sehr stark von der Menge der übertragenen Daten abhängt. Wenn eine Ressource immer alle Daten zurückliefern würde, würde dies bei mehreren hundert Einträgen sicher noch funktionieren. Aber sobald die Zahl der Einträge deutlich höher wird, muss abgeschnitten und aufgeteilt werden. Unsere Standard Seitengröße ist auf 20 Einträge gesetzt. Weiter enthält die Antwort des Servers durch die HAL Integration immer Links zur aktuellen, nächsten und vorherigen Seite als Link. Sorting wird ebenfalls unterstützt. Es kann nach jedem Feld im zurückgegebenen JSON Sortiert werden, auch die Richtung ist spezifizierbar. \section{Probleme und Lösungen} + \subsection{Einlesen in Spring} + Spring ist ein sehr komplexes Framework, deshalb war es manchmal wirklich sehr schwierig Fehler zu verstehen und die Gründe dahinter zu verstehen. Solange man sich aber an viele der Best-Practicies von Spring hält ist es überhaupt nicht schwer in relativ kurzer Zeit auch sehr komplexe APIs zu bauen. Durch die enorme Menge an Dokumentation und auch Hilfe aus der Community sowie Techtalks können viele Probleme leicht gelöst werden. + \subsection{Änderungen an den Endpoints} + Es mussten anfangs viele Endpoint immer wieder umdefiniert werden, da sie nicht Best-Practicies entsprochen haben oder nicht performant funktioniert haben. Dies wurde später aber immer einfacher, wenn man sich an die Denkweise einer REST-API gewöhnt hat. Auch zwei Wege Links zwischen Ressourcen waren bei uns nicht möglich, da sie zu Endlosrekursionen führten. Später wurde aber auch klar, das dies überhaupt nicht gewünscht ist. + \subsection{Probleme mit MariaDB} + Zu beginn haben wir für das Docker-Image der Datenbank den "latest"-Tag benutzt. Dies war möglich, da wir keinerlei eigene Konfiguration der Datenbank und deren Tabellen vorgenommen haben. Allerdings wurde mitte April die neue LTS-Version von Ubuntu veröffentlicht und damit auch das Basisimage von MariaDB angepasst. Durch Änderungen in Ubuntu 20.04 funktionierten nun gewisse Datenbankfunktionen nicht mehr ordnungsgemäß. Als Lösung kam dann nur ein Downgrade auf eine ältere Version in frage. \section{Deployment} Das Deployment des Backends findet immer gleichzeitig mit der Datenbank und dem Frontend statt. Die Daten bleiben dabei erhalten und werden, so fern nötig, von Spring automatisch migriert. Auch beim hinzufügen oder entfernen von Feldern aus Entitäten aktualisiert Spring die Datenbanktabellen entsprechend den neuen Feldern. Sollten Felder wegfallen werden diese einfach gelöscht, kommen neue hinzu wird entweder der Defaultwert gesetzt oder, wenn erlaubt, "Null". \ No newline at end of file From 95d5025c0ae593e4ab6935d564f48bb1ea581561 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 13:41:09 +0200 Subject: [PATCH 09/16] Add samples to the projections subsection --- documentation/parts/backend.tex | 50 ++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index 31380c2..1f796f3 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -121,6 +121,54 @@ \lstinputlisting[language=Java,firstline=9,caption=RecordOverviewProjection,label=code:record-repository]{../backend/src/main/java/de/hft/geotime/entities/projections/RecordOverviewProjection.java} Die "RecordOverviewProjection" reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Die Dauer des Records in Minuten. + + Eine Projektion kann am Beispiel des Records gut verdeutlicht werden. + + \begin{lstlisting}[language=json,caption=Einzelner Record ohne Projektion,label=code:records-without-proj] +{ + "startdate": "2020-05-30T18:00:00", + "enddate": "2020-05-30T19:00:00", + "type": "PAID", + "duration": 60, + "_links": { + "self": { + "href": "http://localhost:5000/records/27" + }, + "records": { + "href": "http://localhost:5000/records/27{?projection}", + "templated": true + }, + "account": { + "href": "http://localhost:5000/records/27/account{?projection}", + "templated": true + } + } +} + \end{lstlisting} + \begin{lstlisting}[language=json,caption=Einzelner Record mit Projektion "overview",label=code:records-with-proj] +{ + "duration": 60, + "username": "scma", + "account": "TestAccount", + "startdate": "2020-05-30T18:00:00", + "enddate": "2020-05-30T19:00:00", + "type": "PAID", + "_links": { + "self": { + "href": "http://localhost:5000/records/27" + }, + "records": { + "href": "http://localhost:5000/records/27{?projection}", + "templated": true + }, + "account": { + "href": "http://localhost:5000/records/27/account{?projection}", + "templated": true + } + } +} + \end{lstlisting} + Es zu sehen, dass in Listing \ref{code:records-without-proj} die beiden Felder "account" und "username" fehlen, diese tauchen erst bei der Abfrage mit angewendeter, serverseitiger, Projektion auf (siehe Listing \ref{code:records-with-proj}). Die Anfrage für Listing \ref{code:records-without-proj} lautet \verb|http://localhost/records/27| und um nun die Projektion anzuhängen, wird die URL wie folgt erweitert: \verb|http://localhost/records/27?projection=overview|. Projektionen können hierbei nicht nur auf einzelne Objekte einer Ressource angewendet werden, sondern auch auf eine Menge dieser. \section{Endpoints} Die vier Hauptendpoints sind sicherlich die unserer Hautptressourcen: locations, accounts, records und users. Unten gibt es noch den nicht implementierten Endpoint für die Rollen ("roles") dieser liefert aber kaum Informationen. Der "profile" Endpoint wird erst im nächsten Kapitel erläutert. Um diesen Output zu bekommen muss der Nutzer authentifiziert sein. Dies geschieht wie oben schon erwähnt über den "/login" Endpoint. Da dieser aber keine Ausgaben außer dem Header mit dem Token liefert, wird er hier nicht weiter erläutert. Selbiges gilt auch für den "/sign-up" Endpoint. Alle Anfragen die ab jetzt ausgeführt werden geschehen immer mit vorheriger Authentifizierung. \begin{lstlisting}[language=json,caption=Zugriff auf die Route "/" der API,label=code:main-route-api] @@ -189,7 +237,7 @@ } \end{lstlisting} - Aufgrund der massiven Größe der Ausgaben der API werden die weiteren Ressourcen nur noch mit ihrem Link angegeben. Alle Ressourcen unterstützen zudem die CRUD Operationen auf einzelnen Ressourcen als auch auf der Hauptressource, deshalb werden sie aus Platzgründen ebenfalls übergangen. + Aufgrund der massiven Größe der Ausgaben der API werden die weiteren Endpoints nur noch mit ihrem Link angegeben. Alle Ressourcen unterstützen zudem die CRUD Operationen auf einzelnen Ressourcen als auch auf der Hauptressource, deshalb werden sie aus Platzgründen ebenfalls übergangen. \subsection*{Endpoints für Ressourcen} \begin{itemize} From 207f300e66662b00b5c3de939c8a2c60b7aba12f Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 13:58:07 +0200 Subject: [PATCH 10/16] Fix duplicate label at code listing --- documentation/parts/backend.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index 1f796f3..b51841e 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -118,9 +118,9 @@ \subsection{Projections} Projections bieten nun noch weitere Möglichkeiten, Daten vor der Rückgabe noch zu transformieren und gegebenenfalls mit Zusatzdaten anzureichern. Eine Projektion ist ebenfalls durch ein Interface definiert und bring vor allem dann Vorteile wenn mehrere Ressourcen gebündelt angefragt werden müssen, um Beispielsweise eine Übersicht zu erstellen. - \lstinputlisting[language=Java,firstline=9,caption=RecordOverviewProjection,label=code:record-repository]{../backend/src/main/java/de/hft/geotime/entities/projections/RecordOverviewProjection.java} + \lstinputlisting[language=Java,firstline=9,caption=RecordOverviewProjection,label=code:record-overview-projection]{../backend/src/main/java/de/hft/geotime/entities/projections/RecordOverviewProjection.java} - Die "RecordOverviewProjection" reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Die Dauer des Records in Minuten. + Die "RecordOverviewProjection" (Listing \ref{code:record-overview-projection}) reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Die Dauer des Records in Minuten. Eine Projektion kann am Beispiel des Records gut verdeutlicht werden. From cdb87ea4c9f08268ea2bdbc106ca6c6deabb9e25 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 14:15:31 +0200 Subject: [PATCH 11/16] Change ich in android chapter to wir --- documentation/parts/android.tex | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/documentation/parts/android.tex b/documentation/parts/android.tex index 16f5c3a..2c00ab9 100644 --- a/documentation/parts/android.tex +++ b/documentation/parts/android.tex @@ -53,7 +53,7 @@ Wie zu erkennen ist lag der Fokus der Implementierung deutlich auf der Main Activtiy, da sie auch das Wichtigste der App beinhaltet. Prominent ist dabei der 'START'-Knopf an der Unterseite, mit dem die Aufzeichnung gestartet werden kann (genaueres im Kapitel \ref{subsec:main}). \subsection{Authentifizierung} - Zur Authentifizierung benutzen wir JWT, welches bei jeder Anfrage ans Backend mit geschickt werden muss. Das Token erhält man beim Einloggen mit den richtigen Daten und muss persistiert werden, bis sich der Benutzer ausloggt. Dazu speichere ich das Token im privaten Speicher der App. In allen weiteren Activities kann dann auf den Speicher zugegriffen werden und das Token beim Erstellen des \verb|AuthenticationInterceptor|s mitgegeben werden. Beim Ausloggen wird einfach die Datei mit dem Token aus dem Speicher gelöscht. \\ + Zur Authentifizierung benutzen wir JWT, welches bei jeder Anfrage ans Backend mit geschickt werden muss. Das Token erhält man beim Einloggen mit den richtigen Daten und muss persistiert werden, bis sich der Benutzer ausloggt. Dazu wird das Token im privaten Speicher der App gespeichert. In allen weiteren Activities kann dann auf den Speicher zugegriffen werden und das Token beim Erstellen des \verb|AuthenticationInterceptor|s mitgegeben werden. Beim Ausloggen wird einfach die Datei mit dem Token aus dem Speicher gelöscht. \\ Der \verb|AuthenticationInterceptor| ist Kind von der \verb|Interceptor|-Klasse aus der \verb|okhttp3|-Bibliothek, welche in Retrofit eingebunden ist. Mithilfe des Interceptors können REST-Aufrufen Header-Daten mitgegeben werden. In unserem Fall ist das das \verb|Authorization|-Feld mit dem Token. \begin{lstlisting}[language=Kotlin] class AuthenticationInterceptor(pToken: String) : Interceptor { @@ -149,7 +149,7 @@ geofencingClient.addGeofences(getGeofencingRequest(), geofencePendingIntent)?.ru addOnFailureListener { ... } } \end{lstlisting} - In der \verb|getGeofencingRequest|-Methode wird festgelegt auf welches initiale Event reagiert werden soll und der oben erstellte Geofence wird hinzugefügt. Als initiales Event habe ich \verb|INITIAL_TRIGGER_ENTER| gewählt, da es ausgelöst wird wenn man sich bereits im Bereich befindet und die App startet. Denn erst mit dem Eintrittsevent wird der Button zum Starten der Aufzeichnung freigeschaltet. Das \verb|geofencePendingIntent| definiert die BroadcastReceiver-Klasse, welche bei jedem Event aufgerufen wird. + In der \verb|getGeofencingRequest|-Methode wird festgelegt auf welches initiale Event reagiert werden soll und der oben erstellte Geofence wird hinzugefügt. Als initiales Event haben wir \verb|INITIAL_TRIGGER_ENTER| gewählt, da es ausgelöst wird wenn man sich bereits im Bereich befindet und die App startet. Denn erst mit dem Eintrittsevent wird der Button zum Starten der Aufzeichnung freigeschaltet. Das \verb|geofencePendingIntent| definiert die BroadcastReceiver-Klasse, welche bei jedem Event aufgerufen wird. \begin{lstlisting}[language=Kotlin] private fun getGeofencingRequest(): GeofencingRequest { return GeofencingRequest.Builder().apply { @@ -190,14 +190,14 @@ context!!.getSharedPreferences("LOCATION", Context.MODE_PRIVATE) Direkt unter der Top-Action-Bar wird der Benutzer mit dem Vornamen begrüßt (Abb.: \ref{Abb:main}). \\ In der Bedienfläche kann der Benutzer den Timetrack-Account auswählen und dessen Details ansehen, seine heutigen Arbeitszeiten ansehen und die Aufzeichnung starten oder stoppen. \\ Die Auswahl des Accounts erfolgt über ein Dropdown-Menü. Bei Auswahl wird sofort die zugehörige Beschreibung und die Vergütung angezeigt. Wenn die Aufzeichnung am laufen ist, wird das Dropdown-Menü ausgeblendet. Das verhindert, dass der Benutzer eine Aktivität für einen andern Account stoppen kann als er sie gestartet hat. Ist für den Benutzer noch kein Account vorhanden, wird "None" im Menü angezeigt und die beiden Felder für Beschreibung und Vergütung werden ausgeblendet. \\ - Für die Anzeige der heutigen Arbeitszeiten habe ich eine RecyclerView verwendet. Das Layout dazu wird in einer extra XML-Datei definiert und mit Daten in einer Adapter-Klasse befüllt. Durch eine Backendabfrage bekomme ich die nötigen Daten dafür. Bei aktiver Aufzeichnung wir ein Element angezeigt mit der Startzeit und der Info, dass das Ende offen ist. + Für die Anzeige der heutigen Arbeitszeiten haben wir eine RecyclerView verwendet. Das Layout dazu wird in einer extra XML-Datei definiert und mit Daten in einer Adapter-Klasse befüllt. Durch eine Backendabfrage bekommen wir die nötigen Daten dafür. Bei aktiver Aufzeichnung wir ein Element angezeigt mit der Startzeit und der Info, dass das Ende offen ist. \begin{figure}[H] \centering \includegraphics[width=0.4\linewidth]{img/android/main_recording} \caption{Laufende Aufzeichnung} \label{Abb:menu} \end{figure} - Der Start-Stop-Button schält die Aufzeichnung um, in dem ein Backend-Endpunkt angesprochen wird. In der App habe ich eine boolean-Variable \verb|running| definiert, welche gespeichert hält ob die Aufzeichnung aktiv ist. Anhand ihr wird entschieden wie der Start-Stop-Button aussieht und ob beim Verlassen des Geofence noch gestoppt werden muss. Der Button ist nicht Auswählbar wenn sich der Nutzer außerhalb seines Arbeitsplatzes befindet und zeigt dies auch an (Abb.: \ref{Abb:outside}). Ist der Nutzer dann im Bereich, wird "Start" angezeigt und der Button ist freigeschaltet. Während der Aufzeichnung trägt der Button die Schrift "Stop". Hat der Nutzer noch keine Geo-Daten für seinen Arbeitsplatz definiert, wird auch das auf dem Button angezeigt. + Der Start-Stop-Button schält die Aufzeichnung um, in dem ein Backend-Endpunkt angesprochen wird. In der App haben wir eine boolean-Variable \verb|running| definiert, welche gespeichert hält ob die Aufzeichnung aktiv ist. Anhand ihr wird entschieden wie der Start-Stop-Button aussieht und ob beim Verlassen des Geofence noch gestoppt werden muss. Der Button ist nicht Auswählbar wenn sich der Nutzer außerhalb seines Arbeitsplatzes befindet und zeigt dies auch an (Abb.: \ref{Abb:outside}). Ist der Nutzer dann im Bereich, wird "Start" angezeigt und der Button ist freigeschaltet. Während der Aufzeichnung trägt der Button die Schrift "Stop". Hat der Nutzer noch keine Geo-Daten für seinen Arbeitsplatz definiert, wird auch das auf dem Button angezeigt. \begin{figure}[H] \centering \includegraphics[width=0.4\linewidth]{img/android/btn_outside} @@ -230,13 +230,13 @@ context!!.getSharedPreferences("LOCATION", Context.MODE_PRIVATE) \section{Probleme und Lösungen}\label{sec:Probleme} Damit die App auch die aktuellste Android Version unterstützt, mussten einige zusätzliche Punkte berücksichtigt werden. Neben der Berechtigung aus Kapitel \ref{subsec:geofence} musste in der \verb|build.gradle|-Datei Kompilierungsoptionen gesetzt werden. \\ - Zu beginn wollte ich alle Activities mit Fragments realisieren, sodass es nur eine Activity gibt und alles weitere Fragments sind. Allerdings war es schwieriger zwischen den Fragments zu wechseln, als in den Tutorials beschrieben. Deshalb wurde mir von einem Teamkollegen empfohlen auf nur Activities umzusteigen. Zwischen diesen ist das hin- und herschalten deutlich einfacher, hat jedoch kein Zugriff auf Elemente der anderen Activities. \\ + Zu beginn wollten wir alle Activities mit Fragments realisieren, sodass es nur eine Activity gibt und alles weitere Fragments sind. Allerdings war es schwieriger zwischen den Fragments zu wechseln, als in den Tutorials beschrieben. Deshalb wurde mir von einem Teamkollegen empfohlen auf nur Activities umzusteigen. Zwischen diesen ist das hin- und herschalten deutlich einfacher, hat jedoch kein Zugriff auf Elemente der anderen Activities. \\ - Das wurde bemerkbar, als ich aus der Klasse \verb|GeofenceBroadcastReceiver| eine Methode der \\\verb|MainActivity| zur Änderung der Oberfläche aufrufen wollte. Das hat den Grund, dass Android nicht sicher sagen kann das diese Activity gerade auch aktiv ist. Deshalb habe ich den Weg über die Shared Preferences gewählt mit einem Listener in der \verb|MainActivity|. \\ + Das wurde bemerkbar, als wir aus der Klasse \verb|GeofenceBroadcastReceiver| eine Methode der \\\verb|MainActivity| zur Änderung der Oberfläche aufrufen wollte. Das hat den Grund, dass Android nicht sicher sagen kann das diese Activity gerade auch aktiv ist. Deshalb haben wir den Weg über die Shared Preferences gewählt mit einem Listener in der \verb|MainActivity|. \\ - Initial wollte ich das Token in einer Datenklasse abspeichern, welche beim Einloggen befüllt wird. Dazu müsste allerdings das Objekt oder die Referenz zu jeder anderen Activity übergeben werden. Eine andere Möglichkeit stellen erneut die Shared Preferences dar. Wäre auch eine gute Lösung gewesen, welche ich aber dazu zu spät kennengelernt habe. Deshalb habe ich das Problem mit dem privaten Speicher gelöst. Er ist auch durch andere Apps und den Benutzer nicht einsehbar, bildet deshalb also keine Sicherheitslücke.\\ + Initial wollten wir das Token in einer Datenklasse abspeichern, welche beim Einloggen befüllt wird. Dazu müsste allerdings das Objekt oder die Referenz zu jeder anderen Activity übergeben werden. Eine andere Möglichkeit stellen erneut die Shared Preferences dar. Wäre auch eine gute Lösung gewesen, welche wir aber dazu zu spät kennengelernt haben. Deshalb haben wir das Problem mit dem privaten Speicher gelöst. Er ist auch durch andere Apps und den Benutzer nicht einsehbar, bildet deshalb also keine Sicherheitslücke.\\ - Unerwartet war, dass die Geofence-Funktion die normale Android Positionsbestimmung zusätzlich benötigt. Denn zuerst, hatte ich die Positionsbestimmung implementiert und dann die Geofence-Funktion, was funktioniert hat. Da in der Geofence-Funktion kein Code der normalen Positionsbestimmung referenziert wurde, dachte ich man könne diesen weglassen, was ein Trugschluss war. Auch der Versuch Teile der Positionsbestimmung wegzulassen war ohne Erfolg. Deshalb beinhaltet die App auch Code für die normale Positionsbestimmung. + Unerwartet war, dass die Geofence-Funktion die normale Android Positionsbestimmung zusätzlich benötigt. Denn zuerst, hatten wir die Positionsbestimmung implementiert und dann die Geofence-Funktion, was funktioniert hat. Da in der Geofence-Funktion kein Code der normalen Positionsbestimmung referenziert wurde, dachten wir, man könne diesen weglassen, was ein Trugschluss war. Auch der Versuch Teile der Positionsbestimmung wegzulassen war ohne Erfolg. Deshalb beinhaltet die App auch Code für die normale Positionsbestimmung. \section{Deployment} - Das Deployment spielte im Entwicklungsprozess der App keine große Rolle, da es Android-Studio benötigt um die App zu starten. Zum Abschluss habe ich allerdings den aktuellen Stand des Projekts in einer APK-Datei persistiert. Damit lässt sich die App auf andere Geräte installieren und in den App-Store laden. Zur Erstellung einer solchen APK muss ein Key zur Signatur angegeben werden. \ No newline at end of file + Das Deployment spielte im Entwicklungsprozess der App keine große Rolle, da es Android-Studio benötigt um die App zu starten. Zum Abschluss haben wir allerdings den aktuellen Stand des Projekts in einer APK-Datei persistiert. Damit lässt sich die App auf andere Geräte installieren und in den App-Store laden. Zur Erstellung einer solchen APK muss ein Key zur Signatur angegeben werden. \ No newline at end of file From 814bd585c272ac04f2a73f6233e77221376e86ed Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 14:15:49 +0200 Subject: [PATCH 12/16] Add list of listings --- documentation/documentation.tex | 2 ++ 1 file changed, 2 insertions(+) diff --git a/documentation/documentation.tex b/documentation/documentation.tex index 03b9952..042069f 100644 --- a/documentation/documentation.tex +++ b/documentation/documentation.tex @@ -177,6 +177,8 @@ \listoffigures +\lstlistoflistings + \include{parts/einleitung} \include{parts/projektplanung} From dd110e04fbc0ca94a1313df47f9cb188267c93a3 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 16:17:22 +0200 Subject: [PATCH 13/16] Correct spelling projektplanung chapter --- documentation/parts/projektplanung.tex | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/documentation/parts/projektplanung.tex b/documentation/parts/projektplanung.tex index 28c915e..57ba304 100644 --- a/documentation/parts/projektplanung.tex +++ b/documentation/parts/projektplanung.tex @@ -7,16 +7,16 @@ \subsection{Sprints} Wir haben die Projektzeit in 5 zweiwöchige Arbeitssprints und einen einwöchigen Vorbereitungssprint aufgeteilt. Die Enddaten der Sprints waren dabei an die Treffen mit Professor Knauth angepasst. \subsection{Code-Owners} - In unserem Git-Reposetory haben wir mit Code Ownership gearbeitet. Dazu haben wir 3 Ownerships eingeführt. Marcel Schwarz war Code-Owner für das Backend, Tobias Wieck für die Android App und Simon Kellner, sowie Tim Zieger für das Frontend. Wenn eine Änderung im jeweiligen Gebiet gemacht wurde musste immer mindestens ein Code-Owner diese genehmigen. + In unserem Git-Reposetory haben wir mit Code Ownership gearbeitet. Dazu haben wir 3 Ownerships eingeführt. Marcel Schwarz war Code-Owner für das Backend, Tobias Wieck für die Android App und Simon Kellner, sowie Tim Zieger für das Frontend. Wenn eine Änderung im jeweiligen Gebiet gemacht wurde, musste immer mindestens ein Code-Owner diese genehmigen. \section{Sprintziele} \subsection{Iteration 1} Das Ziel des ersten Sprints war die Erlernung der notwendigen Technologien und die Schnittstellendefinition. \subsection{Iteration 2} - Im zweiten Sprint sollten die Designgrundlagen und Feature Scopes besprochen werden. Des weiteren sollte im Backend die Verbindung zwischen dem Backend und der Datenbank hergestellt werden. Im Frontend war geplant weiter am Grundgerüst der Seite zu arbeiten und bei der App wurde die Einarbeitung weitergeführt. + Im zweiten Sprint sollten die Designgrundlagen und Feature Scopes besprochen werden. Des weiteren sollte im Backend die Verbindung zwischen dem Backend und der Datenbank hergestellt werden. Im Frontend war geplant, weiter am Grundgerüst der Seite zu arbeiten und bei der App wurde die Einarbeitung weitergeführt. \subsection{Iteration 3} - Im Frontend sollte, im dritten Sprint, ein neues Designframework eingeführt werden und die + Im Frontend sollte im dritten Sprint ein neues Designframework eingeführt werden und die Kommunikation mit dem Backend getestet werden. Der Plan fürs Backend war die Erstellung der Restcontroller. Bei der Android App sollte die Loginfunktionalität, sowie das Einlesen der Geo-Informationen realisiert werden. \subsection{Iteration 4} - Für den vierten Sprint war im Backend geplant die letzten Controller und Endpoints zu entwickeln. Im Frontend sollten die restlichen Seiten mitsamt Datenabholung aus dem Backend entwickelt werden. Für die App sollte der Geofence entwickelt und die Kommunikation mit dem Backend aufgebaut werden. + Für den vierten Sprint war im Backend geplant, die letzten Controller und Endpoints zu entwickeln. Im Frontend sollten die restlichen Seiten mitsamt Datenabholung aus dem Backend entwickelt werden. Für die App sollte der Geofence entwickelt und die Kommunikation mit dem Backend aufgebaut werden. \subsection{Iteration 5} Das Ziel des letzten Sprint war die Fertigstellung des Projekts, die Erstellung der Dokumentation und die Vorbereitung der Präsentation. \ No newline at end of file From 89d64102bdffba00158fad8225c08e146a5d0741 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 16:41:17 +0200 Subject: [PATCH 14/16] Correct spelling backend chapter --- documentation/parts/backend.tex | 96 ++++++++++++++++----------------- 1 file changed, 48 insertions(+), 48 deletions(-) diff --git a/documentation/parts/backend.tex b/documentation/parts/backend.tex index b51841e..72f9ce7 100644 --- a/documentation/parts/backend.tex +++ b/documentation/parts/backend.tex @@ -1,28 +1,28 @@ \chapter{Backend} - Das Backend ist das Herzstück einer jeden Anwendung. Es muss hochverfügbar und enorm fehlertolerant sein. Aus diesem Grund haben wir uns für Technologien entschieden, die Open-Source-Software sind und eine entsprechend große Verbreitung haben. Weiter war es von Anfang an wichtig trotz der großen Abhängigkeit zum Backend die Entwicklung der anderen Teile nicht zu blockieren. Es wurden daher frühzeitig Modelle und Protokolle erstellt, die bereits vor der Fertigstellung gemockt werden konnten. + Das Backend ist das Herzstück einer jeden Anwendung. Es muss hochverfügbar und enorm fehlertolerant sein. Aus diesem Grund haben wir uns für Technologien entschieden, die Open-Source-Software sind und eine entsprechend große Verbreitung haben. Weiter war es von Anfang an wichtig, trotz der großen Abhängigkeit zum Backend die Entwicklung der anderen Teile nicht zu blockieren. Es wurden daher frühzeitig Modelle und Protokolle erstellt, die bereits vor der Fertigstellung gemockt werden konnten. \section{Technologiebeschreibung} \subsection{Spring Boot} Für die Implementierung des REST-Backends haben wir auf das Spring Framework gesetzt. Genauer gesagt, das Spring \emph{Boot} Framework. Das Wort "Boot" steht hierbei sinngemäß für "bootstrap", was uns viel Konfigurationsarbeit abgenommen hat. Alle Standard Beans und Factories waren bereits initialisiert und konnten ohne weitere Konfiguration genutzt werden. Es wurden im Projektverlauf auch noch diverse Erweiterungen des Frameworks genutzt. \begin{itemize} - \item \textbf{org.springframework.boot:spring-boot-starter-web}, bringt einen integrierten Tomcat Application Server mit und ermöglicht das Verarbeiten von Webanfragen. - \item \textbf{org.springframework.boot:spring-boot-starter-actuator}, wird genutzt um Diagnose-Endpoints freizuschalten. - \item \textbf{org.springframework.boot:spring-boot-starter-data-jpa}, bringt alle nötigen Abhängigkeiten um mit der Java Persistence API Daten in einer Datenbank abzulegen. - \item \textbf{org.springframework.boot:spring-boot-starter-data-rest}, bietet Möglichkeiten sehr leicht Datenbank Entitäten als HTTP REST Ressourcen bereitzustellen. - \item \textbf{org.springframework.boot:spring-boot-starter-security}, wird später zusammen mit der Authentifizierung über JWT genutzt. - \item \textbf{org.springframework.boot:spring-boot-starter-test}, bringt Möglichkeiten leichtgewichtig Unit Tests für Webanwendungen zu schreiben. + \item \textbf{org.springframework.boot:spring-boot-starter-web} bringt einen integrierten Tomcat Application Server mit und ermöglicht das Verarbeiten von Webanfragen. + \item \textbf{org.springframework.boot:spring-boot-starter-actuator} wird genutzt, um Diagnose-Endpoints freizuschalten. + \item \textbf{org.springframework.boot:spring-boot-starter-data-jpa} bringt alle nötigen Abhängigkeiten, um mit der Java Persistence API Daten in einer Datenbank abzulegen. + \item \textbf{org.springframework.boot:spring-boot-starter-data-rest} bietet Möglichkeiten, sehr leicht Datenbank Entitäten als HTTP REST Ressourcen bereitzustellen. + \item \textbf{org.springframework.boot:spring-boot-starter-security} wird später zusammen mit der Authentifizierung über JWT genutzt. + \item \textbf{org.springframework.boot:spring-boot-starter-test} bringt Möglichkeiten, leichtgewichtig Unit Tests für Webanwendungen zu schreiben. \end{itemize} - Zur weiteren Reduktion des "Boilerplate Codes" wurde zusätzlich noch das Lombok Framework\footnote{\url{https://projectlombok.org/}} genutzt. Es bietet die Möglichkeit Getter und Setter sowie diverse Konstruktoren für Datenklassen zu generieren. Dadurch konnten die Datenklassen um etwa 80\% in der große reduziert werden, dies fördert die Lesbarkeit und vermeidet auch Leichtsinnsfehler. + Zur weiteren Reduktion des "Boilerplate Codes" wurde zusätzlich noch das Lombok Framework\footnote{\url{https://projectlombok.org/}} genutzt. Es bietet die Möglichkeit, Getter und Setter sowie diverse Konstruktoren für Datenklassen zu generieren. Dadurch konnten die Datenklassen um etwa 80\% in der Große reduziert werden, dies fördert die Lesbarkeit und vermeidet auch Leichtsinnsfehler. \subsection{MariaDB} - Als Datenbank wurde MariaDB eingesetzt. MariaDB ist die Quelloffene Entwicklung der MySQL Datenbank und nimmt deshalb alle Befehle an die auch MySQL annimmt. Als Alternative stand noch Postgres zur Auswahl, da wir aber keine der erweiterten Funktionen von Postgres brauchten fiel die Auswahl auf MariaDB. MariaDB musste auf keinem Entwicklungsrechner installiert werden, da immer das offizielle Dockerimage\footnote{\url{https://hub.docker.com/_/mariadb}} genutzt wurde. + Als Datenbank wurde MariaDB eingesetzt. MariaDB ist die quelloffene Entwicklung der MySQL Datenbank und nimmt deshalb alle Befehle an, die auch MySQL annimmt. Als Alternative stand noch Postgres zur Auswahl, da wir aber keine der erweiterten Funktionen von Postgres brauchten, fiel die Auswahl auf MariaDB. MariaDB musste auf keinem Entwicklungsrechner installiert werden, da immer das offizielle Dockerimage\footnote{\url{https://hub.docker.com/_/mariadb}} genutzt wurde. \subsection{Weitere Open Source Software} - Eine weitere Bibliothek die für die Authentifizierung benutzt wird ist die Java-JWT Implementation von Auth0. Sowie die H2 In-Memory Datenbank. Diese zweite Datenbank wird während der Entwicklung genutzt, um schnell homogene Beispieldaten zu laden und Tests auf diesen durchzuführen. + Eine weitere Bibliothek, die für die Authentifizierung benutzt wird, ist die Java-JWT Implementation von Auth0. Sowie die H2 In-Memory Datenbank. Diese zweite Datenbank wird während der Entwicklung genutzt, um schnell homogene Beispieldaten zu laden und Tests auf diesen durchzuführen. \subsection{Spezielles Setup} - Um produktiv zu Arbeiten mussten noch weitere Tools genutzt werden. Dazu zählt primär die IntelliJ IDEA Ultimate Entwicklungsumgebung\footnote{\url{https://www.jetbrains.com/de-de/idea/}}. Diese IDE hat sehr viele Integrationen für das Spring Framework, als auch mit unseren Docker-Setup. Es wird dadurch möglich ausschließlich in der IDE zu arbeiten, ohne weitere Kommandozeilenfenster. + Um produktiv zu arbeiten, mussten noch weitere Tools genutzt werden. Dazu zählt primär die IntelliJ IDEA Ultimate Entwicklungsumgebung\footnote{\url{https://www.jetbrains.com/de-de/idea/}}. Diese IDE hat sehr viele Integrationen für das Spring Framework, als auch mit unseren Docker-Setup. Es wird dadurch möglich, ausschließlich in der IDE zu arbeiten, ohne weitere Kommandozeilenfenster. - Das Zweite wichtige Programm war der REST-Client Insomnia REST\footnote{\url{https://insomnia.rest/}}, welcher alle Möglichkeiten bietet, um REST APIs zu testen und Testabfragen auszuführen. + Das zweite wichtige Programm war der REST-Client Insomnia REST\footnote{\url{https://insomnia.rest/}}, welcher alle Möglichkeiten bietet, um REST APIs zu testen und Testabfragen auszuführen. \section{Umsetzung} \subsection{Spring Entities} \begin{figure}[H] @@ -32,12 +32,12 @@ \label{fig:er-modell} \end{figure} - Das ER-Modell in Abbildung \ref{fig:er-modell} zeigt die komplette Hierarchie wie sie unserem Konzept entspricht. Wir legen diese Definition aber nicht selbst in SQL an, sondern lassen Java Hibernate dies für uns tun. Die Grundstruktur der gespeicherten Daten ist wie folgt zu verstehen: + Das ER-Modell in Abbildung \ref{fig:er-modell} zeigt die komplette Hierarchie, wie sie unserem Konzept entspricht. Wir legen diese Definition aber nicht selbst in SQL an, sondern lassen Java Hibernate dies für uns tun. Die Grundstruktur der gespeicherten Daten ist wie folgt zu verstehen: \begin{itemize} - \item Der \textbf{TimetrackUser} ist die Grundstruktur, die alle anderen Daten des Users zusammenhält. Sie speichert allgemeine Nutzerdaten und hält Referenzen auf die \textbf{Role} des Nutzers, seine \textbf{Location} und alle im gehörenden \textbf{TimetrackAccounts}. - \item Die \textbf{Role} sollte ursprünglich erlauben zwischen eines Admins und eines normalen Nutzers zu unterscheiden, aus Zeitgründen wurde dies aber weggelassen. Die Grundstruktur ist dennoch implementiert, allerdings so, dass jeder Nutzer automatisch Administrator ist. - \item Die \textbf{Location} Entität speichert den Geofence des Nutzers. Diese Daten werden ausschließlich von der Android App genutzt um beim Einloggen den Geofence zu setzen. - \item Der \textbf{TimetrackAccount} ist die zweite große Struktur, die alle \textbf{TimeRecords} des Nutzers verwaltet, jeder Nutzer kann mehrere \textbf{TimetrackAccounts} besitzen, aber jeder Account kann nur einem Nutzer gehören. + \item Der \textbf{TimetrackUser} ist die Grundstruktur, die alle anderen Daten des Users zusammenhält. Sie speichert allgemeine Nutzerdaten und hält Referenzen auf die \textbf{Role} des Nutzers, seine \textbf{Location} und alle ihm gehörenden \textbf{TimetrackAccounts}. + \item Die \textbf{Role} sollte ursprünglich erlauben, zwischen einem Admins und einem normalen Nutzers zu unterscheiden, aus Zeitgründen wurde dies aber weggelassen. Die Grundstruktur ist dennoch implementiert, allerdings so, dass jeder Nutzer automatisch Administrator ist. + \item Die \textbf{Location} Entität speichert den Geofence des Nutzers. Diese Daten werden ausschließlich von der Android App genutzt, um beim Einloggen den Geofence zu setzen. + \item Der \textbf{TimetrackAccount} ist die zweite große Struktur, die alle \textbf{TimeRecords} des Nutzers verwaltet. Jeder Nutzer kann mehrere \textbf{TimetrackAccounts} besitzen, aber jeder Account kann nur einem Nutzer gehören. \item Jede getrackte Zeitspanne wird in einem \textbf{TimeRecord} abgespeichert. Dieser Record speichert einen Typ sowie das Start- und Enddatum. Der Typ kann entweder "PAID" oder "BREAK" sein. Jeder Record gehört zu genau einem TimetrackAccount. \end{itemize} @@ -49,16 +49,16 @@ \begin{itemize} \item[] \textbf{@Entity} markiert die Klasse als Speicherbar in der Datenbank. \item[] \textbf{@ManyToOne} markiert das Attribut als Fremdschlüssenrelation aus einer anderen Tabelle. - \item[] \textbf{@Id} zeichnet des Primärschlüssel der Tabelle aus. + \item[] \textbf{@Id} zeichnet den Primärschlüssel der Tabelle aus. \item[] \textbf{@Column} setzt spezielle Attribute für die Spalte in der Datenbank. \end{itemize} - Die TimetrackAccounts haben zusätzlich noch die Eigenschaft, dass sie sich selbst rekursiv löschen wenn der zugehörige User gelöscht wird. Selbiges gilt auch für die Records, wenn der zugehörige Account gelöscht wird. + Die TimetrackAccounts haben zusätzlich noch die Eigenschaft, dass sie sich selbst rekursiv löschen, wenn der zugehörige User gelöscht wird. Selbiges gilt auch für die Records, wenn der zugehörige Account gelöscht wird. \lstinputlisting[language=Java,caption=TimetrackAccount,firstline=11]{../backend/src/main/java/de/hft/geotime/entities/TimetrackAccount.java} \subsection{Sicherheit durch JWT} - Da wird die Web App im laufe des Projekts auch öffentlich in Internet stellen mussten, war eine Art Authentifizierung so gut wie unumgänglich. Damit wird keine Probleme mit Session-Affinity haben, entschieden wir uns für eine Token-Based Authentifizierung. Bei der genauen Implementation handelt es sich hier um das Json Web Token, kurz JWT. + Da wird die Web App im Laufe des Projekts auch öffentlich in Internet stellen mussten, war eine Art Authentifizierung so gut wie unumgänglich. Damit wir keine Probleme mit Session-Affinity haben, entschieden wir uns für eine Token-Based Authentifizierung. Bei der genauen Implementation handelt es sich hier um das Json Web Token, kurz JWT. \begin{figure}[H] \centering \includegraphics[width=\linewidth]{img/backend/jwt.io.png} @@ -68,11 +68,11 @@ In Abbildung \ref{fig:aufbau-jwt} ist ein exemplarischer Aufbau eines JWT dargestellt. Das JWT besteht grundsätzlich aus drei Teilbereichen: \begin{enumerate} - \item \textbf{Rot hinterlegt:} Bei diesem Teil handelt es sich um den Header, dieser beinhaltet den Typ des Tokens, als auch den Algorithmus mit dem es verschlüsselt wurde. + \item \textbf{Rot hinterlegt:} Bei diesem Teil handelt es sich um den Header, dieser beinhaltet den Typ des Tokens, als auch den Algorithmus, mit dem es verschlüsselt wurde. \item \textbf{Lila hinterlegt:} In diesem Teil werden die eigentlichen Nutzdaten des Tokens abgelegt, dort können z.B. Nutzernamen oder Nutzer-Id sowie eine Rolle hinterlegt werden. \item \textbf{Blau hinterlegt:} Der letzte Part ist dann noch die Signatur des Tokens. \end{enumerate} - Jeder dieser Teile ist durch einen Punkt im Token abgetrennt. Es ist daher nicht wunderlich, dass alle Token das selbe Präfix haben werden und nur der Mittelteil, sowie die Signatur sich ändern. + Jeder dieser Teile ist durch einen Punkt im Token abgetrennt. Es ist daher nicht verwunderlich, dass alle Token das selbe Präfix haben werden und nur der Mittelteil, sowie die Signatur sich ändern. Die Implementation in Spring Boot gelang in drei, vergleichsweise einfachen, Schritten. Zunächst mussten einige Konstanten definiert werden, zur einfacheren Handhabung wurde auch das Secret in den Code platziert. Dieses könnte aber sehr leicht über eine Umgebungsvariable überschrieben werden. @@ -80,47 +80,47 @@ Die Lebensdauer eines Tokens wurde mit 10 Tagen ebenfalls sehr hoch gewählt, um die Entwicklung zu vereinfachen. Auch muss dem Token zur erfolgreichen Nutzung in anderen Systemen das Prefix "Bearer " vorangestellt werden. - Um nun die Tokens in Java zu erzeugen und Abzugleichen, musste die Filterkette von Spring Boot, welche bei jeden Request durchlaufen wird, bearbeitet werden. Jeder Endpunkt außer "/login" und "/sign-up" benötigten ab diesen Zeitpunkt eine autorisierte Anfrage. + Um nun die Tokens in Java zu erzeugen und Abzugleichen, musste die Filterkette von Spring Boot, welche bei jedem Request durchlaufen wird, bearbeitet werden. Jeder Endpunkt außer "/login" und "/sign-up" benötigte ab diesem Zeitpunkt eine autorisierte Anfrage. \lstinputlisting[language=Java,linerange={30-48},caption=JWT Authentication Filter,label=code:jwt-authentication-parse]{../backend/src/main/java/de/hft/geotime/security/JWTAuthenticationFilter.java} - In Listing \ref{code:jwt-authentication-parse} ist der Schritt zu sehen, der die ankommende Anfrage versucht in eine Loginanfrage zu parsen. Diese Anfrage wird dann in der Filterkette weitergereicht. Bis Sie zum UserDetailsService kommt, welcher den User in der Datenbank abfragt und auch das Password abgleicht. Sollte die interne Autorisation erfolgreich sein, wird dieses Objekt mit den Nutzerdaten wieder an die Filterkette zurückgegeben und landet schließlich bei Listing \ref{code:jwt-authentication-create}. + In Listing \ref{code:jwt-authentication-parse} ist der Schritt zu sehen, der die ankommende Anfrage versucht, in eine Loginanfrage zu parsen. Diese Anfrage wird dann in der Filterkette weitergereicht. Bis sie zum UserDetailsService kommt, welcher den User in der Datenbank abfragt und auch das Password abgleicht. Sollte die interne Autorisation erfolgreich sein, wird dieses Objekt mit den Nutzerdaten wieder an die Filterkette zurückgegeben und landet schließlich bei Listing \ref{code:jwt-authentication-create}. \lstinputlisting[language=Java,linerange={50-62},caption=JWT Authentication Filter,label=code:jwt-authentication-create]{../backend/src/main/java/de/hft/geotime/security/JWTAuthenticationFilter.java} - Der letzte Schritt ist dann nur noch das Token mit den erhaltenen Daten zu befüllen und dann den "Authorization" Header der Antwort auf das soeben erstelle Token zu setzen. + Der letzte Schritt ist dann nur noch, das Token mit den erhaltenen Daten zu befüllen und dann den "Authorization" Header der Antwort auf das soeben erstelle Token zu setzen. - Ab jetzt kann sich der Client der das Token angefragt hat für die nächsten 10 Tage damit authentifizieren. Dies läuft sehr ähnlich ab, deshalb hier nur sehr kurz dargestellt. + Ab jetzt kann sich der Client, der das Token angefragt hat, für die nächsten 10 Tage damit authentifizieren. Dies läuft sehr ähnlich ab, deshalb hier nur sehr kurz dargestellt. \lstinputlisting[language=Java,linerange={40-55},caption=JWT Authorization Filter,label=code:jwt-authorization]{../backend/src/main/java/de/hft/geotime/security/JWTAuthorizationFilter.java} Der eingehende Request geht wieder durch die Filterkette und wenn er an dem Filter in Listing \ref{code:jwt-authorization} ankommt, wird der User extrahiert und später im Security Manager als Autorisation für diesen Request gesetzt. Wichtig ist hier, dass keine weitere Prüfung auf die Existenz des Users durchgeführt wird, auch das Password wird nicht nochmal abgefragt. Der Grund hierfür ist, wenn es den User nicht geben würde, wie käme er dann an das Token? \subsection{Repositories} - Nachdem der Nutzer authentifiziert ist, bekommt er Zugriff auf alle REST-Repositories. Für jede Ressource, die oben im ER-Modell definiert ist gibt es ein entsprechendes Repository. Dieses wird größtenteils automatisch vom Classpath Scan von Spring automatisch implementiert. Die basis CRUD Operationen werden für jedes angelegte Repository komplett ohne zutun implementiert. Ein solches Repository ist beispielsweise das der Location. + Nachdem der Nutzer authentifiziert ist, bekommt er Zugriff auf alle REST-Repositories. Für jede Ressource, die oben im ER-Modell definiert ist gibt es ein entsprechendes Repository. Dieses wird größtenteils automatisch vom Classpath Scan von Spring automatisch implementiert. Die normalen CRUD Operationen werden für jedes angelegte Repository komplett ohne zutun implementiert. Ein solches Repository ist beispielsweise das der Location. \lstinputlisting[language=Java,firstline=8,caption=LocationRepository,label=code:location-repository]{../backend/src/main/java/de/hft/geotime/repositories/LocationRepository.java} - Das einzige was dort getan werden muss, ist die Angabe des Typs, der hier behandelt wird, hier Location, und der Datentyp des Primärschlüssels, hier ein Long. Die Bedeutung der Klasse "PagingAndSortingRepository" wird in einem späteren Kapitel genauer erläutert. Um den Link der Ressource anzupassen werden die Parameter in der "RepositoryRestRessource" Annotation genutzt. Der Pfad geht immer vom Rootpfad der Applikation aus. + Das einzige, was dort getan werden muss, ist die Angabe des Typs, der hier behandelt wird, hier Location, und der Datentyp des Primärschlüssels, hier ein Long. Die Bedeutung der Klasse "PagingAndSortingRepository" wird in einem späteren Kapitel genauer erläutert. Um den Link der Ressource anzupassen, werden die Parameter in der "RepositoryRestRessource" Annotation genutzt. Der Pfad geht immer vom Rootpfad der Applikation aus. - Werden nun noch weitere Funktionalitäten in den Repositories benötigt können diese entweder selbst implementiert werden, oder durch gut ausgewählte Funktionsdefinitionen im Interface der Ressource deklariert werden. Spring kann die Implementierung dann aus dem Namen und den Parametern der Funktion ableiten. Als unser Maximalbeispiel dient hier das RecordRepository. + Werden nun noch weitere Funktionalitäten in den Repositories benötigt, können diese entweder selbst implementiert werden, oder durch gut ausgewählte Funktionsdefinitionen im Interface der Ressource deklariert werden. Spring kann die Implementierung dann aus dem Namen und den Parametern der Funktion ableiten. Als unser Maximalbeispiel dient hier das RecordRepository. \lstinputlisting[language=Java,linerange={14-27,38-41,47-54},caption=RecordRepository,label=code:record-repository]{../backend/src/main/java/de/hft/geotime/repositories/RecordRepository.java} - In diesem Repository befinden sich diverse verschiedene Methoden wie Datenoperationen definiert werden können, ohne dass sie aktiv implementiert werden müssen. Es beginnt mit der funktion "findAllByStartdateBetween". Dieser Name kann direkt als Java Hibernate Statement interpretiert werden und nimmt als Parameter zwei Datumsangaben entgegen und eine Page. Die zwei Datumsangaben werden aus dem Schlüsselwort "Between" abgeleitet. Damit es sich aber um echt vergleichbare Daten handelt, müssen diese nach einem bestimmten Schema geparsed werden. Dieses Schema ist in der "DateTimeFormat" Annotation angegeben. Als Rückgabe liefert diese Funktion dann eine Menge aller Einträge zwischen diesen Daten. + In diesem Repository befinden sich diverse verschiedene Methoden, wie Datenoperationen definiert werden können, ohne dass sie aktiv implementiert werden müssen. Es beginnt mit der Funktion "findAllByStartdateBetween". Dieser Name kann direkt als Java Hibernate Statement interpretiert werden und nimmt als Parameter zwei Datumsangaben entgegen und eine Page. Die zwei Datumsangaben werden aus dem Schlüsselwort "Between" abgeleitet. Damit es sich aber um echt vergleichbare Daten handelt, müssen diese nach einem bestimmten Schema geparsed werden. Dieses Schema ist in der "DateTimeFormat" Annotation angegeben. Als Rückgabe liefert diese Funktion dann eine Menge aller Einträge zwischen diesen Daten. Die nächste Funktion funktioniert nun ähnlich, nur dass dort über Eigenschaften mehrerer verlinkter Objekte gegangen werden kann. "findAllBy" ist wieder das selbe wie oben und zeigt an, dass eine Liste von Ergebnissen zurückgeliefert wird, aber "Account\_User\_Username" bedeutet nun folgendes: "Gehe zum Account des Records, dann zum User dieses Accounts und von diesem User dann den Username". Der gefundene Username wird dann mit dem Parameter der Funktion verglichen und die Ergebnisse entsprechend gefiltert. Weiter zeigt das "And" eine Verkettung eines weiteren Ausdrucks an. So können auch relativ komplexe Abfragen automatisch implementiert werden. - Reicht allerdings die obige Syntax nicht mehr aus, kann auch direkt eine Hibernate Abfrage über die "@Query" Annotation angegeben werden. Der Name der Funktion ist dann nicht mehr relevant für die Implementation, sondern nur noch für den Pfad unter dem die Funktion später zu erreichen ist. Die Query an der "today" Funktion bietet nun die Möglichkeit alle Einträge in der Records Tabelle für den aktuell anfragenden User zu bestimmen. Zusätzlich wird der Zeitraum noch auf den aktuellen Tag eingeschränkt, daher ergab sich auch der passende Name "today" für die Funktion. Der Nutzer wird automatisch über die "principal" Variable in der Abfrage eingefügt. Der Pricipal wird gesetzt, sobald der Authentication Filter den User erfolgreich eingeloggt hat. Weiter wird der aktuelle Tag über die Datenbankvariable "current\_date" abgefragt. + Reicht allerdings die obige Syntax nicht mehr aus, kann auch direkt eine Hibernate Abfrage über die "@Query" Annotation angegeben werden. Der Name der Funktion ist dann nicht mehr relevant für die Implementation, sondern nur noch für den Pfad, unter dem die Funktion später zu erreichen ist. Die Query an der "today" Funktion bietet nun die Möglichkeit, alle Einträge in der Records Tabelle für den aktuell anfragenden User zu bestimmen. Zusätzlich wird der Zeitraum noch auf den aktuellen Tag eingeschränkt, daher ergab sich auch der passende Name "today" für die Funktion. Der Nutzer wird automatisch über die "principal" Variable in der Abfrage eingefügt. Der Pricipal wird gesetzt, sobald der Authentication Filter den User erfolgreich eingeloggt hat. Weiter wird der aktuelle Tag über die Datenbankvariable "current\_date" abgefragt. Zuletzt kann auch nach Standard SQL Werten wie "null" oder "not null" gefragt werden. Zu sehen ist dies in der zuletzt dargestellten Funktion. - Die Datei ist nicht vollständig abgedruckt, sondern nur Ausschnittsweise um die Grundkonzepte zu erläutern. + Die Datei ist nicht vollständig abgedruckt, sondern nur ausschnittsweise, um die Grundkonzepte zu erläutern. \subsection{Projections} - Projections bieten nun noch weitere Möglichkeiten, Daten vor der Rückgabe noch zu transformieren und gegebenenfalls mit Zusatzdaten anzureichern. Eine Projektion ist ebenfalls durch ein Interface definiert und bring vor allem dann Vorteile wenn mehrere Ressourcen gebündelt angefragt werden müssen, um Beispielsweise eine Übersicht zu erstellen. + Projections bieten nun noch weitere Möglichkeiten, Daten vor der Rückgabe noch zu transformieren und gegebenenfalls mit Zusatzdaten anzureichern. Eine Projektion ist ebenfalls durch ein Interface definiert und bring vor allem dann Vorteile, wenn mehrere Ressourcen gebündelt angefragt werden müssen, um beispielsweise eine Übersicht zu erstellen. \lstinputlisting[language=Java,firstline=9,caption=RecordOverviewProjection,label=code:record-overview-projection]{../backend/src/main/java/de/hft/geotime/entities/projections/RecordOverviewProjection.java} - Die "RecordOverviewProjection" (Listing \ref{code:record-overview-projection}) reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Die Dauer des Records in Minuten. + Die "RecordOverviewProjection" (Listing \ref{code:record-overview-projection}) reichert eine normale "Record" Ressource noch zusätzlich mit dem Username und den Accountnamen an. Dadurch muss nicht für jeden Record erneut einzeln der Accountname nachgeschlagen werden. Zudem wird noch ein, bei jeder Anfrage neu berechnetes, zusätzliches Feld angefügt. Nämlich die Dauer des Records in Minuten. Eine Projektion kann am Beispiel des Records gut verdeutlicht werden. @@ -168,9 +168,9 @@ } } \end{lstlisting} - Es zu sehen, dass in Listing \ref{code:records-without-proj} die beiden Felder "account" und "username" fehlen, diese tauchen erst bei der Abfrage mit angewendeter, serverseitiger, Projektion auf (siehe Listing \ref{code:records-with-proj}). Die Anfrage für Listing \ref{code:records-without-proj} lautet \verb|http://localhost/records/27| und um nun die Projektion anzuhängen, wird die URL wie folgt erweitert: \verb|http://localhost/records/27?projection=overview|. Projektionen können hierbei nicht nur auf einzelne Objekte einer Ressource angewendet werden, sondern auch auf eine Menge dieser. + Es ist zu sehen, dass in Listing \ref{code:records-without-proj} die beiden Felder "account" und "username" fehlen, diese tauchen erst bei der Abfrage mit angewendeter, serverseitiger, Projektion auf (siehe Listing \ref{code:records-with-proj}). Die Anfrage für Listing \ref{code:records-without-proj} lautet \verb|http://localhost/records/27| und um nun die Projektion anzuhängen, wird die URL wie folgt erweitert: \verb|http://localhost/records/27?projection=overview|. Projektionen können hierbei nicht nur auf einzelne Objekte einer Ressource angewendet werden, sondern auch auf eine Menge dieser. \section{Endpoints} - Die vier Hauptendpoints sind sicherlich die unserer Hautptressourcen: locations, accounts, records und users. Unten gibt es noch den nicht implementierten Endpoint für die Rollen ("roles") dieser liefert aber kaum Informationen. Der "profile" Endpoint wird erst im nächsten Kapitel erläutert. Um diesen Output zu bekommen muss der Nutzer authentifiziert sein. Dies geschieht wie oben schon erwähnt über den "/login" Endpoint. Da dieser aber keine Ausgaben außer dem Header mit dem Token liefert, wird er hier nicht weiter erläutert. Selbiges gilt auch für den "/sign-up" Endpoint. Alle Anfragen die ab jetzt ausgeführt werden geschehen immer mit vorheriger Authentifizierung. + Die vier Hauptendpoints sind sicherlich die unserer Hautptressourcen: locations, accounts, records und users. Unten gibt es noch den nicht implementierten Endpoint für die Rollen ("roles"), dieser liefert aber kaum Informationen. Der "profile" Endpoint wird erst im nächsten Kapitel erläutert. Um diesen Output zu bekommen, muss der Nutzer authentifiziert sein. Dies geschieht, wie oben schon erwähnt, über den "/login" Endpoint. Da dieser aber keine Ausgaben außer dem Header mit dem Token liefert, wird er hier nicht weiter erläutert. Selbiges gilt auch für den "/sign-up" Endpoint. Alle Anfragen, die ab jetzt ausgeführt werden, geschehen immer mit vorheriger Authentifizierung. \begin{lstlisting}[language=json,caption=Zugriff auf die Route "/" der API,label=code:main-route-api] { "_links": { @@ -237,7 +237,7 @@ } \end{lstlisting} - Aufgrund der massiven Größe der Ausgaben der API werden die weiteren Endpoints nur noch mit ihrem Link angegeben. Alle Ressourcen unterstützen zudem die CRUD Operationen auf einzelnen Ressourcen als auch auf der Hauptressource, deshalb werden sie aus Platzgründen ebenfalls übergangen. + Aufgrund der massiven Größe der Ausgaben der API werden die weiteren Endpoints nur noch mit ihrem Link angegeben. Alle Ressourcen unterstützen zudem die CRUD Operationen auf einzelnen Ressourcen, als auch auf der Hauptressource, deshalb werden sie aus Platzgründen ebenfalls übergangen. \subsection*{Endpoints für Ressourcen} \begin{itemize} @@ -269,10 +269,10 @@ Wenn Ressourcen aktualisiert werden müssen, müssen die Daten immer im JSON Format vorliegen. Die Felder des JSON Objekts müssen mit denen der Ressource übereinstimmen. Es müssen aber nicht alle Felder Werte beinhalten. Soll eine neue Ressource erstellt werden, werden die Daten als POST abgesendet, bei einer Aktualisierung als PATCH. Links zwischen Ressourcen können über den Self Link der Ressource hergestellt werden. Weiter gibt es noch zwei komplett selbst gebaute Endpoints. \subsection*{Der "/whoami" Endpoint} - Dieser Endpoint dient um nach dem Login schnell die Startseite der App oder der Webseite mit den Nutzerdaten zu befüllen. Es sind Daten wie der Vor- und Nachname, sowie der Username enthalten. Zusätzlich wird noch die gesetzte Location des Nutzers mitgegeben. + Dieser Endpoint dient dazu, um nach dem Login schnell die Startseite der App oder der Webseite mit den Nutzerdaten zu befüllen. Es sind Daten wie der Vor- und Nachname, sowie der Username enthalten. Zusätzlich wird noch die gesetzte Location des Nutzers mitgegeben. \subsection*{Der "/track" Endpoint} - Beim "/track" Endpoint handelt es sich um einen der wichtigsten Endpoints. Er erlaubt es ein Recording zu erstellen, ohne Angabe des Nutzers. Lediglich der Name des Timetrack Accounts auf den gebucht werden soll muss angegeben werden. Der Endpoint entscheidet auf Serverseite von welchem Nutzer die Anfrage ankam. Dazu wird der Nutzer aus dem JWT extrahiert und abhängig davon im Account des Nutzers geschaut ob schon ein Tracking läuft oder nicht. Sollte noch kein Tracking laufen, wird ein neuer Eintrag mit der aktuellen Zeit erstellt und zurückgeliefert. Das Enddatum ist zu diesem Zeitpunkt noch leer und auch die Duration zeigt "0" an. Sollte schon ein Tracking laufen, wird dieses mit der aktuellen Zeit als Endzeit beendet und ebenfalls zurückgeliefert. Sollte der Account nicht gefunden werden, oder ein anderer Fehler auftreten, wird ein entsprechender HTTP Statuscode zurückgeliefert. + Beim "/track" Endpoint handelt es sich um einen der wichtigsten Endpoints. Er erlaubt es, ein Recording zu erstellen, ohne Angabe des Nutzers. Lediglich der Name des Timetrack Accounts, auf den gebucht werden soll, muss angegeben werden. Der Endpoint entscheidet auf Serverseite, von welchem Nutzer die Anfrage ankam. Dazu wird der Nutzer aus dem JWT extrahiert und abhängig davon im Account des Nutzers geschaut, ob schon ein Tracking läuft oder nicht. Sollte noch kein Tracking laufen, wird ein neuer Eintrag mit der aktuellen Zeit erstellt und zurückgeliefert. Das Enddatum ist zu diesem Zeitpunkt noch leer und auch die Duration zeigt "0" an. Sollte schon ein Tracking laufen, wird dieses mit der aktuellen Zeit als Endzeit beendet und ebenfalls zurückgeliefert. Sollte der Account nicht gefunden werden, oder ein anderer Fehler auftreten, wird ein entsprechender HTTP Statuscode zurückgeliefert. \begin{lstlisting}[language=json,caption=Aufruf von "/track" ohne laufendes Tracking,label=code:start-tracking-endpoint] { "duration": 0, @@ -295,22 +295,22 @@ \end{lstlisting} \subsection{HAL, Paging und Sorting} - Die Hypertext Application Language, kurz HAL, ist eine Spezifikation, mit der APIs automatisch erkundbar gemacht werden können. Sie bietet META-Elemente an einige davon werden auch bei uns benutzt. + Die Hypertext Application Language, kurz HAL, ist eine Spezifikation, mit der APIs automatisch erkundbar gemacht werden können. Sie bietet META-Elemente an, einige davon werden auch bei uns benutzt. \begin{itemize} \item \textbf{"\_links"} zeigt weiterführende Links zu Ressourcen oder Informationen zum Paging an. - \item \textbf{"\_embedded"} enthält die Nutzdaten zur entsprechenden Ressource aber auch weitere Einbettungen zu Sub-Ressourcen. + \item \textbf{"\_embedded"} enthält die Nutzdaten zur entsprechenden Ressource, aber auch weitere Einbettungen zu Sub-Ressourcen. \end{itemize} - Zusätzlich dazu nutzt Spring bei der Generation der Repositories auch teile der Hypermedia as the Engine of Application State, kurz HATEOAS, Spezifikation. Das Listing \ref{code:main-route-api} zeigt hierfür den zusätzlichen Endpoint "profile". Unter diesem sind viele Spezifikationen zu finden, wie alle anderen Routen auf bestimmte Daten reagieren und auch antworten. + Zusätzlich dazu nutzt Spring bei der Generation der Repositories auch Teile der "Hypermedia as the Engine of Application State", kurz HATEOAS, Spezifikation. Das Listing \ref{code:main-route-api} zeigt hierfür den zusätzlichen Endpoint "profile". Unter diesem sind viele Spezifikationen zu finden, wie alle anderen Routen auf bestimmte Daten reagieren und auch antworten. - Der "profile" Endpoint zeigt zusätzlich noch alle Projektionen an, die auf eine bestimmte Ressource angewendet werden kann. Der Name der Projektion wird dann durch den URL-Parameter "projection=" angehängt. + Der "profile" Endpoint zeigt zusätzlich noch alle Projektionen an, die auf eine bestimmte Ressource angewendet werden können. Der Name der Projektion wird dann durch den URL-Parameter "projection=" angehängt. - Zuletzt gilt es noch zu erwähnen, dass alle Ressourcen Paging und Sorting unterstützen. Paging ist besonders bei Web APIs wichtig, da die Geschwindigkeit sehr stark von der Menge der übertragenen Daten abhängt. Wenn eine Ressource immer alle Daten zurückliefern würde, würde dies bei mehreren hundert Einträgen sicher noch funktionieren. Aber sobald die Zahl der Einträge deutlich höher wird, muss abgeschnitten und aufgeteilt werden. Unsere Standard Seitengröße ist auf 20 Einträge gesetzt. Weiter enthält die Antwort des Servers durch die HAL Integration immer Links zur aktuellen, nächsten und vorherigen Seite als Link. Sorting wird ebenfalls unterstützt. Es kann nach jedem Feld im zurückgegebenen JSON Sortiert werden, auch die Richtung ist spezifizierbar. + Zuletzt gilt es noch zu erwähnen, dass alle Ressourcen Paging und Sorting unterstützen. Paging ist besonders bei Web APIs wichtig, da die Geschwindigkeit sehr stark von der Menge der übertragenen Daten abhängt. Wenn eine Ressource immer alle Daten zurückliefern würde, würde dies bei mehreren hundert Einträgen sicher noch funktionieren. Aber sobald die Zahl der Einträge deutlich höher wird, muss abgeschnitten und aufgeteilt werden. Unsere Standard Seitengröße ist auf 20 Einträge gesetzt. Weiter enthält die Antwort des Servers durch die HAL Integration immer Links zur aktuellen, nächsten und vorherigen Seite als Link. Sorting wird ebenfalls unterstützt. Es kann nach jedem Feld im zurückgegebenen JSON sortiert werden, auch die Richtung ist spezifizierbar. \section{Probleme und Lösungen} \subsection{Einlesen in Spring} - Spring ist ein sehr komplexes Framework, deshalb war es manchmal wirklich sehr schwierig Fehler zu verstehen und die Gründe dahinter zu verstehen. Solange man sich aber an viele der Best-Practicies von Spring hält ist es überhaupt nicht schwer in relativ kurzer Zeit auch sehr komplexe APIs zu bauen. Durch die enorme Menge an Dokumentation und auch Hilfe aus der Community sowie Techtalks können viele Probleme leicht gelöst werden. + Spring ist ein sehr komplexes Framework, weshalb es manchmal wirklich sehr schwierig war, Fehler zu verstehen, und die Gründe dahinter zu verstehen. Solange man sich aber an viele der Best-Practicies von Spring hält, ist es überhaupt nicht schwer, in relativ kurzer Zeit auch sehr komplexe APIs zu bauen. Durch die enorme Menge an Dokumentation und auch Hilfe aus der Community sowie Techtalks können viele Probleme leicht gelöst werden. \subsection{Änderungen an den Endpoints} - Es mussten anfangs viele Endpoint immer wieder umdefiniert werden, da sie nicht Best-Practicies entsprochen haben oder nicht performant funktioniert haben. Dies wurde später aber immer einfacher, wenn man sich an die Denkweise einer REST-API gewöhnt hat. Auch zwei Wege Links zwischen Ressourcen waren bei uns nicht möglich, da sie zu Endlosrekursionen führten. Später wurde aber auch klar, das dies überhaupt nicht gewünscht ist. + Es mussten anfangs viele Endpoints immer wieder umdefiniert werden, da sie nicht Best-Practicies entsprochen haben oder nicht performant funktioniert haben. Dies wurde später aber immer einfacher, wenn man sich an die Denkweise einer REST-API gewöhnt hat. Auch zwei Wege Links zwischen Ressourcen waren bei uns nicht möglich, da sie zu Endlosrekursionen führten. Später wurde aber auch klar, das dies überhaupt nicht gewünscht ist. \subsection{Probleme mit MariaDB} - Zu beginn haben wir für das Docker-Image der Datenbank den "latest"-Tag benutzt. Dies war möglich, da wir keinerlei eigene Konfiguration der Datenbank und deren Tabellen vorgenommen haben. Allerdings wurde mitte April die neue LTS-Version von Ubuntu veröffentlicht und damit auch das Basisimage von MariaDB angepasst. Durch Änderungen in Ubuntu 20.04 funktionierten nun gewisse Datenbankfunktionen nicht mehr ordnungsgemäß. Als Lösung kam dann nur ein Downgrade auf eine ältere Version in frage. + Zu Beginn haben wir für das Docker-Image der Datenbank den "latest"-Tag benutzt. Dies war möglich, da wir keinerlei eigene Konfiguration der Datenbank und deren Tabellen vorgenommen haben. Allerdings wurde Mitte April die neue LTS-Version von Ubuntu veröffentlicht und damit auch das Basisimage von MariaDB angepasst. Durch Änderungen in Ubuntu 20.04 funktionierten nun gewisse Datenbankfunktionen nicht mehr ordnungsgemäß. Als Lösung kam dann nur ein Downgrade auf eine ältere Version in Frage. \section{Deployment} - Das Deployment des Backends findet immer gleichzeitig mit der Datenbank und dem Frontend statt. Die Daten bleiben dabei erhalten und werden, so fern nötig, von Spring automatisch migriert. Auch beim hinzufügen oder entfernen von Feldern aus Entitäten aktualisiert Spring die Datenbanktabellen entsprechend den neuen Feldern. Sollten Felder wegfallen werden diese einfach gelöscht, kommen neue hinzu wird entweder der Defaultwert gesetzt oder, wenn erlaubt, "Null". \ No newline at end of file + Das Deployment des Backends findet immer gleichzeitig mit der Datenbank und dem Frontend statt. Die Daten bleiben dabei erhalten und werden, so fern nötig, von Spring automatisch migriert. Auch beim Hinzufügen oder Entfernen von Feldern aus Entitäten aktualisiert Spring die Datenbanktabellen entsprechend den neuen Feldern. Sollten Felder wegfallen, werden diese einfach gelöscht. Kommen neue hinzu, wird entweder der Defaultwert gesetzt oder, wenn erlaubt, "Null". \ No newline at end of file From d3a0f3ad64c43558635c347f5afe1dfc19aab8b8 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 16:45:15 +0200 Subject: [PATCH 15/16] Correct spelling einleitung chapter --- documentation/parts/einleitung.tex | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/documentation/parts/einleitung.tex b/documentation/parts/einleitung.tex index 06f9a56..48a22ff 100644 --- a/documentation/parts/einleitung.tex +++ b/documentation/parts/einleitung.tex @@ -1,5 +1,8 @@ \chapter{Einleitung} -Im Rahmen der Vorlesung Ubiquitous Computing ist eine Projektarbeit mit einem Thema der Allgegenwärtigkeit von Computern vorgesehen. \\ -Dazu fanden wir uns als Gruppe zusammen und sammelten unsere Ideen für Projektthemen. Letztendlich setzte sich der Timetracker mit Geofence gegen eine Wetterstation und eine Augmented Reality App durch. \\ -Die Idee der Timetrack-Anwendung ist, dass ein Arbeitnehmer erst dann mit der Aufzeichnung seiner Arbeitszeit beginnen kann wenn er sich am Arbeitsort befindet. Wenn er diesen verlässt, wird seine Aufzeichnung beendet. Dabei hat er mehrere Zeitkonten zur Auswahl auf die er seine Arbeitszeit verbuchen kann. \\ -Das Projekt ist in drei Teile unterteilt: Backend, Web-Frontend und Android-App. Entsprechend dem Aufwand arbeiteten am Web-Frontend zwei Studenten, am Backend und der Android-App jeweils ein Student. Die Android-App soll lediglich die Basisfunktionalitäten bieten wie Starten und Stoppen der Aufzeichnung für einen gewählten Account, wenn man sich am Arbeitsort befindet, sowie log in und log out. Im Web-Frontend sollen verschiedenste Statistiken angezeigt werden, sowie Adminfunktionaltäten um Accounts zu editieren, neue Einträge hinzufügen, Geodaten für den Arbeitnehmer setzen und Benutzer löschen. Das Backend kommuniziert mit der Datenbank, sichert die Authentifizierung der Benutzer und stellt den Oberflächen Endpoints zur Verfügung. \ No newline at end of file +Im Rahmen der Vorlesung Ubiquitous Computing ist eine Projektarbeit mit dem Thema der Allgegenwärtigkeit von Computern vorgesehen. + +Dazu fanden wir uns als Gruppe zusammen und sammelten unsere Ideen für Projektthemen. Letztendlich setzte sich der Timetracker mit Geofence gegen eine Wetterstation und eine Augmented Reality App durch. + +Die Idee der Timetrack-Anwendung ist, dass ein Arbeitnehmer erst dann mit der Aufzeichnung seiner Arbeitszeit beginnen kann, wenn er sich am Arbeitsort befindet. Wenn er diesen verlässt, wird seine Aufzeichnung beendet. Dabei hat er mehrere Zeitkonten zur Auswahl, auf die er seine Arbeitszeit verbuchen kann. + +Das Projekt ist in drei Teile unterteilt: Backend, Web-Frontend und Android-App. Entsprechend dem Aufwand arbeiteten am Web-Frontend zwei Studenten, am Backend und der Android-App jeweils ein Student. Die Android-App soll lediglich die Basisfunktionalitäten bieten, wie Starten und Stoppen der Aufzeichnung für einen gewählten Account, wenn man sich am Arbeitsort befindet, sowie log in und log out. Im Web-Frontend sollen verschiedenste Statistiken angezeigt werden, sowie Adminfunktionaltäten, um Accounts zu editieren, neue Einträge hinzufügen, Geodaten für den Arbeitnehmer setzen und Benutzer löschen. Das Backend kommuniziert mit der Datenbank, sichert die Authentifizierung der Benutzer und stellt den Oberflächen Endpoints zur Verfügung. \ No newline at end of file From 9255bce492fa0d8ecc7a0a520e279ebd4cc48243 Mon Sep 17 00:00:00 2001 From: Marcel Schwarz Date: Thu, 11 Jun 2020 17:24:26 +0200 Subject: [PATCH 16/16] Correct spelling android chapter --- documentation/parts/android.tex | 109 ++++++++++++++++++-------------- 1 file changed, 60 insertions(+), 49 deletions(-) diff --git a/documentation/parts/android.tex b/documentation/parts/android.tex index 2c00ab9..9c8e088 100644 --- a/documentation/parts/android.tex +++ b/documentation/parts/android.tex @@ -1,61 +1,66 @@ \chapter{Android-App} \section{Technologiebeschreibung} \subsection{Android SDK} - Die Android-Entwicklung wurde, aufgrund der Ausgereiftheit und den Emulatoren, mit Android-Studio realisiert. Android-Studio verwaltet auch das SDK und unterstützt beim aktuell halten der Bibliotheken. \\ + Die Android-Entwicklung wurde, aufgrund der Ausgereiftheit und den Emulatoren, mit Android-Studio realisiert. Android-Studio verwaltet auch das SDK und unterstützt beim aktuell halten der Bibliotheken. + Das minimale API-Level, welches das Endgerät haben darf, wurde auf 23 "Marshmallow" festgelegt. Dadurch werden ca. 85\% der Geräte unterstützt und ist aktuell genug um gewisse Features, wie das neue Berechtigungssystem, zu unterstützen. Die Zielversion ist das aktuelle Android 10 mit API-Level 29. In dieser Version wurden erneut Berechtigungen geändert, wodurch im Code einige Anpassungen gemacht werden mussten (siehe: \ref{sec:Probleme}) \subsection{Kotlin} - Die Entscheidung fiel auf Kotlin als Programmiersprache, da die Sprache von Google für die Entwicklung von Android-Apps bevorzugt wird. Außerdem bietet dies die Gelegenheit eine neue Programmiersprache zu erlernen. Dadurch jedoch musste viel Zeit investiert werden um zum Einen die Sprache und zum Anderen die Entwicklungsumgebung, sowie der Aufbau einer Android-App zu lernen. Dafür wurden zwei von insgesamt fünf Sprints eingeplant, weswegen die App nur die Grundfunktionen besitzt.\\ - Die Kotlin-Version bei Fertigstellung ist die aktuellste Version (1.3.72). + Die Entscheidung fiel auf Kotlin als Programmiersprache, da die Sprache von Google für die Entwicklung von Android-Apps bevorzugt wird. Außerdem bietet dies die Gelegenheit, eine neue Programmiersprache zu erlernen. Dadurch musste jedoch viel Zeit investiert werden um zum einen die Sprache und zum anderen die Entwicklungsumgebung, sowie den Aufbau einer Android-App zu lernen. Dafür wurden zwei von insgesamt fünf Sprints eingeplant, weswegen die App nur die Grundfunktionen besitzt. + + Die aktuellste Kotlin-Version zur Zeit der Fertigstellung ist 1.3.72. \subsection{Retrofit} - Für die Kommunikation mit dem Backend wurde die Bibliothek Retrofit in der Version 2.8.1 verwendet. Retrofit ist ein HTTP-Client für Android mit dem man REST-Endpunkte simpel ansprechen kann. Zusammen mit der Gson-Bibliothek lassen sich JSON-Nachrichten senden und empfangen. \\ - Das angefragte API wird mit Klassen und Methoden in der Anwendung modelliert. Dadurch ist es möglich nur die Felder abzufragen, welche auch benötigt werden. Genaueres in Kapitel \ref{subsec:AnzeigeDaten}. + Für die Kommunikation mit dem Backend wurde die Bibliothek Retrofit in der Version 2.8.1 verwendet. Retrofit ist ein HTTP-Client für Android, mit dem man REST-Endpunkte simpel ansprechen kann. Zusammen mit der Gson-Bibliothek lassen sich JSON-Nachrichten senden und empfangen. + + Das angefragte API wird mit Klassen und Methoden in der Anwendung modelliert. Dadurch ist es möglich, nur die Felder abzufragen, welche auch benötigt werden. Genaueres in Kapitel \ref{subsec:AnzeigeDaten}. \subsection{Material Design} Material ist eine Bibliothek, die Komponenten und Richtlinien bereitstellt. Nach einmaligem Einbinden der Bibliothek können die Komponenten verwendet werden, indem der Komponente der Style zugewiesen wird. \section{Farbschema und Designsprache} - In einem gemeinsamen Meeting mit dem Web-Frontend einigten wir uns auf Farbcodes, die auf beiden Oberflächen verwendet werden. So haben wir uns auf ein dunkles Schema festgelegt, mit den Farben aus dem Logo für Schrift und Akzente. Als Schriftart wird Montserrat verwendet (siehe: Abbildungen \ref{Abb:login} - \ref{Abb:settings}). \\ + In einem gemeinsamen Meeting mit dem Web-Frontend einigten wir uns auf Farbcodes, die auf beiden Oberflächen verwendet werden. So haben wir uns auf ein dunkles Schema festgelegt, mit den Farben aus dem Logo für Schrift und Akzente. Als Schriftart wird Montserrat verwendet (siehe: Abbildungen \ref{Abb:login} - \ref{Abb:settings}). \section{Umsetzung} \subsection{Design der Activities} - Insgesamt besitzt die App die vier Activities: Login, MainActivity, Register und Settings. Wobei die Register- und die Settings-Activity aus zeitlichen Gründen ohne Funktion sind. Sie haben auch noch die alten unschönen Eingabefelder, sind aber für die Funktion der gesamten Anwendung nicht sonderlich relevant, weshalb entschieden wurde diese zu vernachlässigen und den Fokus auf die Funktionalität zulegen. \\ - Jeder Bildschirm hat eine Top-Bar auf der, je nachdem auf welchem Bildschirm man sich befindet, unterschiedliche Inhalte angezeigt werden. Beim Einloggen und Account erstellen wird außer dem Logo und dem Namen der App nichts angezeigt. In den Einstellungen erscheint anstatt dem Logo ein Zurück-Button und auf dem Hauptbildschirm gibt es ein Menü zum Ausloggen und um zu den Einstellungen zu gelangen. + Insgesamt besitzt die App die vier Activities: Login, MainActivity, Register und Settings. Wobei die Register- und die Settings-Activity aus zeitlichen Gründen ohne Funktion sind. Sie haben auch noch die alten unschönen Eingabefelder, sind aber für die Funktion der gesamten Anwendung nicht sonderlich relevant, weshalb entschieden wurde, diese zu vernachlässigen und den Fokus auf die Funktionalität zu legen. + + Jeder Bildschirm hat eine Top-Bar auf der, je nachdem auf welchem Bildschirm man sich befindet, unterschiedliche Inhalte angezeigt werden. Beim Einloggen und Account erstellen wird außer dem Logo und dem Namen der App nichts angezeigt. In den Einstellungen erscheint anstatt des Logos ein Zurück-Button und auf dem Hauptbildschirm gibt es ein Menü zum Ausloggen und um zu den Einstellungen zu gelangen. \begin{figure}[H] \centering - \begin{minipage}[b]{.4\linewidth} + \begin{minipage}[b]{0.4\linewidth} \includegraphics[width=\linewidth]{img/android/login} \caption{Login Activity} \label{Abb:login} \end{minipage} \hspace{.1\linewidth} - \begin{minipage}[b]{.4\linewidth} + \begin{minipage}[b]{0.4\linewidth} \includegraphics[width=\linewidth]{img/android/register} \caption{Register Activity} \end{minipage} \end{figure} - Links die Eingabefelder mit Material Design und rechts die alten selber erstellten. + Links die Eingabefelder mit Material Design und rechts die alten, selbst erstellten. \begin{figure}[H] \centering - \begin{minipage}[b]{.4\linewidth} + \begin{minipage}[b]{0.4\linewidth} \includegraphics[width=\linewidth]{img/android/main} \caption{Main Activity} \label{Abb:main} \end{minipage} \hspace{.1\linewidth} - \begin{minipage}[b]{.4\linewidth} + \begin{minipage}[b]{0.4\linewidth} \includegraphics[width=\linewidth]{img/android/settings} \caption{Settings Activity} \label{Abb:settings} \end{minipage} \end{figure} - Wie zu erkennen ist lag der Fokus der Implementierung deutlich auf der Main Activtiy, da sie auch das Wichtigste der App beinhaltet. Prominent ist dabei der 'START'-Knopf an der Unterseite, mit dem die Aufzeichnung gestartet werden kann (genaueres im Kapitel \ref{subsec:main}). + Wie zu erkennen ist lag, der Fokus der Implementierung deutlich auf der Main Activtiy, da sie auch das Wichtigste der App beinhaltet. Prominent ist dabei der 'START'-Knopf an der Unterseite, mit dem die Aufzeichnung gestartet werden kann (genaueres im Kapitel \ref{subsec:main}). \subsection{Authentifizierung} - Zur Authentifizierung benutzen wir JWT, welches bei jeder Anfrage ans Backend mit geschickt werden muss. Das Token erhält man beim Einloggen mit den richtigen Daten und muss persistiert werden, bis sich der Benutzer ausloggt. Dazu wird das Token im privaten Speicher der App gespeichert. In allen weiteren Activities kann dann auf den Speicher zugegriffen werden und das Token beim Erstellen des \verb|AuthenticationInterceptor|s mitgegeben werden. Beim Ausloggen wird einfach die Datei mit dem Token aus dem Speicher gelöscht. \\ + Zur Authentifizierung benutzen wir JWT, welches bei jeder Anfrage ans Backend mit geschickt werden muss. Das Token erhält man beim Einloggen mit den richtigen Daten und muss persistiert werden, bis sich der Benutzer ausloggt. Dazu wird das Token im privaten Speicher der App gespeichert. In allen weiteren Activities kann dann auf den Speicher zugegriffen werden und das Token beim Erstellen des \verb|AuthenticationInterceptor|s mitgegeben werden. Beim Ausloggen wird einfach die Datei mit dem Token aus dem Speicher gelöscht. + Der \verb|AuthenticationInterceptor| ist Kind von der \verb|Interceptor|-Klasse aus der \verb|okhttp3|-Bibliothek, welche in Retrofit eingebunden ist. Mithilfe des Interceptors können REST-Aufrufen Header-Daten mitgegeben werden. In unserem Fall ist das das \verb|Authorization|-Feld mit dem Token. - \begin{lstlisting}[language=Kotlin] + \begin{lstlisting}[language=Kotlin,caption=AuthenticationInterceptor] class AuthenticationInterceptor(pToken: String) : Interceptor { private val token = pToken override fun intercept(chain: Interceptor.Chain): Response { @@ -68,15 +73,15 @@ class AuthenticationInterceptor(pToken: String) : Interceptor { } \end{lstlisting} Der Interceptor wird dem HTTP-Client hinzugefügt, welcher später bei der Erzeugung des Retrofit-Builders notwendig ist. - \begin{lstlisting}[language=Kotlin] + \begin{lstlisting}[language=Kotlin,caption=HTTP Client] val httpClient = OkHttpClient.Builder() val interceptor = AuthenticationInterceptor(token) httpClient.addInterceptor(interceptor) \end{lstlisting} \subsection{Anzeige der Daten in der Main Activity}\label{subsec:AnzeigeDaten} - Die Daten werden per REST-Aufruf mithilfe vom Retrofit-Framework vom Backend geholt. Um Anfragen zusenden benötigt man einen Retrofit-Builder. Diesem wird die anzufragende URL, ein JSON-Konverter und ein HTTP-Client mitgegeben. Aus diesem Builder und einer Service-Klasse, in der die Methoden definiert sind, wird ein Objekt erzeugt mit dem die Methoden aufrufbar sind. - \begin{lstlisting}[language=Kotlin] + Die Daten werden per REST-Aufruf mithilfe vom Retrofit-Framework vom Backend geholt. Um Anfragen zu senden, benötigt man einen Retrofit-Builder. Diesem wird die anzufragende URL, ein JSON-Konverter und ein HTTP-Client mitgegeben. Aus diesem Builder und einer Service-Klasse, in der die Methoden definiert sind, wird ein Objekt erzeugt, mit dem die Methoden aufrufbar sind. + \begin{lstlisting}[language=Kotlin,caption=Retrofit Builder] val builder = Retrofit.Builder() .baseUrl("http://plesk.icaotix.de:5000") .addConverterFactory(GsonConverterFactory.create()) @@ -84,8 +89,8 @@ val builder = Retrofit.Builder() val retrofit = builder.build() service = retrofit.create(GeofenceService::class.java) \end{lstlisting} - Die Klasse \verb|GeofenceService| dient, wie oben beschrieben, zur definition der Endpunkte in Form von Methodenaufrufen. Dort wird definiert, ob es ein \verb|POST|- oder \verb|GET|-Entpunkt ist, wie der Pfad lautet und was für Parameter mitgegeben werden. - \begin{lstlisting}[language=Kotlin] + Die Klasse \verb|GeofenceService| dient, wie oben beschrieben, zur Definition der Endpunkte in Form von Methodenaufrufen. Dort wird definiert, ob es ein \verb|POST|- oder \verb|GET|-Entpunkt ist, wie der Pfad lautet und was für Parameter mitgegeben werden. + \begin{lstlisting}[language=Kotlin,caption=GeofenceService] @POST("/login") fun login(@Body login_data: ValuesUserLogin): Call @@ -96,14 +101,14 @@ fun getUser(): Call fun getAccounts(@Query("username") username : String): Call \end{lstlisting} Der Rückgabewert der Methoden ist immer vom Typ \verb|Call|. Wenn aus dem Body Werte gelesen werden sollen, muss eine Art Skelett-Klasse angelegt werden mit den relevanten Feldern. Die Klasse \verb|ValuesUser| stellt Werte der Antwort bereit, wie z. B. den Vornamen. - \begin{lstlisting}[language=Kotlin] + \begin{lstlisting}[language=Kotlin,caption=ValuesUser] class ValuesUser(firstname: String) { @SerializedName("firstname") var firstname = firstname } \end{lstlisting} - Der Aufruf der Methode erfolgt Asynchron. Deshalb darf sich nicht auf das Ergebnis des Aufrufs direkt danach verlassen werden, sonst bekommt man eine Null-Pointer-Excetion. Die Methode \verb|enqueue| besitzt ein Callback-Objekt als Parameter, welches \verb|onResponse| und \verb|onFailure| überschreibt. Dort wird entsprechend definiert was in den jeweiligen Fällen ausgeführt werden soll. - \begin{lstlisting}[language=Kotlin] + Der Aufruf der Methode erfolgt asynchron. Deshalb darf sich nicht auf das Ergebnis des Aufrufs direkt danach verlassen werden, sonst bekommt man eine Null-Pointer-Excetion. Die Methode \verb|enqueue| besitzt ein Callback-Objekt als Parameter, welches \verb|onResponse| und \verb|onFailure| überschreibt. Dort wird entsprechend definiert, was in den jeweiligen Fällen ausgeführt werden soll. + \begin{lstlisting}[language=Kotlin,caption=Callback der "getUser" Funktion] val call = service.getUser() call.enqueue(object : Callback { override fun onResponse(call: Call, response: Response) { @@ -131,10 +136,12 @@ call.enqueue(object : Callback { \end{itemize} \subsection{Geofencing}\label{subsec:geofence} - Die Geofencing-Funktion ist die zentrale Funktion für die App und auch für das gesamte Projekt. Deshalb war es wichtig, dass sie frühzeitig funktioniert. \\ - Um die Position eines Gerätes zu bestimmen bedarf es einer Berechtigung, die vom Benutzer bestätigt werden muss. Für Geräte mit API-Level 28 und niedriger muss dafür die \verb|ACCESS_FINE_LOCATION|-Berechtigung gesetzt werden und für API-Level 29 und höher \verb|ACCESS_BACKGROUND_LOCATION|. \\ + Die Geofencing-Funktion ist die zentrale Funktion für die App und auch für das gesamte Projekt. Deshalb war es wichtig, dass sie frühzeitig funktioniert. + + Um die Position eines Gerätes zu bestimmen, bedarf es einer Berechtigung, die vom Benutzer bestätigt werden muss. Für Geräte mit API-Level 28 und niedriger muss dafür die \verb|ACCESS_FINE_LOCATION|-Berechtigung gesetzt werden und für API-Level 29 und höher \verb|ACCESS_BACKGROUND_LOCATION|. + Der Geofence wird initialisiert, wenn für den Benutzer Geo-Daten gespeichert sind. Ist dies der Fall, so wird ein \verb|GeofencingClient| angelegt, dem dann der Geofence hinzugefügt wird. Der Geofence wird erzeugt mit den Parametern: Breitengrad, Längengrad, Radius, der Lebenszeit des Fence und den Übergangstypen. Die Typen sind in unserem Fall \verb|GEOFENCE_TRANSITION_ENTER| und \verb|GEOFENCE_TRANSITION_EXIT|, da wir immer reagieren wollen, wenn der Nutzer den Bereich verlässt oder betritt. - \begin{lstlisting}[language=Kotlin] + \begin{lstlisting}[language=Kotlin,caption=Anlegen des Geofencing Clients] geofencingClient = LocationServices.getGeofencingClient(this) geofence = Geofence.Builder().setRequestId("Geofence") .setCircularRegion(lat, long, rad) @@ -143,14 +150,14 @@ geofence = Geofence.Builder().setRequestId("Geofence") .build() \end{lstlisting} Um den Geofence-Client zu starten wird auf das Objekt die \verb|addGeofences|-Methode ausgeführt mit einem \verb|GeofencingRequest|-Objekt und einem \verb|PendingIntent|-Objekt als Parameter. - \begin{lstlisting}[language=Kotlin] + \begin{lstlisting}[language=Kotlin,caption="addGeofences" Methode] geofencingClient.addGeofences(getGeofencingRequest(), geofencePendingIntent)?.run { addOnSuccessListener { ... } addOnFailureListener { ... } } \end{lstlisting} - In der \verb|getGeofencingRequest|-Methode wird festgelegt auf welches initiale Event reagiert werden soll und der oben erstellte Geofence wird hinzugefügt. Als initiales Event haben wir \verb|INITIAL_TRIGGER_ENTER| gewählt, da es ausgelöst wird wenn man sich bereits im Bereich befindet und die App startet. Denn erst mit dem Eintrittsevent wird der Button zum Starten der Aufzeichnung freigeschaltet. Das \verb|geofencePendingIntent| definiert die BroadcastReceiver-Klasse, welche bei jedem Event aufgerufen wird. - \begin{lstlisting}[language=Kotlin] + In der \verb|getGeofencingRequest|-Methode wird festgelegt, auf welches initiale Event reagiert werden soll und der oben erstellte Geofence wird hinzugefügt. Als initiales Event haben wir \verb|INITIAL_TRIGGER_ENTER| gewählt, da es ausgelöst wird, wenn man sich bereits im Bereich befindet und die App startet. Denn erst mit dem Eintrittsevent wird der Button zum Starten der Aufzeichnung freigeschaltet. Das \verb|geofencePendingIntent| definiert die BroadcastReceiver-Klasse, welche bei jedem Event aufgerufen wird. + \begin{lstlisting}[language=Kotlin,caption=Setzen der Geofence Trigger] private fun getGeofencingRequest(): GeofencingRequest { return GeofencingRequest.Builder().apply { setInitialTrigger(GeofencingRequest.INITIAL_TRIGGER_ENTER) @@ -162,22 +169,23 @@ private val geofencePendingIntent: PendingIntent by lazy { PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT) } \end{lstlisting} - Die \verb|GeofenceBroadcastReceiver|-Klasse definiert was bei den jeweiligen Events ausgeführt werden soll. In unserem Fall ist dies das Verändern einer boolean Shared-Prefrences-Variable, je nachdem ob der Bereich betreten oder verlassen wurde. Warum diese Art und Weise gewählt wurde lesen Sie in Kapitel \ref{sec:Probleme}.\\ - Das Code-Beispiel zeigt die Aktion beim Betreten des Bereichs. - \begin{lstlisting}[language=Kotlin] + Die \verb|GeofenceBroadcastReceiver|-Klasse definiert, was bei den jeweiligen Events ausgeführt werden soll. In unserem Fall ist dies das Verändern einer boolean Shared-Prefrences-Variable, je nachdem ob der Bereich betreten oder verlassen wurde. Warum diese Art und Weise gewählt wurde lesen Sie in Kapitel \ref{sec:Probleme}. Das Code-Beispiel zeigt die Aktion beim Betreten des Bereichs. + \begin{lstlisting}[language=Kotlin,caption=Ändern der Shared-Preferences] context!!.getSharedPreferences("LOCATION", Context.MODE_PRIVATE) ?.edit() ?.putBoolean("ENABLED", true) ?.apply() \end{lstlisting} - In der \verb|MainActivity| wird ein Listener für diese Shared-Prefrences-Variable definiert. Je nachdem zu welchem Wert sich die Variable ändert wird der Start/Stopp-Button freigeschalten oder gesperrt und wenn der Benutzer den Bereich verlässt, aber noch aufzeichnet, wird diese gestoppt und gespeichert. \\ \\ + In der \verb|MainActivity| wird ein Listener für diese Shared-Prefrences-Variable definiert. Je nachdem, zu welchem Wert sich die Variable ändert, wird der Start/Stopp-Button freigeschaltet oder gesperrt. Wenn der Benutzer den Bereich verlässt, aber noch aufzeichnet, wird dadurch die Aufzeichnung automatisch gestoppt und gespeichert. \section{Funktionen der App} - Wie oben beschrieben besteht die Android-App aus vier Activities. Die Register- und Settings-Activity sind aus zeitlichen Gründen ohne Funktion und layouttechnisch nicht überarbeitet. Der Fokus lag stark auf der Main-Activity, das Kernstück der App darstellt. Im Folgenden die Funktionalitäten der Activities Login und Main. + Wie oben beschrieben, besteht die Android-App aus vier Activities. Die Register- und Settings-Activity sind aus zeitlichen Gründen ohne Funktion und layouttechnisch nicht überarbeitet. Der Fokus lag stark auf der Main-Activity, die das Kernstück der App darstellt. Im Folgenden die Funktionalitäten der Activities Login und Main. \subsection{Login Screen} - In der Abbildung \ref{Abb:login} ist der Login Screen zu sehen. Er besteht aus der Top-Action-Bar mit Logo und App-Name, den Eingabefeldern und zwei Buttons. Alle Komponenten sind aus der Material-Design-Bibliothek. \\ - Zum Einloggen werden die Daten in die jeweiligen Felder eingegeben. Wenn ein Feld markiert ist, wird das ausgewählte Feld blau umrandet und der Hinweis wird auf die obere Linie verschoben. Das Passwortfeld zeigt nur kurz den eingegebenen Buchstaben an und wird dann zu einem '*', sodass das Passwort nicht offen lesbar ist. \\ - Der Login-Button sendet die Daten an das Backend und prüft ob die Daten korrekt sind. Wenn dies der Fall ist, enthält die Antwort das Token, welches in den privaten Speicher abgelegt wird, und die App wechselt zum Hauptbildschirm. War der Login nicht erfolgreich, wird dem Benutzer eine Pop-Up-Meldung angezeigt und nichts weiter unternommen. Mit dem betätigen des Registrieren-Knopfes wird man auf die Register-Activity weitergeleitet. + In der Abbildung \ref{Abb:login} ist der Login Screen zu sehen. Er besteht aus der Top-Action-Bar mit Logo und App-Name, den Eingabefeldern und zwei Buttons. Alle Komponenten sind aus der Material-Design-Bibliothek. + + Zum Einloggen werden die Daten in die jeweiligen Felder eingegeben. Wenn ein Feld markiert ist, wird das ausgewählte Feld blau umrandet und der Hinweis wird auf die obere Linie verschoben. Das Passwortfeld zeigt nur kurz den eingegebenen Buchstaben an und wird dann zu einem '*', sodass das Passwort nicht offen lesbar ist. + + Der Login-Button sendet die Daten an das Backend und prüft, ob die Daten korrekt sind. Wenn dies der Fall ist, enthält die Antwort das Token, welches in den privaten Speicher abgelegt wird, und die App wechselt zum Hauptbildschirm. War der Login nicht erfolgreich, wird dem Benutzer eine Pop-Up-Meldung angezeigt und nichts weiter unternommen. Mit dem Betätigen des Registrieren-Knopfes wird man auf die Register-Activity weitergeleitet. \subsection{Main Activity}\label{subsec:main} Auf dem Hauptbildschirm erscheint in der Top-Action-Bar ein drei Punkte Menü (Kebab-Menü), von dem aus man zu den Einstellungen gelangen oder sich ausloggen kann. Beim Ausloggen wird die Datei mit dem Benutzer-Token gelöscht und die Login-Activity aufgerufen. @@ -187,17 +195,20 @@ context!!.getSharedPreferences("LOCATION", Context.MODE_PRIVATE) \caption{Menü auf dem Hauptbildschirm} \label{Abb:menu} \end{figure} - Direkt unter der Top-Action-Bar wird der Benutzer mit dem Vornamen begrüßt (Abb.: \ref{Abb:main}). \\ - In der Bedienfläche kann der Benutzer den Timetrack-Account auswählen und dessen Details ansehen, seine heutigen Arbeitszeiten ansehen und die Aufzeichnung starten oder stoppen. \\ - Die Auswahl des Accounts erfolgt über ein Dropdown-Menü. Bei Auswahl wird sofort die zugehörige Beschreibung und die Vergütung angezeigt. Wenn die Aufzeichnung am laufen ist, wird das Dropdown-Menü ausgeblendet. Das verhindert, dass der Benutzer eine Aktivität für einen andern Account stoppen kann als er sie gestartet hat. Ist für den Benutzer noch kein Account vorhanden, wird "None" im Menü angezeigt und die beiden Felder für Beschreibung und Vergütung werden ausgeblendet. \\ - Für die Anzeige der heutigen Arbeitszeiten haben wir eine RecyclerView verwendet. Das Layout dazu wird in einer extra XML-Datei definiert und mit Daten in einer Adapter-Klasse befüllt. Durch eine Backendabfrage bekommen wir die nötigen Daten dafür. Bei aktiver Aufzeichnung wir ein Element angezeigt mit der Startzeit und der Info, dass das Ende offen ist. + Direkt unter der Top-Action-Bar wird der Benutzer mit dem Vornamen begrüßt (Abb.: \ref{Abb:main}). + + In der Bedienfläche kann der Benutzer den Timetrack-Account auswählen und dessen Details ansehen, seine heutigen Arbeitszeiten ansehen und die Aufzeichnung starten oder stoppen. + + Die Auswahl des Accounts erfolgt über ein Dropdown-Menü. Bei Auswahl wird sofort die zugehörige Beschreibung und die Vergütung angezeigt. Wenn die Aufzeichnung am Laufen ist, wird das Dropdown-Menü ausgeblendet. Das verhindert, dass der Benutzer eine Aktivität für einen anderen Account stoppen kann, als für den, auf dem er sie gestartet hat. Ist für den Benutzer noch kein Account vorhanden, wird "None" im Menü angezeigt und die beiden Felder für Beschreibung und Vergütung werden ausgeblendet. + + Für die Anzeige der heutigen Arbeitszeiten haben wir eine RecyclerView verwendet. Das Layout dazu wird in einer extra XML-Datei definiert und mit Daten in einer Adapter-Klasse befüllt. Durch eine Backendabfrage bekommen wir die nötigen Daten dafür. Bei aktiver Aufzeichnung wird ein Element angezeigt mit der Startzeit und der Info, dass das Ende offen ist. \begin{figure}[H] \centering \includegraphics[width=0.4\linewidth]{img/android/main_recording} \caption{Laufende Aufzeichnung} \label{Abb:menu} \end{figure} - Der Start-Stop-Button schält die Aufzeichnung um, in dem ein Backend-Endpunkt angesprochen wird. In der App haben wir eine boolean-Variable \verb|running| definiert, welche gespeichert hält ob die Aufzeichnung aktiv ist. Anhand ihr wird entschieden wie der Start-Stop-Button aussieht und ob beim Verlassen des Geofence noch gestoppt werden muss. Der Button ist nicht Auswählbar wenn sich der Nutzer außerhalb seines Arbeitsplatzes befindet und zeigt dies auch an (Abb.: \ref{Abb:outside}). Ist der Nutzer dann im Bereich, wird "Start" angezeigt und der Button ist freigeschaltet. Während der Aufzeichnung trägt der Button die Schrift "Stop". Hat der Nutzer noch keine Geo-Daten für seinen Arbeitsplatz definiert, wird auch das auf dem Button angezeigt. + Der Start-Stop-Button schaltet die Aufzeichnung um, in dem ein Backend-Endpunkt angesprochen wird. In der App haben wir eine boolean-Variable \verb|running| definiert, welche speichert, ob die Aufzeichnung aktiv ist. Anhand ihr wird entschieden, wie der Start-Stop-Button aussieht und ob beim Verlassen des Geofence noch gestoppt werden muss. Der Button ist nicht auswählbar, wenn sich der Nutzer außerhalb seines Arbeitsplatzes befindet und zeigt dies auch an (Abb.: \ref{Abb:outside}). Ist der Nutzer dann im Bereich, wird "Start" angezeigt und der Button ist freigeschaltet. Während der Aufzeichnung trägt der Button die Schrift "Stop". Hat der Nutzer noch keine Geo-Daten für seinen Arbeitsplatz definiert, wird auch das auf dem Button angezeigt. \begin{figure}[H] \centering \includegraphics[width=0.4\linewidth]{img/android/btn_outside} @@ -219,7 +230,7 @@ context!!.getSharedPreferences("LOCATION", Context.MODE_PRIVATE) \includegraphics[width=0.4\linewidth]{img/android/btn_no_fence} \caption{Nutzer hat noch keinen Geo-Daten} \end{figure} - Um versehentliches stoppen der Aufzeichnung zu verhindern, muss der Nutzer in einem Pop-Up-Dialog seine Aktion bestätigen. + Um versehentliches Stoppen der Aufzeichnung zu verhindern, muss der Nutzer in einem Pop-Up-Dialog seine Aktion bestätigen. \begin{figure}[H] \centering \includegraphics[width=0.4\linewidth]{img/android/confirm_stop} @@ -228,15 +239,15 @@ context!!.getSharedPreferences("LOCATION", Context.MODE_PRIVATE) \end{figure} \section{Probleme und Lösungen}\label{sec:Probleme} - Damit die App auch die aktuellste Android Version unterstützt, mussten einige zusätzliche Punkte berücksichtigt werden. Neben der Berechtigung aus Kapitel \ref{subsec:geofence} musste in der \verb|build.gradle|-Datei Kompilierungsoptionen gesetzt werden. \\ + Damit die App auch die aktuellste Android Version unterstützt, mussten einige zusätzliche Punkte berücksichtigt werden. Neben der Berechtigung aus Kapitel \ref{subsec:geofence} mussten in der \verb|build.gradle|-Datei Kompilierungsoptionen gesetzt werden.\\ - Zu beginn wollten wir alle Activities mit Fragments realisieren, sodass es nur eine Activity gibt und alles weitere Fragments sind. Allerdings war es schwieriger zwischen den Fragments zu wechseln, als in den Tutorials beschrieben. Deshalb wurde mir von einem Teamkollegen empfohlen auf nur Activities umzusteigen. Zwischen diesen ist das hin- und herschalten deutlich einfacher, hat jedoch kein Zugriff auf Elemente der anderen Activities. \\ + Zu Beginn wollten wir alle Activities mit Fragments realisieren, sodass es nur eine Activity gibt und alles weitere Fragments sind. Allerdings war es schwieriger, zwischen den Fragments zu wechseln, als in den Tutorials beschrieben. Deshalb sind wir auf reine Activities umgestiegen. Zwischen diesen ist das Hin- und Herschalten deutlich einfacher, es besteht jedoch kein Zugriff auf Elemente der anderen Activities.\\ - Das wurde bemerkbar, als wir aus der Klasse \verb|GeofenceBroadcastReceiver| eine Methode der \\\verb|MainActivity| zur Änderung der Oberfläche aufrufen wollte. Das hat den Grund, dass Android nicht sicher sagen kann das diese Activity gerade auch aktiv ist. Deshalb haben wir den Weg über die Shared Preferences gewählt mit einem Listener in der \verb|MainActivity|. \\ + Das wurde aber erst dann problematisch, als wir aus der Klasse \verb|GeofenceBroadcastReceiver| eine Methode der \verb|MainActivity| zur Änderung der Oberfläche aufrufen wollten. Das hat den Grund, dass Android nicht sicher sagen kann, dass diese Activity gerade auch aktiv ist. Deshalb haben wir den Weg über die Shared-Preferences gewählt mit einem Listener in der \verb|MainActivity|.\\ - Initial wollten wir das Token in einer Datenklasse abspeichern, welche beim Einloggen befüllt wird. Dazu müsste allerdings das Objekt oder die Referenz zu jeder anderen Activity übergeben werden. Eine andere Möglichkeit stellen erneut die Shared Preferences dar. Wäre auch eine gute Lösung gewesen, welche wir aber dazu zu spät kennengelernt haben. Deshalb haben wir das Problem mit dem privaten Speicher gelöst. Er ist auch durch andere Apps und den Benutzer nicht einsehbar, bildet deshalb also keine Sicherheitslücke.\\ + Initial wollten wir das Token in einer Datenklasse abspeichern, welche beim Einloggen befüllt wird. Dazu müsste allerdings das Objekt oder die Referenz zu jeder anderen Activity übergeben werden. Eine andere Möglichkeit stellen erneut die Shared Preferences dar. Das wäre auch eine gute Lösung gewesen, welche wir aber zu spät entdeckt haben. Deshalb haben wir das Problem mit dem privaten Speicher gelöst. Er ist durch andere Apps und den Benutzer nicht einsehbar, bildet deshalb also kein Sicherheitsrisiko.\\ - Unerwartet war, dass die Geofence-Funktion die normale Android Positionsbestimmung zusätzlich benötigt. Denn zuerst, hatten wir die Positionsbestimmung implementiert und dann die Geofence-Funktion, was funktioniert hat. Da in der Geofence-Funktion kein Code der normalen Positionsbestimmung referenziert wurde, dachten wir, man könne diesen weglassen, was ein Trugschluss war. Auch der Versuch Teile der Positionsbestimmung wegzulassen war ohne Erfolg. Deshalb beinhaltet die App auch Code für die normale Positionsbestimmung. + Unerwartet war, dass die Geofence-Funktion die normale Android Positionsbestimmung zusätzlich benötigt. Denn zuerst hatten wir die Positionsbestimmung implementiert und dann die Geofence-Funktion, was funktioniert hat. Da in der Geofence-Funktion kein Code der normalen Positionsbestimmung referenziert wurde, dachten wir, man könne diesen weglassen, was ein Trugschluss war. Auch der Versuch, Teile der Positionsbestimmung wegzulassen, war ohne Erfolg. Deshalb beinhaltet die App auch Code für die normale Positionsbestimmung. \section{Deployment} Das Deployment spielte im Entwicklungsprozess der App keine große Rolle, da es Android-Studio benötigt um die App zu starten. Zum Abschluss haben wir allerdings den aktuellen Stand des Projekts in einer APK-Datei persistiert. Damit lässt sich die App auf andere Geräte installieren und in den App-Store laden. Zur Erstellung einer solchen APK muss ein Key zur Signatur angegeben werden. \ No newline at end of file