Skip to content

Commit

Permalink
Initial Open Source commit
Browse files Browse the repository at this point in the history
  • Loading branch information
vermali committed Mar 1, 2023
1 parent 1361910 commit 9134b34
Show file tree
Hide file tree
Showing 240 changed files with 38,803 additions and 47 deletions.
36 changes: 36 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Covers Maven specific
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
!/.mvn/wrapper/maven-wrapper.jar

# Covers Eclipse specific:
.settings/
.classpath
.project

# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
.idea
*.iml

# Covers Netbeans:
**/nbproject/private/
**/nbproject/Makefile-*.mk
**/nbproject/Package-*.bash
build/
nbbuild/
dist/
nbdist/
.nb-gradle/

/node_modules/
/build.cmd

# Sonstiges
$(pwd)
66 changes: 19 additions & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,64 +1,36 @@
## Customize this file after creating the new REPO and remove this lines.
What to adjust:
* Add the your project or repo name direct under the logo.
* Add a short and long desciption.
* Add links for your final repo to report a bug or request a feature.
* Add list of used technologies.
* If you have, add a roadmap or remove this section.
* Fill up the section for set up and documentation.
* Start in this file only with documentation and link to the docs folder.
* Add project shields. Use [shields.io](https://shields.io/)
# Frontend (Datenportal):

## ------- end to remove -------
<!-- add Project Logo, if existing -->
## About the project
Dieses Repository ist eine der 5 Komponenten der Anwendung "DAVe" (Datenbank und Auswertung für Verkehrszählungen).

# repo or project name
Bitte beachten Sie, dass diese Komponente nicht ohne das [dave-backend](https://github.com/it-at-m/dave-backend) betrieben werden kann!

*Add a description from your project here.*
Um einen genaueren Überblick über die verschiedenen Komponenten der Anwendung und deren Zusammenhänge zu bekommen, bitte die Dokumentation des [dave-backend](https://github.com/it-at-m/dave-backend) zu Hilfe nehmen.

Das Frontend (Datenportal) bietet einen lesenden Zugriff auf die Zählungen und ermöglicht mit Hilfe verschiedener Diagramme eine umfangreich Datenanalyse.

### Built With
Das Datenportal bietet einen lesenden Zugriff auf die Zählungen. Es kann nach Zählungen gesucht werden (auch auf einer Karte). Hat ein Nutzer eine Zählung, bzw. eine Zählstelle gefunden, so kann in dieser eine umfangreiche Datenanalyse betrieben werden. Es werden verschieden Diagramme angeboten, die bei bedarf auch als PDF-Report heruntergeladen werden können. Neue Zählungen oder Änderungen können über diese Portal nicht vorgenommen werden, dazu steht das Adminportal zur Verfügung.

The documentation project is built with technologies we use in our projects:

* *write here the list of used technologies*

## Roadmap

*if you have a ROADMAP for your project add this here*


See the [open issues](#) for a full list of proposed features (and known issues).


## Set up
*how can i start and fly this project*

## Documentation
*what insights do you have to tell*
## Built with
Java 11

## Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.

If you have a suggestion that would make this better, please open an issue with the tag "enhancement", fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!

1. Open an issue with the tag "enhancement"
2. Fork the Project
3. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
4. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
5. Push to the Branch (`git push origin feature/AmazingFeature`)
6. Open a Pull Request
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

More about this in the [CODE_OF_CONDUCT](/CODE_OF_CONDUCT.md) file.
If you have a suggestion that would make this better, please open an issue with the tag "enhancement", fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

Open an issue with the tag "enhancement"
Fork the Project
Create your Feature Branch (git checkout -b feature/AmazingFeature)
Commit your Changes (git commit -m 'Add some AmazingFeature')
Push to the Branch (git push origin feature/AmazingFeature)
Open a Pull Request

## License

Distributed under the MIT License. See [LICENSE](LICENSE) file for more information.


Distributed under the MIT License. See LICENSE for more information.
## Contact

it@M - [email protected]
it@m - [email protected]
32 changes: 32 additions & 0 deletions apigateway/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Covers Maven specific
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
!/.mvn/wrapper/maven-wrapper.jar

# Covers Eclipse specific:
.settings/
.classpath
.project

# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
.idea
*.iml

# Covers Netbeans:
**/nbproject/private/
**/nbproject/Makefile-*.mk
**/nbproject/Package-*.bash
build/
nbbuild/
dist/
nbdist/
.nb-gradle/


187 changes: 187 additions & 0 deletions apigateway/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>


<groupId>de.muenchen.dave.apigateway</groupId>
<artifactId>dave-frontend-apigateway</artifactId>
<version>1.17.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>dave_frontend_apigateway</name>


<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>11</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<maven.compiler.release>${java.version}</maven.compiler.release>
<spring.boot.version>2.7.8</spring.boot.version>
<spring.cloud.version>2021.0.5</spring.cloud.version>
<logstash.encoder.version>7.0.1</logstash.encoder.version>
<apache.commons.lang.version>3.12.0</apache.commons.lang.version>
<jvm.options>-Dorg.conscrypt.native.workdir=$(pwd)</jvm.options>
</properties>


<dependencyManagement>
<dependencies>
<dependency>
<!-- Import dependency management from Spring Boot -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring.boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<!-- Import dependency management from Spring Cloud -->
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring.cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>


<dependencies>

<!-- spring cloud gateway -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>

<!-- hateoas -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-hateoas</artifactId>
<exclusions>
<!-- Remove dependency due to usage of spring webflux -->
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</exclusion>
</exclusions>
</dependency>

<!-- actuator -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

<!-- security -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-oauth2-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.session</groupId>
<artifactId>spring-session-hazelcast</artifactId>
</dependency>
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast</artifactId>
</dependency>
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast-spring</artifactId>
</dependency>

<!-- Testing -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-contract-stub-runner</artifactId>
<scope>test</scope>
</dependency>

<!-- Spring developer tools -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>

<!-- External Libs -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${apache.commons.lang.version}</version>
</dependency>

<!-- Logging -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
<version>${logstash.encoder.version}</version>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

<!-- Frontend Lib -->
<dependency>
<groupId>de.muenchen.dave.frontend</groupId>
<version>1.17.0-SNAPSHOT</version>
<artifactId>dave-frontend-frontend</artifactId>
<scope>runtime</scope>
</dependency>

</dependencies>


<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<configuration>
<argLine>${jvm.options}</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring.boot.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>


</project>
1 change: 1 addition & 0 deletions apigateway/runLocal.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
mvn clean spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=local"
2 changes: 2 additions & 0 deletions apigateway/runLocal.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/bash
mvn clean spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=local"
1 change: 1 addition & 0 deletions apigateway/runLocalNoSecurity.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
mvn clean spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=local,no-security"
2 changes: 2 additions & 0 deletions apigateway/runLocalNoSecurity.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/bash
mvn clean spring-boot:run -Dspring-boot.run.jvmArguments="-Dspring.profiles.active=local,no-security"
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
/*
* Copyright (c): it@M - Dienstleister für Informations- und Telekommunikationstechnik
* der Landeshauptstadt München, 2023
*/
package de.muenchen.dave;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;


/**
* To do some base configuration for the non blocking client-server framework
* named Netty via properties use the properties listed in the link down below:
*
* @see <a href="https://projectreactor.io/docs/netty/release/api/constant-values.html">https://projectreactor.io/docs/netty/release/api/constant-values.html</a>
*
* As listed below, this above mentioned properties should be set before the application startup:
*
* <ul>
* <li>As command line argument: e.g. -Dreactor.netty.pool.maxConnections=1000.
* <li>As environmental property in Openshift: e.g. with key REACTOR_NETTY_POOL_MAXCONNECTIONS and value 1000.
* <li>As programatically set property before call {@link SpringApplication#run} in {@link ApiGatewayApplication#main}: e.g. <code>System.setProperty("reactor.netty.pool.maxConnections", "1000");</code>.
* </ul>
*
* To get more information about Spring Cloud Gateway visit the following link:
*
* @see <a href="https://cloud.spring.io/spring-cloud-gateway/reference/html/">https://cloud.spring.io/spring-cloud-gateway/reference/html/</a>
*/
@SpringBootApplication(
scanBasePackages = {"de.muenchen.dave"}
)
public class ApiGatewayApplication {

public static void main(String[] args) {
SpringApplication.run(ApiGatewayApplication.class, args);
}

}
Loading

0 comments on commit 9134b34

Please sign in to comment.