Initial commit for resilient-core
This commit is contained in:
commit
49fc4b2983
2169 changed files with 175785 additions and 0 deletions
25
.devcontainer/Dockerfile
Normal file
25
.devcontainer/Dockerfile
Normal file
|
@ -0,0 +1,25 @@
|
|||
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.209.6/containers/java/.devcontainer/base.Dockerfile
|
||||
|
||||
# [Choice] Java version (use -bullseye variants on local arm64/Apple Silicon): 17, 17-bullseye, 17-buster
|
||||
ARG VARIANT="17"
|
||||
FROM mcr.microsoft.com/vscode/devcontainers/java:0-${VARIANT}
|
||||
|
||||
# [Option] Install Maven
|
||||
ARG INSTALL_MAVEN="false"
|
||||
ARG MAVEN_VERSION=""
|
||||
# [Option] Install Gradle
|
||||
ARG INSTALL_GRADLE="false"
|
||||
ARG GRADLE_VERSION=""
|
||||
RUN if [ "${INSTALL_MAVEN}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install maven \"${MAVEN_VERSION}\""; fi \
|
||||
&& if [ "${INSTALL_GRADLE}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install gradle \"${GRADLE_VERSION}\""; fi
|
||||
|
||||
# [Choice] Node.js version: none, lts/*, 16, 14, 12, 10
|
||||
ARG NODE_VERSION="none"
|
||||
RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi
|
||||
|
||||
# [Optional] Uncomment this section to install additional OS packages.
|
||||
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
|
||||
# && apt-get -y install --no-install-recommends <your-package-list-here>
|
||||
|
||||
# [Optional] Uncomment this line to install global node packages.
|
||||
# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1
|
53
.devcontainer/devcontainer.json
Normal file
53
.devcontainer/devcontainer.json
Normal file
|
@ -0,0 +1,53 @@
|
|||
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
|
||||
// https://github.com/microsoft/vscode-dev-containers/tree/v0.209.6/containers/java
|
||||
{
|
||||
"name": "Resilient",
|
||||
"build": {
|
||||
"dockerfile": "Dockerfile",
|
||||
"args": {
|
||||
// Update the VARIANT arg to pick a Java version: 17, 19
|
||||
// Append -bullseye or -buster to pin to an OS version.
|
||||
// Use the -bullseye variants on local arm64/Apple Silicon.
|
||||
"VARIANT": "17-bullseye",
|
||||
// Options
|
||||
// maven and gradle wrappers are used by default, we don't need them installed globally
|
||||
// "INSTALL_MAVEN": "true",
|
||||
// "INSTALL_GRADLE": "false",
|
||||
"NODE_VERSION": "20.14.0"
|
||||
}
|
||||
},
|
||||
|
||||
"customizations": {
|
||||
"vscode": {
|
||||
// Set *default* container specific settings.json values on container create.
|
||||
"settings": {
|
||||
"java.jdt.ls.java.home": "/docker-java-home"
|
||||
},
|
||||
|
||||
// Add the IDs of extensions you want installed when the container is created.
|
||||
"extensions": [
|
||||
"angular.ng-template",
|
||||
"christian-kohler.npm-intellisense",
|
||||
"firsttris.vscode-jest-runner",
|
||||
"ms-vscode.vscode-typescript-tslint-plugin",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"vscjava.vscode-java-pack",
|
||||
"pivotal.vscode-boot-dev-pack",
|
||||
"esbenp.prettier-vscode"
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
||||
"forwardPorts": [4200, 3001, 9000, 8081],
|
||||
|
||||
// Use 'postCreateCommand' to run commands after the container is created.
|
||||
// "postCreateCommand": "java -version",
|
||||
|
||||
// Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
||||
"remoteUser": "vscode",
|
||||
"features": {
|
||||
"docker-in-docker": "latest",
|
||||
"docker-from-docker": "latest"
|
||||
}
|
||||
}
|
23
.editorconfig
Normal file
23
.editorconfig
Normal file
|
@ -0,0 +1,23 @@
|
|||
# EditorConfig helps developers define and maintain consistent
|
||||
# coding styles between different editors and IDEs
|
||||
# editorconfig.org
|
||||
|
||||
root = true
|
||||
|
||||
[*]
|
||||
|
||||
# We recommend you to keep these unchanged
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
# Change these settings to your own preference
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
|
||||
[*.{ts,tsx,js,jsx,json,css,scss,yml,html,vue}]
|
||||
indent_size = 2
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
10
.eslintignore
Normal file
10
.eslintignore
Normal file
|
@ -0,0 +1,10 @@
|
|||
node_modules/
|
||||
src/main/docker/
|
||||
jest.conf.js
|
||||
webpack/
|
||||
target/
|
||||
build/
|
||||
node/
|
||||
coverage/
|
||||
postcss.config.js
|
||||
target/classes/static/
|
99
.eslintrc.json
Normal file
99
.eslintrc.json
Normal file
|
@ -0,0 +1,99 @@
|
|||
{
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"plugins": ["@angular-eslint/eslint-plugin", "@typescript-eslint"],
|
||||
"extends": [
|
||||
"eslint:recommended",
|
||||
"plugin:@typescript-eslint/recommended",
|
||||
"plugin:@typescript-eslint/recommended-requiring-type-checking",
|
||||
"plugin:@angular-eslint/recommended",
|
||||
"prettier",
|
||||
"eslint-config-prettier"
|
||||
],
|
||||
"env": {
|
||||
"browser": true,
|
||||
"es6": true,
|
||||
"commonjs": true
|
||||
},
|
||||
"parserOptions": {
|
||||
"ecmaVersion": 2018,
|
||||
"sourceType": "module",
|
||||
"project": ["./tsconfig.app.json", "./tsconfig.spec.json"]
|
||||
},
|
||||
"rules": {
|
||||
"@angular-eslint/component-selector": [
|
||||
"error",
|
||||
{
|
||||
"type": "element",
|
||||
"prefix": "jhi",
|
||||
"style": "kebab-case"
|
||||
}
|
||||
],
|
||||
"@angular-eslint/directive-selector": [
|
||||
"error",
|
||||
{
|
||||
"type": "attribute",
|
||||
"prefix": "jhi",
|
||||
"style": "camelCase"
|
||||
}
|
||||
],
|
||||
"@angular-eslint/relative-url-prefix": "error",
|
||||
"@typescript-eslint/ban-types": [
|
||||
"error",
|
||||
{
|
||||
"extendDefaults": true,
|
||||
"types": {
|
||||
"{}": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"@typescript-eslint/explicit-function-return-type": ["error", { "allowExpressions": true }],
|
||||
"@typescript-eslint/explicit-module-boundary-types": "off",
|
||||
"@typescript-eslint/member-ordering": [
|
||||
"error",
|
||||
{
|
||||
"default": [
|
||||
"public-static-field",
|
||||
"protected-static-field",
|
||||
"private-static-field",
|
||||
"public-instance-field",
|
||||
"protected-instance-field",
|
||||
"private-instance-field",
|
||||
"constructor",
|
||||
"public-static-method",
|
||||
"protected-static-method",
|
||||
"private-static-method",
|
||||
"public-instance-method",
|
||||
"protected-instance-method",
|
||||
"private-instance-method"
|
||||
]
|
||||
}
|
||||
],
|
||||
"@typescript-eslint/no-explicit-any": "off",
|
||||
"@typescript-eslint/no-floating-promises": "off",
|
||||
"@typescript-eslint/no-non-null-assertion": "off",
|
||||
"@typescript-eslint/no-shadow": ["error"],
|
||||
"@typescript-eslint/no-unnecessary-condition": "error",
|
||||
"@typescript-eslint/no-unsafe-argument": "off",
|
||||
"@typescript-eslint/no-unsafe-assignment": "off",
|
||||
"@typescript-eslint/no-unsafe-call": "off",
|
||||
"@typescript-eslint/no-unsafe-member-access": "off",
|
||||
"@typescript-eslint/no-unused-vars": "off",
|
||||
"@typescript-eslint/prefer-nullish-coalescing": "error",
|
||||
"@typescript-eslint/prefer-optional-chain": "error",
|
||||
"@typescript-eslint/unbound-method": "off",
|
||||
"arrow-body-style": "error",
|
||||
"curly": "error",
|
||||
"eqeqeq": ["error", "always", { "null": "ignore" }],
|
||||
"guard-for-in": "error",
|
||||
"no-bitwise": "error",
|
||||
"no-caller": "error",
|
||||
"no-console": ["error", { "allow": ["warn", "error"] }],
|
||||
"no-eval": "error",
|
||||
"no-labels": "error",
|
||||
"no-new": "error",
|
||||
"no-new-wrappers": "error",
|
||||
"object-shorthand": ["error", "always", { "avoidExplicitReturnArrows": true }],
|
||||
"radix": "error",
|
||||
"spaced-comment": ["warn", "always"]
|
||||
}
|
||||
}
|
79
.forgejo/workflows/ci.yml
Normal file
79
.forgejo/workflows/ci.yml
Normal file
|
@ -0,0 +1,79 @@
|
|||
name: Build Resilient App [DISABLED]
|
||||
|
||||
# on:
|
||||
# push:
|
||||
# branches: [main, master, develop]
|
||||
# pull_request:
|
||||
# workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: [docker]
|
||||
|
||||
steps:
|
||||
# Install software dependencies into the runner container
|
||||
- name: Install system dependencies
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y nodejs npm openjdk-17-jdk maven git
|
||||
export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which javac))))
|
||||
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
|
||||
|
||||
- name: Check Java and Node versions
|
||||
run: |
|
||||
java -version
|
||||
mvn -v
|
||||
node -v
|
||||
npm -v
|
||||
|
||||
# Checkout (clone) a fresh repo source of the project
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Install @Angular dependencies
|
||||
- name: Install frontend dependencies
|
||||
run: |
|
||||
cd src/main/webapp
|
||||
npm ci
|
||||
|
||||
# Setup node_modules cache, for better performance
|
||||
- name: Cache node_modules
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
**/node_modules
|
||||
key: node-modules-${{ hashFiles('**/package-lock.json') }}
|
||||
restore-keys: |
|
||||
node-modules-
|
||||
|
||||
# Build the frontend
|
||||
- name: Build frontend
|
||||
run: |
|
||||
cd src/main/webapp
|
||||
npm run build
|
||||
|
||||
# Setup Maven cache, for better performance
|
||||
- name: Cache Maven dependencies
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/.m2/repository
|
||||
key: maven-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}
|
||||
restore-keys: |
|
||||
maven-${{ runner.os }}-
|
||||
|
||||
# Build the backend (JAR)
|
||||
- name: Build backend (Spring Boot)
|
||||
run: |
|
||||
mvn clean package -Pprod -DskipTests
|
||||
|
||||
# Log output
|
||||
- name: List output files
|
||||
run: |
|
||||
ls -lh target/*.jar || true
|
||||
|
||||
# save artifacts
|
||||
- name: Upload backend JAR
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: app-backend
|
||||
path: target/resilient*.jar
|
145
.forgejo/workflows/release.yml
Normal file
145
.forgejo/workflows/release.yml
Normal file
|
@ -0,0 +1,145 @@
|
|||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'release/**'
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: docker
|
||||
|
||||
steps:
|
||||
# Install software dependencies into the runner container
|
||||
- name: Install system dependencies
|
||||
run: |
|
||||
apt-get update
|
||||
apt-get install -y nodejs npm openjdk-17-jdk maven git
|
||||
export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which javac))))
|
||||
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
|
||||
|
||||
- name: Check Java and Node versions
|
||||
run: |
|
||||
java -version
|
||||
mvn -v
|
||||
node -v
|
||||
npm -v
|
||||
|
||||
# Checkout (clone) a fresh repo source of the project
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# ##################################################################
|
||||
# ## THIS IS A RELEASE ##
|
||||
# ## #1. Get full version string ##
|
||||
# ## #2. Remove sufix "-SNAPSHOT" from version string ##
|
||||
# ## And commit ##
|
||||
# ## #3. Tag the release ##
|
||||
# ## ##
|
||||
- name: Extract version from pom.xml
|
||||
id: version
|
||||
run: |
|
||||
VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
|
||||
RELEASE_VERSION="${VERSION/-SNAPSHOT/}"
|
||||
echo "release_version=$RELEASE_VERSION" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Set release version (remove -SNAPSHOT)
|
||||
run: |
|
||||
mvn versions:set -DnewVersion=${{ steps.version.outputs.release_version }}
|
||||
mvn versions:commit
|
||||
git config user.name "forgejo-actions"
|
||||
git config user.email "ci@forgejo.local"
|
||||
git commit -am "Release ${{ steps.version.outputs.release_version }}"
|
||||
git push
|
||||
|
||||
- name: Tag release
|
||||
run: |
|
||||
git tag -a v${{ steps.version.outputs.release_version }} -m "Release ${{ steps.version.outputs.release_version }}"
|
||||
git push origin v${{ steps.version.outputs.release_version }}
|
||||
# ## ##
|
||||
# ##################################################################
|
||||
|
||||
# Install @Angular dependencies
|
||||
- name: Install frontend dependencies
|
||||
run: |
|
||||
cd src/main/webapp
|
||||
npm ci
|
||||
|
||||
# Setup node_modules cache, for better performance
|
||||
- name: Cache node_modules
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
**/node_modules
|
||||
key: node-modules-${{ hashFiles('**/package-lock.json') }}
|
||||
restore-keys: |
|
||||
node-modules-
|
||||
|
||||
# Build the frontend
|
||||
- name: Build frontend
|
||||
run: |
|
||||
cd src/main/webapp
|
||||
npm run build
|
||||
|
||||
# Setup Maven cache, for better performance
|
||||
- name: Cache Maven dependencies
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ~/.m2/repository
|
||||
key: maven-${{ runner.os }}-${{ hashFiles('**/pom.xml') }}
|
||||
restore-keys: |
|
||||
maven-${{ runner.os }}-
|
||||
|
||||
# Build the backend (JAR)
|
||||
- name: Build backend (Spring Boot)
|
||||
run: |
|
||||
mvn clean package -Pprod -DskipTests
|
||||
|
||||
# Log output
|
||||
- name: List output files
|
||||
run: |
|
||||
ls -lh target/*.jar || true
|
||||
|
||||
# save artifacts
|
||||
- name: Upload backend JAR
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: app-backend
|
||||
path: target/resilient*.jar
|
||||
|
||||
# ##################################################################
|
||||
# ## THIS IS A RELEASE - Change master version to next SNAPSHOT ##
|
||||
# ## #4. Checkout master ##
|
||||
# ## #5. Calculate the new version string ##
|
||||
# ## Update pom.xml ##
|
||||
# ## Calculate the new version string ##
|
||||
- name: Checkout main
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
ref: master
|
||||
|
||||
- name: Bump to next SNAPSHOT version
|
||||
run: |
|
||||
# Extract the version from the ref, handling tags like v1.0.2 or branches like release/1.0.2
|
||||
RAW_REF="${GITHUB_REF##*/}" # gets 'v1.0.2' or '1.0.2'
|
||||
VERSION="${RAW_REF#v}" # strips leading 'v' if present → gives '1.0.2'
|
||||
|
||||
echo "Current version: $VERSION"
|
||||
|
||||
MAJOR=$(echo "$VERSION" | cut -d. -f1)
|
||||
MINOR=$(echo "$VERSION" | cut -d. -f2)
|
||||
PATCH=$(echo "$VERSION" | cut -d. -f3)
|
||||
NEXT_PATCH=$((PATCH + 1))
|
||||
NEXT_VERSION="$MAJOR.$MINOR.$NEXT_PATCH-SNAPSHOT"
|
||||
|
||||
echo "Next version: $NEXT_VERSION"
|
||||
|
||||
mvn versions:set -DnewVersion="$NEXT_VERSION"
|
||||
mvn versions:commit
|
||||
|
||||
git config user.name "forgejo-actions"
|
||||
git config user.email "ci@forgejo.local"
|
||||
git commit -am "Start next development cycle $NEXT_VERSION"
|
||||
git push origin master
|
||||
# ## ##
|
||||
# ##################################################################
|
44
.gitignore
vendored
Normal file
44
.gitignore
vendored
Normal file
|
@ -0,0 +1,44 @@
|
|||
# Logs
|
||||
*.log
|
||||
|
||||
# OS files
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# IDEs
|
||||
.idea/
|
||||
.vscode/
|
||||
*.iml
|
||||
.factorypath
|
||||
|
||||
# Build & dependencies (Java)
|
||||
target/
|
||||
|
||||
# Java cache
|
||||
.classpath
|
||||
.project
|
||||
.settings/
|
||||
.gradle/
|
||||
build/
|
||||
|
||||
# Angular
|
||||
node_modules/
|
||||
dist/
|
||||
.angular/
|
||||
.output/
|
||||
.env
|
||||
.env.*
|
||||
|
||||
# Angular cache
|
||||
.turbo/
|
||||
.npm/
|
||||
.cache/
|
||||
|
||||
# Docker
|
||||
*.pid
|
||||
docker-compose.override.yml
|
||||
|
||||
# Misc
|
||||
*.bak
|
||||
*.swp
|
||||
*.tmp
|
5
.husky/pre-commit
Normal file
5
.husky/pre-commit
Normal file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
. "$(dirname "$0")/_/husky.sh"
|
||||
|
||||
|
||||
"$(dirname "$0")/../npmw" exec --no-install lint-staged
|
3
.lintstagedrc.cjs
Normal file
3
.lintstagedrc.cjs
Normal file
|
@ -0,0 +1,3 @@
|
|||
module.exports = {
|
||||
'{,**/}*.{md,json,yml,html,cjs,mjs,js,ts,tsx,css,scss,java}': ['prettier --write'],
|
||||
};
|
1
.mvn/jvm.config
Normal file
1
.mvn/jvm.config
Normal file
|
@ -0,0 +1 @@
|
|||
|
BIN
.mvn/wrapper/maven-wrapper.jar
vendored
Normal file
BIN
.mvn/wrapper/maven-wrapper.jar
vendored
Normal file
Binary file not shown.
18
.mvn/wrapper/maven-wrapper.properties
vendored
Normal file
18
.mvn/wrapper/maven-wrapper.properties
vendored
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
wrapperVersion=3.3.2
|
||||
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.7/apache-maven-3.9.7-bin.zip
|
11
.prettierignore
Normal file
11
.prettierignore
Normal file
|
@ -0,0 +1,11 @@
|
|||
node_modules
|
||||
package-lock.json
|
||||
.git
|
||||
target/
|
||||
|
||||
# Generated by jhipster:maven
|
||||
target
|
||||
.mvn
|
||||
|
||||
# Generated by jhipster:client
|
||||
target/classes/static/
|
22
.prettierrc
Normal file
22
.prettierrc
Normal file
|
@ -0,0 +1,22 @@
|
|||
# Prettier configuration
|
||||
|
||||
printWidth: 140
|
||||
singleQuote: true
|
||||
tabWidth: 2
|
||||
useTabs: false
|
||||
|
||||
# js and ts rules:
|
||||
arrowParens: avoid
|
||||
|
||||
# jsx and tsx rules:
|
||||
bracketSameLine: false
|
||||
|
||||
plugins:
|
||||
- prettier-plugin-packagejson
|
||||
- prettier-plugin-java
|
||||
|
||||
# java rules:
|
||||
overrides:
|
||||
- files: "*.java"
|
||||
options:
|
||||
tabWidth: 4
|
43
.yo-rc.json
Normal file
43
.yo-rc.json
Normal file
|
@ -0,0 +1,43 @@
|
|||
{
|
||||
"generator-jhipster": {
|
||||
"applicationType": "monolith",
|
||||
"authenticationType": "session",
|
||||
"baseName": "resilient",
|
||||
"buildTool": "maven",
|
||||
"cacheProvider": "ehcache",
|
||||
"clientFramework": "angular",
|
||||
"devDatabaseType": "mysql",
|
||||
"devServerPort": 4200,
|
||||
"enableHibernateCache": true,
|
||||
"enableTranslation": true,
|
||||
"entities": [
|
||||
"OrganizationType",
|
||||
"Organization",
|
||||
"MetadataProperty",
|
||||
"MetadataValue",
|
||||
"UnitType",
|
||||
"Unit",
|
||||
"UnitConverter",
|
||||
"VariableScope",
|
||||
"VariableCategory",
|
||||
"Variable",
|
||||
"VariableUnits",
|
||||
"VariableClass",
|
||||
"Period",
|
||||
"PeriodVersion",
|
||||
"InputData",
|
||||
"InputDataUpload",
|
||||
"InputDataUploadLog",
|
||||
"OutputData"
|
||||
],
|
||||
"jhipsterVersion": "8.5.0",
|
||||
"languages": ["pt-pt", "en"],
|
||||
"lastLiquibaseTimestamp": 1728984607000,
|
||||
"nativeLanguage": "pt-pt",
|
||||
"packageFolder": "com/oguerreiro/resilient",
|
||||
"packageName": "com.oguerreiro.resilient",
|
||||
"prodDatabaseType": "mysql",
|
||||
"rememberMeKey": "6436150a69ff50bcf383fbb9d974e2e7bd5c4439beaeef76e87a042d920db55f1f161147c30e01db9fd82117e47db521be8f",
|
||||
"serverPort": "8081"
|
||||
}
|
||||
}
|
260
README.md
Normal file
260
README.md
Normal file
|
@ -0,0 +1,260 @@
|
|||
# resilient
|
||||
|
||||
This application was generated using JHipster 8.5.0, you can find documentation and help at [https://www.jhipster.tech/documentation-archive/v8.5.0](https://www.jhipster.tech/documentation-archive/v8.5.0).
|
||||
|
||||
## Project Structure
|
||||
|
||||
Node is required for generation and recommended for development. `package.json` is always generated for a better development experience with prettier, commit hooks, scripts and so on.
|
||||
|
||||
In the project root, JHipster generates configuration files for tools like git, prettier, eslint, husky, and others that are well known and you can find references in the web.
|
||||
|
||||
`/src/*` structure follows default Java structure.
|
||||
|
||||
- `.yo-rc.json` - Yeoman configuration file
|
||||
JHipster configuration is stored in this file at `generator-jhipster` key. You may find `generator-jhipster-*` for specific blueprints configuration.
|
||||
- `.yo-resolve` (optional) - Yeoman conflict resolver
|
||||
Allows to use a specific action when conflicts are found skipping prompts for files that matches a pattern. Each line should match `[pattern] [action]` with pattern been a [Minimatch](https://github.com/isaacs/minimatch#minimatch) pattern and action been one of skip (default if omitted) or force. Lines starting with `#` are considered comments and are ignored.
|
||||
- `.jhipster/*.json` - JHipster entity configuration files
|
||||
|
||||
- `npmw` - wrapper to use locally installed npm.
|
||||
JHipster installs Node and npm locally using the build tool by default. This wrapper makes sure npm is installed locally and uses it avoiding some differences different versions can cause. By using `./npmw` instead of the traditional `npm` you can configure a Node-less environment to develop or test your application.
|
||||
- `/src/main/docker` - Docker configurations for the application and services that the application depends on
|
||||
|
||||
## Development
|
||||
|
||||
Before you can build this project, you must install and configure the following dependencies on your machine:
|
||||
|
||||
1. [Node.js](https://nodejs.org/): We use Node to run a development web server and build the project.
|
||||
Depending on your system, you can install Node either from source or as a pre-packaged bundle.
|
||||
|
||||
After installing Node, you should be able to run the following command to install development tools.
|
||||
You will only need to run this command when dependencies change in [package.json](package.json).
|
||||
|
||||
```
|
||||
npm install
|
||||
```
|
||||
|
||||
We use npm scripts and [Angular CLI][] with [Webpack][] as our build system.
|
||||
|
||||
Run the following commands in two separate terminals to create a blissful development experience where your browser
|
||||
auto-refreshes when files change on your hard drive.
|
||||
|
||||
```
|
||||
./mvnw
|
||||
npm start
|
||||
```
|
||||
|
||||
Npm is also used to manage CSS and JavaScript dependencies used in this application. You can upgrade dependencies by
|
||||
specifying a newer version in [package.json](package.json). You can also run `npm update` and `npm install` to manage dependencies.
|
||||
Add the `help` flag on any command to see how you can use it. For example, `npm help update`.
|
||||
|
||||
The `npm run` command will list all of the scripts available to run for this project.
|
||||
|
||||
### PWA Support
|
||||
|
||||
JHipster ships with PWA (Progressive Web App) support, and it's turned off by default. One of the main components of a PWA is a service worker.
|
||||
|
||||
The service worker initialization code is disabled by default. To enable it, uncomment the following code in `src/main/webapp/app/app.config.ts`:
|
||||
|
||||
```typescript
|
||||
ServiceWorkerModule.register('ngsw-worker.js', { enabled: false }),
|
||||
```
|
||||
|
||||
### Managing dependencies
|
||||
|
||||
For example, to add [Leaflet][] library as a runtime dependency of your application, you would run following command:
|
||||
|
||||
```
|
||||
npm install --save --save-exact leaflet
|
||||
```
|
||||
|
||||
To benefit from TypeScript type definitions from [DefinitelyTyped][] repository in development, you would run following command:
|
||||
|
||||
```
|
||||
npm install --save-dev --save-exact @types/leaflet
|
||||
```
|
||||
|
||||
Then you would import the JS and CSS files specified in library's installation instructions so that [Webpack][] knows about them:
|
||||
Edit [src/main/webapp/app/app.config.ts](src/main/webapp/app/app.config.ts) file:
|
||||
|
||||
```
|
||||
import 'leaflet/dist/leaflet.js';
|
||||
```
|
||||
|
||||
Edit [src/main/webapp/content/scss/vendor.scss](src/main/webapp/content/scss/vendor.scss) file:
|
||||
|
||||
```
|
||||
@import 'leaflet/dist/leaflet.css';
|
||||
```
|
||||
|
||||
Note: There are still a few other things remaining to do for Leaflet that we won't detail here.
|
||||
|
||||
For further instructions on how to develop with JHipster, have a look at [Using JHipster in development][].
|
||||
|
||||
### Using Angular CLI
|
||||
|
||||
You can also use [Angular CLI][] to generate some custom client code.
|
||||
|
||||
For example, the following command:
|
||||
|
||||
```
|
||||
ng generate component my-component
|
||||
```
|
||||
|
||||
will generate few files:
|
||||
|
||||
```
|
||||
create src/main/webapp/app/my-component/my-component.component.html
|
||||
create src/main/webapp/app/my-component/my-component.component.ts
|
||||
update src/main/webapp/app/app.config.ts
|
||||
```
|
||||
|
||||
## Building for production
|
||||
|
||||
### Packaging as jar
|
||||
|
||||
To build the final jar and optimize the resilient application for production, run:
|
||||
|
||||
```
|
||||
./mvnw -Pprod clean verify
|
||||
```
|
||||
|
||||
This will concatenate and minify the client CSS and JavaScript files. It will also modify `index.html` so it references these new files.
|
||||
To ensure everything worked, run:
|
||||
|
||||
```
|
||||
java -jar target/*.jar
|
||||
```
|
||||
|
||||
Then navigate to [http://localhost:8081](http://localhost:8081) in your browser.
|
||||
|
||||
Refer to [Using JHipster in production][] for more details.
|
||||
|
||||
### Packaging as war
|
||||
|
||||
To package your application as a war in order to deploy it to an application server, run:
|
||||
|
||||
```
|
||||
./mvnw -Pprod,war clean verify
|
||||
```
|
||||
|
||||
### JHipster Control Center
|
||||
|
||||
JHipster Control Center can help you manage and control your application(s). You can start a local control center server (accessible on http://localhost:7419) with:
|
||||
|
||||
```
|
||||
docker compose -f src/main/docker/jhipster-control-center.yml up
|
||||
```
|
||||
|
||||
## Testing
|
||||
|
||||
### Spring Boot tests
|
||||
|
||||
To launch your application's tests, run:
|
||||
|
||||
```
|
||||
./mvnw verify
|
||||
```
|
||||
|
||||
### Client tests
|
||||
|
||||
Unit tests are run by [Jest][]. They're located in [src/test/javascript/](src/test/javascript/) and can be run with:
|
||||
|
||||
```
|
||||
npm test
|
||||
```
|
||||
|
||||
## Others
|
||||
|
||||
### Code quality using Sonar
|
||||
|
||||
Sonar is used to analyse code quality. You can start a local Sonar server (accessible on http://localhost:9001) with:
|
||||
|
||||
```
|
||||
docker compose -f src/main/docker/sonar.yml up -d
|
||||
```
|
||||
|
||||
Note: we have turned off forced authentication redirect for UI in [src/main/docker/sonar.yml](src/main/docker/sonar.yml) for out of the box experience while trying out SonarQube, for real use cases turn it back on.
|
||||
|
||||
You can run a Sonar analysis with using the [sonar-scanner](https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner) or by using the maven plugin.
|
||||
|
||||
Then, run a Sonar analysis:
|
||||
|
||||
```
|
||||
./mvnw -Pprod clean verify sonar:sonar -Dsonar.login=admin -Dsonar.password=admin
|
||||
```
|
||||
|
||||
If you need to re-run the Sonar phase, please be sure to specify at least the `initialize` phase since Sonar properties are loaded from the sonar-project.properties file.
|
||||
|
||||
```
|
||||
./mvnw initialize sonar:sonar -Dsonar.login=admin -Dsonar.password=admin
|
||||
```
|
||||
|
||||
Additionally, Instead of passing `sonar.password` and `sonar.login` as CLI arguments, these parameters can be configured from [sonar-project.properties](sonar-project.properties) as shown below:
|
||||
|
||||
```
|
||||
sonar.login=admin
|
||||
sonar.password=admin
|
||||
```
|
||||
|
||||
For more information, refer to the [Code quality page][].
|
||||
|
||||
### Using Docker to simplify development (optional)
|
||||
|
||||
You can use Docker to improve your JHipster development experience. A number of docker-compose configuration are available in the [src/main/docker](src/main/docker) folder to launch required third party services.
|
||||
|
||||
For example, to start a mysql database in a docker container, run:
|
||||
|
||||
```
|
||||
docker compose -f src/main/docker/mysql.yml up -d
|
||||
```
|
||||
|
||||
To stop it and remove the container, run:
|
||||
|
||||
```
|
||||
docker compose -f src/main/docker/mysql.yml down
|
||||
```
|
||||
|
||||
You can also fully dockerize your application and all the services that it depends on.
|
||||
To achieve this, first build a docker image of your app by running:
|
||||
|
||||
```
|
||||
npm run java:docker
|
||||
```
|
||||
|
||||
Or build a arm64 docker image when using an arm64 processor os like MacOS with M1 processor family running:
|
||||
|
||||
```
|
||||
npm run java:docker:arm64
|
||||
```
|
||||
|
||||
Then run:
|
||||
|
||||
```
|
||||
docker compose -f src/main/docker/app.yml up -d
|
||||
```
|
||||
|
||||
When running Docker Desktop on MacOS Big Sur or later, consider enabling experimental `Use the new Virtualization framework` for better processing performance ([disk access performance is worse](https://github.com/docker/roadmap/issues/7)).
|
||||
|
||||
For more information refer to [Using Docker and Docker-Compose][], this page also contains information on the docker-compose sub-generator (`jhipster docker-compose`), which is able to generate docker configurations for one or several JHipster applications.
|
||||
|
||||
## Continuous Integration (optional)
|
||||
|
||||
To configure CI for your project, run the ci-cd sub-generator (`jhipster ci-cd`), this will let you generate configuration files for a number of Continuous Integration systems. Consult the [Setting up Continuous Integration][] page for more information.
|
||||
|
||||
[JHipster Homepage and latest documentation]: https://www.jhipster.tech
|
||||
[JHipster 8.5.0 archive]: https://www.jhipster.tech/documentation-archive/v8.5.0
|
||||
[Using JHipster in development]: https://www.jhipster.tech/documentation-archive/v8.5.0/development/
|
||||
[Using Docker and Docker-Compose]: https://www.jhipster.tech/documentation-archive/v8.5.0/docker-compose
|
||||
[Using JHipster in production]: https://www.jhipster.tech/documentation-archive/v8.5.0/production/
|
||||
[Running tests page]: https://www.jhipster.tech/documentation-archive/v8.5.0/running-tests/
|
||||
[Code quality page]: https://www.jhipster.tech/documentation-archive/v8.5.0/code-quality/
|
||||
[Setting up Continuous Integration]: https://www.jhipster.tech/documentation-archive/v8.5.0/setting-up-ci/
|
||||
[Node.js]: https://nodejs.org/
|
||||
[NPM]: https://www.npmjs.com/
|
||||
[Webpack]: https://webpack.github.io/
|
||||
[BrowserSync]: https://www.browsersync.io/
|
||||
[Jest]: https://facebook.github.io/jest/
|
||||
[Leaflet]: https://leafletjs.com/
|
||||
[DefinitelyTyped]: https://definitelytyped.org/
|
||||
[Angular CLI]: https://cli.angular.io/
|
118
angular.json
Normal file
118
angular.json
Normal file
|
@ -0,0 +1,118 @@
|
|||
{
|
||||
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
|
||||
"version": 1,
|
||||
"newProjectRoot": "projects",
|
||||
"projects": {
|
||||
"resilient": {
|
||||
"projectType": "application",
|
||||
"schematics": {
|
||||
"@schematics/angular:component": {
|
||||
"style": "scss"
|
||||
},
|
||||
"@schematics/angular:application": {
|
||||
"strict": true
|
||||
}
|
||||
},
|
||||
"root": "",
|
||||
"sourceRoot": "src/main/webapp",
|
||||
"prefix": "jhi",
|
||||
"architect": {
|
||||
"build": {
|
||||
"builder": "@angular-builders/custom-webpack:browser",
|
||||
"options": {
|
||||
"customWebpackConfig": {
|
||||
"path": "./webpack/webpack.custom.js"
|
||||
},
|
||||
"outputPath": "target/classes/static/",
|
||||
"index": "src/main/webapp/index.html",
|
||||
"main": "src/main/webapp/main.ts",
|
||||
"polyfills": ["zone.js"],
|
||||
"tsConfig": "tsconfig.app.json",
|
||||
"inlineStyleLanguage": "scss",
|
||||
"assets": [
|
||||
"src/main/webapp/content",
|
||||
"src/main/webapp/favicon.ico",
|
||||
"src/main/webapp/favicon.png",
|
||||
"src/main/webapp/manifest.webapp",
|
||||
"src/main/webapp/robots.txt"
|
||||
],
|
||||
"styles": [
|
||||
"src/main/webapp/content/scss/vendor.scss",
|
||||
"src/main/webapp/content/scss/global.scss",
|
||||
"node_modules/@angular/material/prebuilt-themes/indigo-pink.css"
|
||||
],
|
||||
"scripts": [
|
||||
"src/main/webapp/content/tinymce/tinymce.min.js"
|
||||
]
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"optimization": true,
|
||||
"outputHashing": "all",
|
||||
"sourceMap": false,
|
||||
"namedChunks": false,
|
||||
"extractLicenses": true,
|
||||
"vendorChunk": false,
|
||||
"buildOptimizer": true,
|
||||
"serviceWorker": true,
|
||||
"ngswConfigPath": "ngsw-config.json",
|
||||
"budgets": [
|
||||
{
|
||||
"type": "initial",
|
||||
"maximumWarning": "500kb",
|
||||
"maximumError": "1mb"
|
||||
},
|
||||
{
|
||||
"type": "anyComponentStyle",
|
||||
"maximumWarning": "2kb",
|
||||
"maximumError": "4kb"
|
||||
}
|
||||
]
|
||||
},
|
||||
"development": {
|
||||
"buildOptimizer": false,
|
||||
"optimization": false,
|
||||
"vendorChunk": true,
|
||||
"extractLicenses": false,
|
||||
"sourceMap": true,
|
||||
"namedChunks": true
|
||||
}
|
||||
},
|
||||
"defaultConfiguration": "production"
|
||||
},
|
||||
"serve": {
|
||||
"builder": "@angular-builders/custom-webpack:dev-server",
|
||||
"options": {
|
||||
"buildTarget": "resilient:build:development",
|
||||
"host": "0.0.0.0",
|
||||
"port": 4200
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"buildTarget": "resilient:build:production"
|
||||
},
|
||||
"development": {
|
||||
"buildTarget": "resilient:build:development"
|
||||
}
|
||||
},
|
||||
"defaultConfiguration": "development"
|
||||
},
|
||||
"test": {
|
||||
"builder": "@angular-builders/jest:run",
|
||||
"options": {
|
||||
"configPath": "jest.conf.js",
|
||||
"tsConfig": "tsconfig.spec.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"cli": {
|
||||
"cache": {
|
||||
"enabled": true,
|
||||
"path": "./target/angular/",
|
||||
"environment": "all"
|
||||
},
|
||||
"packageManager": "npm"
|
||||
}
|
||||
}
|
110
angular.json.old
Normal file
110
angular.json.old
Normal file
|
@ -0,0 +1,110 @@
|
|||
{
|
||||
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
|
||||
"version": 1,
|
||||
"newProjectRoot": "projects",
|
||||
"projects": {
|
||||
"resilient": {
|
||||
"projectType": "application",
|
||||
"schematics": {
|
||||
"@schematics/angular:component": {
|
||||
"style": "scss"
|
||||
},
|
||||
"@schematics/angular:application": {
|
||||
"strict": true
|
||||
}
|
||||
},
|
||||
"root": "",
|
||||
"sourceRoot": "src/main/webapp",
|
||||
"prefix": "jhi",
|
||||
"architect": {
|
||||
"build": {
|
||||
"builder": "@angular-builders/custom-webpack:browser",
|
||||
"options": {
|
||||
"customWebpackConfig": {
|
||||
"path": "./webpack/webpack.custom.js"
|
||||
},
|
||||
"outputPath": "target/classes/static/",
|
||||
"index": "src/main/webapp/index.html",
|
||||
"main": "src/main/webapp/main.ts",
|
||||
"polyfills": ["zone.js"],
|
||||
"tsConfig": "tsconfig.app.json",
|
||||
"inlineStyleLanguage": "scss",
|
||||
"assets": [
|
||||
"src/main/webapp/content",
|
||||
"src/main/webapp/favicon.ico",
|
||||
"src/main/webapp/manifest.webapp",
|
||||
"src/main/webapp/robots.txt"
|
||||
],
|
||||
"styles": ["src/main/webapp/content/scss/vendor.scss", "src/main/webapp/content/scss/global.scss"],
|
||||
"scripts": []
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"optimization": true,
|
||||
"outputHashing": "all",
|
||||
"sourceMap": false,
|
||||
"namedChunks": false,
|
||||
"extractLicenses": true,
|
||||
"vendorChunk": false,
|
||||
"buildOptimizer": true,
|
||||
"serviceWorker": true,
|
||||
"ngswConfigPath": "ngsw-config.json",
|
||||
"budgets": [
|
||||
{
|
||||
"type": "initial",
|
||||
"maximumWarning": "500kb",
|
||||
"maximumError": "1mb"
|
||||
},
|
||||
{
|
||||
"type": "anyComponentStyle",
|
||||
"maximumWarning": "2kb",
|
||||
"maximumError": "4kb"
|
||||
}
|
||||
]
|
||||
},
|
||||
"development": {
|
||||
"buildOptimizer": false,
|
||||
"optimization": false,
|
||||
"vendorChunk": true,
|
||||
"extractLicenses": false,
|
||||
"sourceMap": true,
|
||||
"namedChunks": true
|
||||
}
|
||||
},
|
||||
"defaultConfiguration": "production"
|
||||
},
|
||||
"serve": {
|
||||
"builder": "@angular-builders/custom-webpack:dev-server",
|
||||
"options": {
|
||||
"buildTarget": "resilient:build:development",
|
||||
"port": 4200
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"buildTarget": "resilient:build:production"
|
||||
},
|
||||
"development": {
|
||||
"buildTarget": "resilient:build:development"
|
||||
}
|
||||
},
|
||||
"defaultConfiguration": "development"
|
||||
},
|
||||
"test": {
|
||||
"builder": "@angular-builders/jest:run",
|
||||
"options": {
|
||||
"configPath": "jest.conf.js",
|
||||
"tsConfig": "tsconfig.spec.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"cli": {
|
||||
"cache": {
|
||||
"enabled": true,
|
||||
"path": "./target/angular/",
|
||||
"environment": "all"
|
||||
},
|
||||
"packageManager": "npm"
|
||||
}
|
||||
}
|
20
checkstyle.xml
Normal file
20
checkstyle.xml
Normal file
|
@ -0,0 +1,20 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
||||
"https://checkstyle.org/dtds/configuration_1_3.dtd">
|
||||
<module name="Checker">
|
||||
|
||||
<!-- Configure checker to use UTF-8 encoding -->
|
||||
<property name="charset" value="UTF-8"/>
|
||||
<!-- Configure checker to run on files with these extensions -->
|
||||
<property name="fileExtensions" value=""/>
|
||||
<!-- For detailed checkstyle configuration, see https://github.com/spring-io/nohttp/tree/master/nohttp-checkstyle -->
|
||||
<module name="io.spring.nohttp.checkstyle.check.NoHttpCheck">
|
||||
<property name="allowlist" value="^\Qhttp://maven.apache.org/POM/4.0.0 ^\Qhttp://www.w3.org/2001/XMLSchema-instance"/>
|
||||
</module>
|
||||
<!-- Allow suppression with comments
|
||||
// CHECKSTYLE:OFF
|
||||
... ignored content ...
|
||||
// CHECKSTYLE:ON
|
||||
-->
|
||||
<module name="SuppressWithPlainTextCommentFilter"/>
|
||||
</module>
|
26
docs/README.md
Normal file
26
docs/README.md
Normal file
|
@ -0,0 +1,26 @@
|
|||
# 📦 Project Name
|
||||
|
||||
Brief description of your project and what it does.
|
||||
|
||||
---
|
||||
|
||||
## 🛠 Features
|
||||
|
||||
- Feature 1
|
||||
- Feature 2
|
||||
- Feature 3
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Getting Started
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Java 17+
|
||||
- Maven 3.6+
|
||||
- (Optional) Docker
|
||||
|
||||
### Build
|
||||
|
||||
```bash
|
||||
mvn clean install
|
35
docs/faqs/How to build a PROD jar.md
Normal file
35
docs/faqs/How to build a PROD jar.md
Normal file
|
@ -0,0 +1,35 @@
|
|||
## ❓ Frequently Asked Questions
|
||||
|
||||
### Q: How to build a PROD jar?
|
||||
|
||||
**A:** The steps for a production JAR are:
|
||||
|
||||
- Open a command line, as Administrator
|
||||
|
||||
- Build front-end (Angular)
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run build
|
||||
```
|
||||
|
||||
- OR:Build and package JAR
|
||||
|
||||
```bash
|
||||
mvnw -Pprod clean verify
|
||||
```
|
||||
|
||||
- OR:Build and package JAR WITHOUT tests
|
||||
|
||||
```bash
|
||||
mvnw -Pprod clean verify -DskipTests -Dmaven.test.skip=true
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**B:** The result is a JAR generated in : target/
|
||||
|
||||
**C:** Things to validate
|
||||
|
||||
- In target/classes a static/ must exist, after the "Build front-end (Angular)"
|
||||
- Check for BOOT-INF/classes/static dir in the generated JAR file
|
15
docs/faqs/How to make a release.md
Normal file
15
docs/faqs/How to make a release.md
Normal file
|
@ -0,0 +1,15 @@
|
|||
## ❓ Frequently Asked Questions
|
||||
|
||||
### Q: How to make a release?
|
||||
|
||||
**A:** To make a PROD release (not SNAPSHOT)
|
||||
|
||||
- Change the version in pom.xml (usually, remove the "-SNAPSHOT" suffix)
|
||||
- Build JAR (see "How to build a PROD jar")
|
||||
- Commit changes (the change to pom.xml)
|
||||
- Make a TAG in GIT
|
||||
- Change the version in pom.xml. Increment version and add "-SNAPSHOT" suffix
|
||||
- Commit changes
|
||||
|
||||
---
|
||||
|
39
docs/faqs/faq_template.md
Normal file
39
docs/faqs/faq_template.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
## ❓ Frequently Asked Questions
|
||||
|
||||
### Q: What does this project do?
|
||||
|
||||
**A:** This project is a [brief explanation] that helps you [achieve a goal] by [key functionality].
|
||||
|
||||
---
|
||||
|
||||
### Q: How do I build the project?
|
||||
|
||||
**A:** Use Maven:
|
||||
|
||||
```bash
|
||||
mvn clean install
|
||||
```
|
||||
|
||||
### Q: Bullets example
|
||||
|
||||
**A:** Unordered bullet:
|
||||
|
||||
- Main item
|
||||
- Sub item 1.1
|
||||
- Sub item 1.2
|
||||
- Second item
|
||||
- Sub item 2.1
|
||||
- Sub item 2.2
|
||||
|
||||
**A:** Ordered bullet:
|
||||
|
||||
- [ ] Write documentation
|
||||
- [x] Fix bug in login flow
|
||||
- [ ] Deploy to production
|
||||
|
||||
OR
|
||||
|
||||
1. First step
|
||||
2. Second step
|
||||
3. Third step
|
||||
|
404
ide/eclipse/formatter/oguerreiro_formatter_profile.xml
Normal file
404
ide/eclipse/formatter/oguerreiro_formatter_profile.xml
Normal file
|
@ -0,0 +1,404 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<profiles version="23">
|
||||
<profile kind="CodeFormatterProfile" name="@OGuerreiro Formatter Profile" version="23">
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_with_spaces" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_record_components" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_logical_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_shift_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_parameters" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_loops" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_switch_case_arrow_operator" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_enum_constant" value="49"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.text_block_indentation" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_module_statements" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_permitted_types" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_annotations" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_assertion_message_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines" value="2147483647"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_not_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_arguments" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_package" value="49"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_permitted_types_in_type_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.javadoc_do_not_separate_block_tags" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_tag_description" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_record_constructor" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_string_concatenation" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_shift_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_shift_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_additive_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case_after_arrow" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_relational_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_logical_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_switch_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_arrow" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="120"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_method_body_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_additive_operator" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_relational_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_parameter" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_relational_operator" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_arrows_in_switch_on_columns" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_additive_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.align_selector_in_method_invocation_on_expression_first_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_record_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_switch_case_with_arrow_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_colon" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_type" value="49"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_local_variable" value="49"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_additive_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_field" value="49"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_conditional_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.join_line_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_shift_operator" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_code_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_assignment_operator" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_switch_case_with_arrow" value="20"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_annotations_on_method" value="49"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assertion_message" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_logical_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_relational_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_logical_operator" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration" value="common_lines"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_permitted_types" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line" value="one_line_never"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="false"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block" value="0"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.wrap_before_string_concatenation" value="true"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="120"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
|
||||
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
|
||||
</profile>
|
||||
</profiles>
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
|
||||
<intAttribute key="M2_COLORS" value="0"/>
|
||||
<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>
|
||||
<stringAttribute key="M2_GOALS" value="spring-boot:run -Drun.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005""/>
|
||||
<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>
|
||||
<booleanAttribute key="M2_OFFLINE" value="false"/>
|
||||
<stringAttribute key="M2_PROFILES" value=""/>
|
||||
<listAttribute key="M2_PROPERTIES"/>
|
||||
<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
|
||||
<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
|
||||
<intAttribute key="M2_THREADS" value="1"/>
|
||||
<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>
|
||||
<stringAttribute key="M2_USER_SETTINGS" value=""/>
|
||||
<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.debug.core.ATTR_FORCE_SYSTEM_CONSOLE_ENCODING" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_ATTR_USE_ARGFILE" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${project_loc:resilient}"/>
|
||||
</launchConfiguration>
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
|
||||
<intAttribute key="M2_COLORS" value="0"/>
|
||||
<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>
|
||||
<stringAttribute key="M2_GOALS" value="spring-boot:run -Drun.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005""/>
|
||||
<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>
|
||||
<booleanAttribute key="M2_OFFLINE" value="false"/>
|
||||
<stringAttribute key="M2_PROFILES" value="dev,IDE"/>
|
||||
<listAttribute key="M2_PROPERTIES"/>
|
||||
<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
|
||||
<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
|
||||
<intAttribute key="M2_THREADS" value="1"/>
|
||||
<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>
|
||||
<stringAttribute key="M2_USER_SETTINGS" value=""/>
|
||||
<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.debug.core.ATTR_FORCE_SYSTEM_CONSOLE_ENCODING" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_ATTR_USE_ARGFILE" value="false"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_SHOW_CODEDETAILS_IN_EXCEPTION_MESSAGES" value="true"/>
|
||||
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
|
||||
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${project_loc:resilient}"/>
|
||||
</launchConfiguration>
|
29
jest.conf.js
Normal file
29
jest.conf.js
Normal file
|
@ -0,0 +1,29 @@
|
|||
const { pathsToModuleNameMapper } = require('ts-jest');
|
||||
|
||||
const {
|
||||
compilerOptions: { paths = {}, baseUrl = './' },
|
||||
} = require('./tsconfig.json');
|
||||
const environment = require('./webpack/environment');
|
||||
|
||||
module.exports = {
|
||||
transformIgnorePatterns: ['node_modules/(?!.*\\.mjs$|dayjs/esm)'],
|
||||
resolver: 'jest-preset-angular/build/resolvers/ng-jest-resolver.js',
|
||||
globals: {
|
||||
...environment,
|
||||
},
|
||||
roots: ['<rootDir>', `<rootDir>/${baseUrl}`],
|
||||
modulePaths: [`<rootDir>/${baseUrl}`],
|
||||
setupFiles: ['jest-date-mock'],
|
||||
cacheDirectory: '<rootDir>/target/jest-cache',
|
||||
coverageDirectory: '<rootDir>/target/test-results/',
|
||||
moduleNameMapper: pathsToModuleNameMapper(paths, { prefix: `<rootDir>/${baseUrl}/` }),
|
||||
reporters: [
|
||||
'default',
|
||||
['jest-junit', { outputDirectory: '<rootDir>/target/test-results/', outputName: 'TESTS-results-jest.xml' }],
|
||||
['jest-sonar', { outputDirectory: './target/test-results/jest', outputName: 'TESTS-results-sonar.xml' }],
|
||||
],
|
||||
testMatch: ['<rootDir>/src/main/webapp/app/**/@(*.)@(spec.ts)'],
|
||||
testEnvironmentOptions: {
|
||||
url: 'https://jhipster.tech',
|
||||
},
|
||||
};
|
250
mvnw
vendored
Normal file
250
mvnw
vendored
Normal file
|
@ -0,0 +1,250 @@
|
|||
#!/bin/sh
|
||||
# ----------------------------------------------------------------------------
|
||||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you under the Apache License, Version 2.0 (the
|
||||
# "License"); you may not use this file except in compliance
|
||||
# with the License. You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing,
|
||||
# software distributed under the License is distributed on an
|
||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the
|
||||
# specific language governing permissions and limitations
|
||||
# under the License.
|
||||
# ----------------------------------------------------------------------------
|
||||
|
||||
# ----------------------------------------------------------------------------
|
||||
# Apache Maven Wrapper startup batch script, version 3.3.1
|
||||
#
|
||||
# Optional ENV vars
|
||||
# -----------------
|
||||
# JAVA_HOME - location of a JDK home dir, required when download maven via java source
|
||||
# MVNW_REPOURL - repo url base for downloading maven distribution
|
||||
# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven
|
||||
# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output
|
||||
# ----------------------------------------------------------------------------
|
||||
|
||||
set -euf
|
||||
[ "${MVNW_VERBOSE-}" != debug ] || set -x
|
||||
|
||||
# OS specific support.
|
||||
native_path() { printf %s\\n "$1"; }
|
||||
case "$(uname)" in
|
||||
CYGWIN* | MINGW*)
|
||||
[ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")"
|
||||
native_path() { cygpath --path --windows "$1"; }
|
||||
;;
|
||||
esac
|
||||
|
||||
# set JAVACMD and JAVACCMD
|
||||
set_java_home() {
|
||||
# For Cygwin and MinGW, ensure paths are in Unix format before anything is touched
|
||||
if [ -n "${JAVA_HOME-}" ]; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ]; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
JAVACCMD="$JAVA_HOME/jre/sh/javac"
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
JAVACCMD="$JAVA_HOME/bin/javac"
|
||||
|
||||
if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then
|
||||
echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2
|
||||
echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
else
|
||||
JAVACMD="$(
|
||||
'set' +e
|
||||
'unset' -f command 2>/dev/null
|
||||
'command' -v java
|
||||
)" || :
|
||||
JAVACCMD="$(
|
||||
'set' +e
|
||||
'unset' -f command 2>/dev/null
|
||||
'command' -v javac
|
||||
)" || :
|
||||
|
||||
if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then
|
||||
echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# hash string like Java String::hashCode
|
||||
hash_string() {
|
||||
str="${1:-}" h=0
|
||||
while [ -n "$str" ]; do
|
||||
char="${str%"${str#?}"}"
|
||||
h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296))
|
||||
str="${str#?}"
|
||||
done
|
||||
printf %x\\n $h
|
||||
}
|
||||
|
||||
verbose() { :; }
|
||||
[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; }
|
||||
|
||||
die() {
|
||||
printf %s\\n "$1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties
|
||||
while IFS="=" read -r key value; do
|
||||
case "${key-}" in
|
||||
distributionUrl) distributionUrl="${value-}" ;;
|
||||
distributionSha256Sum) distributionSha256Sum="${value-}" ;;
|
||||
esac
|
||||
done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties"
|
||||
[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties"
|
||||
|
||||
case "${distributionUrl##*/}" in
|
||||
maven-mvnd-*bin.*)
|
||||
MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/
|
||||
case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in
|
||||
*AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;;
|
||||
:Darwin*x86_64) distributionPlatform=darwin-amd64 ;;
|
||||
:Darwin*arm64) distributionPlatform=darwin-aarch64 ;;
|
||||
:Linux*x86_64*) distributionPlatform=linux-amd64 ;;
|
||||
*)
|
||||
echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2
|
||||
distributionPlatform=linux-amd64
|
||||
;;
|
||||
esac
|
||||
distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip"
|
||||
;;
|
||||
maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;;
|
||||
*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;;
|
||||
esac
|
||||
|
||||
# apply MVNW_REPOURL and calculate MAVEN_HOME
|
||||
# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-<version>,maven-mvnd-<version>-<platform>}/<hash>
|
||||
[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}"
|
||||
distributionUrlName="${distributionUrl##*/}"
|
||||
distributionUrlNameMain="${distributionUrlName%.*}"
|
||||
distributionUrlNameMain="${distributionUrlNameMain%-bin}"
|
||||
MAVEN_HOME="$HOME/.m2/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")"
|
||||
|
||||
exec_maven() {
|
||||
unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || :
|
||||
exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD"
|
||||
}
|
||||
|
||||
if [ -d "$MAVEN_HOME" ]; then
|
||||
verbose "found existing MAVEN_HOME at $MAVEN_HOME"
|
||||
exec_maven "$@"
|
||||
fi
|
||||
|
||||
case "${distributionUrl-}" in
|
||||
*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;;
|
||||
*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;;
|
||||
esac
|
||||
|
||||
# prepare tmp dir
|
||||
if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then
|
||||
clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; }
|
||||
trap clean HUP INT TERM EXIT
|
||||
else
|
||||
die "cannot create temp dir"
|
||||
fi
|
||||
|
||||
mkdir -p -- "${MAVEN_HOME%/*}"
|
||||
|
||||
# Download and Install Apache Maven
|
||||
verbose "Couldn't find MAVEN_HOME, downloading and installing it ..."
|
||||
verbose "Downloading from: $distributionUrl"
|
||||
verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName"
|
||||
|
||||
# select .zip or .tar.gz
|
||||
if ! command -v unzip >/dev/null; then
|
||||
distributionUrl="${distributionUrl%.zip}.tar.gz"
|
||||
distributionUrlName="${distributionUrl##*/}"
|
||||
fi
|
||||
|
||||
# verbose opt
|
||||
__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR=''
|
||||
[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v
|
||||
|
||||
# normalize http auth
|
||||
case "${MVNW_PASSWORD:+has-password}" in
|
||||
'') MVNW_USERNAME='' MVNW_PASSWORD='' ;;
|
||||
has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;;
|
||||
esac
|
||||
|
||||
if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then
|
||||
verbose "Found wget ... using wget"
|
||||
wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl"
|
||||
elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then
|
||||
verbose "Found curl ... using curl"
|
||||
curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl"
|
||||
elif set_java_home; then
|
||||
verbose "Falling back to use Java to download"
|
||||
javaSource="$TMP_DOWNLOAD_DIR/Downloader.java"
|
||||
targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName"
|
||||
cat >"$javaSource" <<-END
|
||||
public class Downloader extends java.net.Authenticator
|
||||
{
|
||||
protected java.net.PasswordAuthentication getPasswordAuthentication()
|
||||
{
|
||||
return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() );
|
||||
}
|
||||
public static void main( String[] args ) throws Exception
|
||||
{
|
||||
setDefault( new Downloader() );
|
||||
java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() );
|
||||
}
|
||||
}
|
||||
END
|
||||
# For Cygwin/MinGW, switch paths to Windows format before running javac and java
|
||||
verbose " - Compiling Downloader.java ..."
|
||||
"$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java"
|
||||
verbose " - Running Downloader.java ..."
|
||||
"$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")"
|
||||
fi
|
||||
|
||||
# If specified, validate the SHA-256 sum of the Maven distribution zip file
|
||||
if [ -n "${distributionSha256Sum-}" ]; then
|
||||
distributionSha256Result=false
|
||||
if [ "$MVN_CMD" = mvnd.sh ]; then
|
||||
echo "Checksum validation is not supported for maven-mvnd." >&2
|
||||
echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2
|
||||
exit 1
|
||||
elif command -v sha256sum >/dev/null; then
|
||||
if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then
|
||||
distributionSha256Result=true
|
||||
fi
|
||||
elif command -v shasum >/dev/null; then
|
||||
if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then
|
||||
distributionSha256Result=true
|
||||
fi
|
||||
else
|
||||
echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2
|
||||
echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2
|
||||
exit 1
|
||||
fi
|
||||
if [ $distributionSha256Result = false ]; then
|
||||
echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2
|
||||
echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# unzip and move
|
||||
if command -v unzip >/dev/null; then
|
||||
unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip"
|
||||
else
|
||||
tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar"
|
||||
fi
|
||||
printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url"
|
||||
mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME"
|
||||
|
||||
clean || :
|
||||
exec_maven "$@"
|
146
mvnw.cmd
vendored
Normal file
146
mvnw.cmd
vendored
Normal file
|
@ -0,0 +1,146 @@
|
|||
<# : batch portion
|
||||
@REM ----------------------------------------------------------------------------
|
||||
@REM Licensed to the Apache Software Foundation (ASF) under one
|
||||
@REM or more contributor license agreements. See the NOTICE file
|
||||
@REM distributed with this work for additional information
|
||||
@REM regarding copyright ownership. The ASF licenses this file
|
||||
@REM to you under the Apache License, Version 2.0 (the
|
||||
@REM "License"); you may not use this file except in compliance
|
||||
@REM with the License. You may obtain a copy of the License at
|
||||
@REM
|
||||
@REM http://www.apache.org/licenses/LICENSE-2.0
|
||||
@REM
|
||||
@REM Unless required by applicable law or agreed to in writing,
|
||||
@REM software distributed under the License is distributed on an
|
||||
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
@REM KIND, either express or implied. See the License for the
|
||||
@REM specific language governing permissions and limitations
|
||||
@REM under the License.
|
||||
@REM ----------------------------------------------------------------------------
|
||||
|
||||
@REM ----------------------------------------------------------------------------
|
||||
@REM Apache Maven Wrapper startup batch script, version 3.3.1
|
||||
@REM
|
||||
@REM Optional ENV vars
|
||||
@REM MVNW_REPOURL - repo url base for downloading maven distribution
|
||||
@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven
|
||||
@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output
|
||||
@REM ----------------------------------------------------------------------------
|
||||
|
||||
@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0)
|
||||
@SET __MVNW_CMD__=
|
||||
@SET __MVNW_ERROR__=
|
||||
@SET __MVNW_PSMODULEP_SAVE=%PSModulePath%
|
||||
@SET PSModulePath=
|
||||
@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @(
|
||||
IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B)
|
||||
)
|
||||
@SET PSModulePath=%__MVNW_PSMODULEP_SAVE%
|
||||
@SET __MVNW_PSMODULEP_SAVE=
|
||||
@SET __MVNW_ARG0_NAME__=
|
||||
@SET MVNW_USERNAME=
|
||||
@SET MVNW_PASSWORD=
|
||||
@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*)
|
||||
@echo Cannot start maven from wrapper >&2 && exit /b 1
|
||||
@GOTO :EOF
|
||||
: end batch / begin powershell #>
|
||||
|
||||
$ErrorActionPreference = "Stop"
|
||||
if ($env:MVNW_VERBOSE -eq "true") {
|
||||
$VerbosePreference = "Continue"
|
||||
}
|
||||
|
||||
# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties
|
||||
$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl
|
||||
if (!$distributionUrl) {
|
||||
Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties"
|
||||
}
|
||||
|
||||
switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) {
|
||||
"maven-mvnd-*" {
|
||||
$USE_MVND = $true
|
||||
$distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip"
|
||||
$MVN_CMD = "mvnd.cmd"
|
||||
break
|
||||
}
|
||||
default {
|
||||
$USE_MVND = $false
|
||||
$MVN_CMD = $script -replace '^mvnw','mvn'
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
# apply MVNW_REPOURL and calculate MAVEN_HOME
|
||||
# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-<version>,maven-mvnd-<version>-<platform>}/<hash>
|
||||
if ($env:MVNW_REPOURL) {
|
||||
$MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" }
|
||||
$distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')"
|
||||
}
|
||||
$distributionUrlName = $distributionUrl -replace '^.*/',''
|
||||
$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$',''
|
||||
$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain"
|
||||
$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join ''
|
||||
$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME"
|
||||
|
||||
if (Test-Path -Path "$MAVEN_HOME" -PathType Container) {
|
||||
Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME"
|
||||
Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD"
|
||||
exit $?
|
||||
}
|
||||
|
||||
if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) {
|
||||
Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl"
|
||||
}
|
||||
|
||||
# prepare tmp dir
|
||||
$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile
|
||||
$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir"
|
||||
$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null
|
||||
trap {
|
||||
if ($TMP_DOWNLOAD_DIR.Exists) {
|
||||
try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null }
|
||||
catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" }
|
||||
}
|
||||
}
|
||||
|
||||
New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null
|
||||
|
||||
# Download and Install Apache Maven
|
||||
Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..."
|
||||
Write-Verbose "Downloading from: $distributionUrl"
|
||||
Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName"
|
||||
|
||||
$webclient = New-Object System.Net.WebClient
|
||||
if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) {
|
||||
$webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD)
|
||||
}
|
||||
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
|
||||
$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null
|
||||
|
||||
# If specified, validate the SHA-256 sum of the Maven distribution zip file
|
||||
$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum
|
||||
if ($distributionSha256Sum) {
|
||||
if ($USE_MVND) {
|
||||
Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties."
|
||||
}
|
||||
Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash
|
||||
if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) {
|
||||
Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property."
|
||||
}
|
||||
}
|
||||
|
||||
# unzip and move
|
||||
Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null
|
||||
Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null
|
||||
try {
|
||||
Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null
|
||||
} catch {
|
||||
if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) {
|
||||
Write-Error "fail to move MAVEN_HOME"
|
||||
}
|
||||
} finally {
|
||||
try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null }
|
||||
catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" }
|
||||
}
|
||||
|
||||
Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD"
|
21
ngsw-config.json
Normal file
21
ngsw-config.json
Normal file
|
@ -0,0 +1,21 @@
|
|||
{
|
||||
"$schema": "./node_modules/@angular/service-worker/config/schema.json",
|
||||
"index": "/index.html",
|
||||
"assetGroups": [
|
||||
{
|
||||
"name": "app",
|
||||
"installMode": "prefetch",
|
||||
"resources": {
|
||||
"files": ["/favicon.ico", "/index.html", "/manifest.webapp", "/*.css", "/*.js"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "assets",
|
||||
"installMode": "lazy",
|
||||
"updateMode": "prefetch",
|
||||
"resources": {
|
||||
"files": ["/content/**", "/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
42
npmw
Normal file
42
npmw
Normal file
|
@ -0,0 +1,42 @@
|
|||
#!/bin/sh
|
||||
|
||||
basedir=`dirname "$0"`
|
||||
|
||||
if [ -f "$basedir/mvnw" ]; then
|
||||
bindir="$basedir/target/node"
|
||||
repodir="$basedir/target/node/node_modules"
|
||||
installCommand="$basedir/mvnw --batch-mode -ntp -Pwebapp frontend:install-node-and-npm@install-node-and-npm"
|
||||
|
||||
PATH="$basedir/$builddir/:$PATH"
|
||||
NPM_EXE="$basedir/$builddir/node_modules/npm/bin/npm-cli.js"
|
||||
NODE_EXE="$basedir/$builddir/node"
|
||||
elif [ -f "$basedir/gradlew" ]; then
|
||||
bindir="$basedir/build/node/bin"
|
||||
repodir="$basedir/build/node/lib/node_modules"
|
||||
installCommand="$basedir/gradlew npmSetup"
|
||||
else
|
||||
echo "Using npm installed globally"
|
||||
exec npm "$@"
|
||||
fi
|
||||
|
||||
NPM_EXE="$repodir/npm/bin/npm-cli.js"
|
||||
NODE_EXE="$bindir/node"
|
||||
|
||||
if [ ! -x "$NPM_EXE" ] || [ ! -x "$NODE_EXE" ]; then
|
||||
$installCommand || true
|
||||
fi
|
||||
|
||||
if [ -x "$NODE_EXE" ]; then
|
||||
echo "Using node installed locally $($NODE_EXE --version)"
|
||||
PATH="$bindir:$PATH"
|
||||
else
|
||||
NODE_EXE='node'
|
||||
fi
|
||||
|
||||
if [ ! -x "$NPM_EXE" ]; then
|
||||
echo "Local npm not found, using npm installed globally"
|
||||
npm "$@"
|
||||
else
|
||||
echo "Using npm installed locally $($NODE_EXE $NPM_EXE --version)"
|
||||
$NODE_EXE $NPM_EXE "$@"
|
||||
fi
|
31
npmw.cmd
Normal file
31
npmw.cmd
Normal file
|
@ -0,0 +1,31 @@
|
|||
@echo off
|
||||
|
||||
setlocal
|
||||
|
||||
set NPMW_DIR=%~dp0
|
||||
|
||||
if exist "%NPMW_DIR%mvnw.cmd" (
|
||||
set NODE_EXE=^"^"
|
||||
set NODE_PATH=%NPMW_DIR%target\node\
|
||||
set NPM_EXE=^"%NPMW_DIR%target\node\npm.cmd^"
|
||||
set INSTALL_NPM_COMMAND=^"%NPMW_DIR%mvnw.cmd^" -Pwebapp frontend:install-node-and-npm@install-node-and-npm
|
||||
) else (
|
||||
set NODE_EXE=^"%NPMW_DIR%build\node\bin\node.exe^"
|
||||
set NODE_PATH=%NPMW_DIR%build\node\bin\
|
||||
set NPM_EXE=^"%NPMW_DIR%build\node\lib\node_modules\npm\bin\npm-cli.js^"
|
||||
set INSTALL_NPM_COMMAND=^"%NPMW_DIR%gradlew.bat^" npmSetup
|
||||
)
|
||||
|
||||
if not exist %NPM_EXE% (
|
||||
call %INSTALL_NPM_COMMAND%
|
||||
)
|
||||
|
||||
if exist %NODE_EXE% (
|
||||
Rem execute local npm with local node, whilst adding local node location to the PATH for this CMD session
|
||||
endlocal & echo "%PATH%"|find /i "%NODE_PATH%;">nul || set "PATH=%NODE_PATH%;%PATH%" & call %NODE_EXE% %NPM_EXE% %*
|
||||
) else if exist %NPM_EXE% (
|
||||
Rem execute local npm, whilst adding local npm location to the PATH for this CMD session
|
||||
endlocal & echo "%PATH%"|find /i "%NODE_PATH%;">nul || set "PATH=%NODE_PATH%;%PATH%" & call %NPM_EXE% %*
|
||||
) else (
|
||||
call npm %*
|
||||
)
|
28152
package-lock.json
generated
Normal file
28152
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
162
package.json
Normal file
162
package.json
Normal file
|
@ -0,0 +1,162 @@
|
|||
{
|
||||
"name": "resilient",
|
||||
"version": "0.0.1-SNAPSHOT",
|
||||
"private": true,
|
||||
"description": "Description for Resilient",
|
||||
"license": "UNLICENSED",
|
||||
"scripts": {
|
||||
"app:start": "./mvnw",
|
||||
"app:up": "docker compose -f src/main/docker/app.yml up --wait",
|
||||
"backend:build-cache": "./mvnw dependency:go-offline -ntp",
|
||||
"backend:debug": "./mvnw -Dspring-boot.run.jvmArguments=\"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000\"",
|
||||
"backend:doc:test": "./mvnw -ntp javadoc:javadoc --batch-mode",
|
||||
"backend:info": "./mvnw --version",
|
||||
"backend:nohttp:test": "./mvnw -ntp checkstyle:check --batch-mode",
|
||||
"backend:start": "./mvnw -Dskip.installnodenpm -Dskip.npm",
|
||||
"backend:unit:test": "./mvnw -ntp -Dskip.installnodenpm -Dskip.npm verify --batch-mode -Dlogging.level.ROOT=OFF -Dlogging.level.tech.jhipster=OFF -Dlogging.level.com.oguerreiro.resilient=OFF -Dlogging.level.org.springframework=OFF -Dlogging.level.org.springframework.web=OFF -Dlogging.level.org.springframework.security=OFF",
|
||||
"build": "npm run webapp:prod --",
|
||||
"build-watch": "concurrently 'npm run webapp:build:dev -- --watch' npm:backend:start",
|
||||
"ci:backend:test": "npm run backend:info && npm run backend:doc:test && npm run backend:nohttp:test && npm run backend:unit:test -- -P$npm_package_config_default_environment",
|
||||
"ci:e2e:package": "npm run java:$npm_package_config_packaging:$npm_package_config_default_environment -- -Pe2e -Denforcer.skip=true",
|
||||
"ci:e2e:prepare": "npm run ci:e2e:prepare:docker",
|
||||
"ci:e2e:prepare:docker": "npm run services:up --if-present && docker ps -a",
|
||||
"preci:e2e:server:start": "npm run services:db:await --if-present && npm run services:others:await --if-present",
|
||||
"ci:e2e:server:start": "java -jar target/e2e.$npm_package_config_packaging --spring.profiles.active=e2e,$npm_package_config_default_environment -Dlogging.level.ROOT=OFF -Dlogging.level.tech.jhipster=OFF -Dlogging.level.com.oguerreiro.resilient=OFF -Dlogging.level.org.springframework=OFF -Dlogging.level.org.springframework.web=OFF -Dlogging.level.org.springframework.security=OFF --logging.level.org.springframework.web=ERROR",
|
||||
"ci:e2e:teardown": "npm run ci:e2e:teardown:docker --if-present",
|
||||
"ci:e2e:teardown:docker": "docker compose -f src/main/docker/services.yml down -v && docker ps -a",
|
||||
"ci:frontend:build": "npm run webapp:build:$npm_package_config_default_environment",
|
||||
"ci:frontend:test": "npm run ci:frontend:build && npm test",
|
||||
"clean-www": "rimraf target/classes/static/",
|
||||
"cleanup": "rimraf target/",
|
||||
"docker:db:down": "docker compose -f src/main/docker/mysql.yml down -v",
|
||||
"docker:db:up": "docker compose -f src/main/docker/mysql.yml up --wait",
|
||||
"java:docker": "./mvnw -ntp verify -DskipTests -Pprod jib:dockerBuild",
|
||||
"java:docker:arm64": "npm run java:docker -- -Djib-maven-plugin.architecture=arm64",
|
||||
"java:docker:dev": "npm run java:docker -- -Pdev,webapp",
|
||||
"java:docker:prod": "npm run java:docker -- -Pprod",
|
||||
"java:jar": "./mvnw -ntp verify -DskipTests --batch-mode",
|
||||
"java:jar:dev": "npm run java:jar -- -Pdev,webapp",
|
||||
"java:jar:prod": "npm run java:jar -- -Pprod",
|
||||
"java:war": "./mvnw -ntp verify -DskipTests --batch-mode -Pwar",
|
||||
"java:war:dev": "npm run java:war -- -Pdev,webapp",
|
||||
"java:war:prod": "npm run java:war -- -Pprod",
|
||||
"jest": "jest --coverage --logHeapUsage --maxWorkers=2 --config jest.conf.js",
|
||||
"lint": "eslint . --ext .js,.ts",
|
||||
"lint:fix": "npm run lint -- --fix",
|
||||
"prepare": "husky",
|
||||
"prettier:check": "prettier --check \"{,src/**/,webpack/,.blueprint/**/}*.{md,json,yml,html,cjs,mjs,js,ts,tsx,css,scss,java}\"",
|
||||
"prettier:format": "prettier --write \"{,src/**/,webpack/,.blueprint/**/}*.{md,json,yml,html,cjs,mjs,js,ts,tsx,css,scss,java}\"",
|
||||
"serve": "npm run start --",
|
||||
"services:up": "docker compose -f src/main/docker/services.yml up --wait",
|
||||
"start": "ng serve --hmr",
|
||||
"start-tls": "npm run webapp:dev-ssl",
|
||||
"pretest": "npm run lint",
|
||||
"test": "ng test --coverage --log-heap-usage -w=2",
|
||||
"test:watch": "npm run test -- --watch",
|
||||
"watch": "concurrently npm:start npm:backend:start",
|
||||
"webapp:build": "npm run clean-www && npm run webapp:build:dev",
|
||||
"webapp:build:dev": "ng build --configuration development",
|
||||
"webapp:build:prod": "ng build --configuration production",
|
||||
"webapp:dev": "ng serve",
|
||||
"webapp:dev-ssl": "ng serve --ssl",
|
||||
"webapp:dev-verbose": "ng serve --verbose",
|
||||
"webapp:prod": "npm run clean-www && npm run webapp:build:prod",
|
||||
"webapp:test": "npm run test --"
|
||||
},
|
||||
"config": {
|
||||
"backend_port": "8081",
|
||||
"default_environment": "prod",
|
||||
"packaging": "jar"
|
||||
},
|
||||
"dependencies": {
|
||||
"@angular/animations": "17.3.9",
|
||||
"@angular/common": "17.3.9",
|
||||
"@angular/compiler": "17.3.9",
|
||||
"@angular/core": "17.3.9",
|
||||
"@angular/forms": "17.3.9",
|
||||
"@angular/localize": "17.3.9",
|
||||
"@angular/material": "17.3.9",
|
||||
"@angular/platform-browser": "17.3.9",
|
||||
"@angular/platform-browser-dynamic": "17.3.9",
|
||||
"@angular/router": "17.3.9",
|
||||
"@codemirror/basic-setup": "^0.20.0",
|
||||
"@codemirror/lang-java": "^6.0.1",
|
||||
"@codemirror/state": "^6.4.1",
|
||||
"@codemirror/view": "^6.34.3",
|
||||
"@fortawesome/angular-fontawesome": "0.14.1",
|
||||
"@fortawesome/fontawesome-svg-core": "6.5.2",
|
||||
"@fortawesome/free-solid-svg-icons": "6.5.2",
|
||||
"@ng-bootstrap/ng-bootstrap": "16.0.0",
|
||||
"@ng-select/ng-select": "^12.0.0",
|
||||
"@ngx-translate/core": "15.0.0",
|
||||
"@ngx-translate/http-loader": "8.0.0",
|
||||
"@popperjs/core": "2.11.8",
|
||||
"@tinymce/tinymce-angular": "^8.0.1",
|
||||
"@types/codemirror": "^5.60.15",
|
||||
"bootstrap": "5.3.3",
|
||||
"chart.js": "^3.9.1",
|
||||
"codemirror": "^6.0.1",
|
||||
"dayjs": "1.11.11",
|
||||
"ng2-charts": "^3.1.2",
|
||||
"ngx-color-picker": "^17.0.0",
|
||||
"ngx-infinite-scroll": "17.0.0",
|
||||
"quill-better-table": "^1.2.10",
|
||||
"rxjs": "7.8.1",
|
||||
"tslib": "2.6.2",
|
||||
"zone.js": "0.14.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular-builders/custom-webpack": "17.0.2",
|
||||
"@angular-builders/jest": "17.0.3",
|
||||
"@angular-devkit/build-angular": "17.3.7",
|
||||
"@angular-eslint/eslint-plugin": "17.5.2",
|
||||
"@angular/cli": "17.3.7",
|
||||
"@angular/compiler-cli": "17.3.9",
|
||||
"@angular/service-worker": "17.3.9",
|
||||
"@types/jest": "29.5.12",
|
||||
"@types/node": "20.11.25",
|
||||
"@types/quill": "^2.0.14",
|
||||
"@typescript-eslint/eslint-plugin": "7.11.0",
|
||||
"@typescript-eslint/parser": "7.11.0",
|
||||
"browser-sync": "3.0.2",
|
||||
"browser-sync-webpack-plugin": "2.3.0",
|
||||
"buffer": "6.0.3",
|
||||
"concurrently": "8.2.2",
|
||||
"copy-webpack-plugin": "12.0.2",
|
||||
"eslint": "8.57.0",
|
||||
"eslint-config-prettier": "9.1.0",
|
||||
"eslint-webpack-plugin": "4.2.0",
|
||||
"folder-hash": "4.0.4",
|
||||
"generator-jhipster": "8.5.0",
|
||||
"husky": "9.0.11",
|
||||
"jest": "29.7.0",
|
||||
"jest-date-mock": "1.0.10",
|
||||
"jest-environment-jsdom": "29.7.0",
|
||||
"jest-junit": "16.0.0",
|
||||
"jest-preset-angular": "14.1.0",
|
||||
"jest-sonar": "0.2.16",
|
||||
"lint-staged": "15.2.5",
|
||||
"merge-jsons-webpack-plugin": "2.0.1",
|
||||
"prettier": "3.2.5",
|
||||
"prettier-plugin-java": "2.6.0",
|
||||
"prettier-plugin-packagejson": "2.5.0",
|
||||
"rimraf": "5.0.7",
|
||||
"swagger-ui-dist": "5.17.14",
|
||||
"ts-jest": "29.1.4",
|
||||
"typescript": "5.4.5",
|
||||
"wait-on": "7.2.0",
|
||||
"webpack-bundle-analyzer": "4.10.2",
|
||||
"webpack-merge": "5.10.0",
|
||||
"webpack-notifier": "1.15.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=20.14.0"
|
||||
},
|
||||
"cacheDirectories": [
|
||||
"node_modules"
|
||||
],
|
||||
"overrides": {
|
||||
"browser-sync": "3.0.2",
|
||||
"webpack": "5.91.0"
|
||||
}
|
||||
}
|
147
package.json.old
Normal file
147
package.json.old
Normal file
|
@ -0,0 +1,147 @@
|
|||
{
|
||||
"name": "resilient",
|
||||
"version": "0.0.1-SNAPSHOT",
|
||||
"private": true,
|
||||
"description": "Description for Resilient",
|
||||
"license": "UNLICENSED",
|
||||
"scripts": {
|
||||
"app:start": "./mvnw",
|
||||
"app:up": "docker compose -f src/main/docker/app.yml up --wait",
|
||||
"backend:build-cache": "./mvnw dependency:go-offline -ntp",
|
||||
"backend:debug": "./mvnw -Dspring-boot.run.jvmArguments=\"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8000\"",
|
||||
"backend:doc:test": "./mvnw -ntp javadoc:javadoc --batch-mode",
|
||||
"backend:info": "./mvnw --version",
|
||||
"backend:nohttp:test": "./mvnw -ntp checkstyle:check --batch-mode",
|
||||
"backend:start": "./mvnw -Dskip.installnodenpm -Dskip.npm",
|
||||
"backend:unit:test": "./mvnw -ntp -Dskip.installnodenpm -Dskip.npm verify --batch-mode -Dlogging.level.ROOT=OFF -Dlogging.level.tech.jhipster=OFF -Dlogging.level.com.oguerreiro.resilient=OFF -Dlogging.level.org.springframework=OFF -Dlogging.level.org.springframework.web=OFF -Dlogging.level.org.springframework.security=OFF",
|
||||
"build": "npm run webapp:prod --",
|
||||
"build-watch": "concurrently 'npm run webapp:build:dev -- --watch' npm:backend:start",
|
||||
"ci:backend:test": "npm run backend:info && npm run backend:doc:test && npm run backend:nohttp:test && npm run backend:unit:test -- -P$npm_package_config_default_environment",
|
||||
"ci:e2e:package": "npm run java:$npm_package_config_packaging:$npm_package_config_default_environment -- -Pe2e -Denforcer.skip=true",
|
||||
"ci:e2e:prepare": "npm run ci:e2e:prepare:docker",
|
||||
"ci:e2e:prepare:docker": "npm run services:up --if-present && docker ps -a",
|
||||
"preci:e2e:server:start": "npm run services:db:await --if-present && npm run services:others:await --if-present",
|
||||
"ci:e2e:server:start": "java -jar target/e2e.$npm_package_config_packaging --spring.profiles.active=e2e,$npm_package_config_default_environment -Dlogging.level.ROOT=OFF -Dlogging.level.tech.jhipster=OFF -Dlogging.level.com.oguerreiro.resilient=OFF -Dlogging.level.org.springframework=OFF -Dlogging.level.org.springframework.web=OFF -Dlogging.level.org.springframework.security=OFF --logging.level.org.springframework.web=ERROR",
|
||||
"ci:e2e:teardown": "npm run ci:e2e:teardown:docker --if-present",
|
||||
"ci:e2e:teardown:docker": "docker compose -f src/main/docker/services.yml down -v && docker ps -a",
|
||||
"ci:frontend:build": "npm run webapp:build:$npm_package_config_default_environment",
|
||||
"ci:frontend:test": "npm run ci:frontend:build && npm test",
|
||||
"clean-www": "rimraf target/classes/static/",
|
||||
"cleanup": "rimraf target/",
|
||||
"docker:db:down": "docker compose -f src/main/docker/mysql.yml down -v",
|
||||
"docker:db:up": "docker compose -f src/main/docker/mysql.yml up --wait",
|
||||
"java:docker": "./mvnw -ntp verify -DskipTests -Pprod jib:dockerBuild",
|
||||
"java:docker:arm64": "npm run java:docker -- -Djib-maven-plugin.architecture=arm64",
|
||||
"java:docker:dev": "npm run java:docker -- -Pdev,webapp",
|
||||
"java:docker:prod": "npm run java:docker -- -Pprod",
|
||||
"java:jar": "./mvnw -ntp verify -DskipTests --batch-mode",
|
||||
"java:jar:dev": "npm run java:jar -- -Pdev,webapp",
|
||||
"java:jar:prod": "npm run java:jar -- -Pprod",
|
||||
"java:war": "./mvnw -ntp verify -DskipTests --batch-mode -Pwar",
|
||||
"java:war:dev": "npm run java:war -- -Pdev,webapp",
|
||||
"java:war:prod": "npm run java:war -- -Pprod",
|
||||
"jest": "jest --coverage --logHeapUsage --maxWorkers=2 --config jest.conf.js",
|
||||
"lint": "eslint . --ext .js,.ts",
|
||||
"lint:fix": "npm run lint -- --fix",
|
||||
"prepare": "husky",
|
||||
"prettier:check": "prettier --check \"{,src/**/,webpack/,.blueprint/**/}*.{md,json,yml,html,cjs,mjs,js,ts,tsx,css,scss,java}\"",
|
||||
"prettier:format": "prettier --write \"{,src/**/,webpack/,.blueprint/**/}*.{md,json,yml,html,cjs,mjs,js,ts,tsx,css,scss,java}\"",
|
||||
"serve": "npm run start --",
|
||||
"services:up": "docker compose -f src/main/docker/services.yml up --wait",
|
||||
"start": "ng serve --hmr",
|
||||
"start-tls": "npm run webapp:dev-ssl",
|
||||
"pretest": "npm run lint",
|
||||
"test": "ng test --coverage --log-heap-usage -w=2",
|
||||
"test:watch": "npm run test -- --watch",
|
||||
"watch": "concurrently npm:start npm:backend:start",
|
||||
"webapp:build": "npm run clean-www && npm run webapp:build:dev",
|
||||
"webapp:build:dev": "ng build --configuration development",
|
||||
"webapp:build:prod": "ng build --configuration production",
|
||||
"webapp:dev": "ng serve",
|
||||
"webapp:dev-ssl": "ng serve --ssl",
|
||||
"webapp:dev-verbose": "ng serve --verbose",
|
||||
"webapp:prod": "npm run clean-www && npm run webapp:build:prod",
|
||||
"webapp:test": "npm run test --"
|
||||
},
|
||||
"config": {
|
||||
"backend_port": "8081",
|
||||
"default_environment": "prod",
|
||||
"packaging": "jar"
|
||||
},
|
||||
"dependencies": {
|
||||
"@angular/common": "17.3.9",
|
||||
"@angular/compiler": "17.3.9",
|
||||
"@angular/core": "17.3.9",
|
||||
"@angular/forms": "17.3.9",
|
||||
"@angular/localize": "17.3.9",
|
||||
"@angular/platform-browser": "17.3.9",
|
||||
"@angular/platform-browser-dynamic": "17.3.9",
|
||||
"@angular/router": "17.3.9",
|
||||
"@fortawesome/angular-fontawesome": "0.14.1",
|
||||
"@fortawesome/fontawesome-svg-core": "6.5.2",
|
||||
"@fortawesome/free-solid-svg-icons": "6.5.2",
|
||||
"@ng-bootstrap/ng-bootstrap": "16.0.0",
|
||||
"@ngx-translate/core": "15.0.0",
|
||||
"@ngx-translate/http-loader": "8.0.0",
|
||||
"@popperjs/core": "2.11.8",
|
||||
"bootstrap": "5.3.3",
|
||||
"dayjs": "1.11.11",
|
||||
"ngx-infinite-scroll": "17.0.0",
|
||||
"rxjs": "7.8.1",
|
||||
"tslib": "2.6.2",
|
||||
"zone.js": "0.14.6"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular-builders/custom-webpack": "17.0.2",
|
||||
"@angular-builders/jest": "17.0.3",
|
||||
"@angular-devkit/build-angular": "17.3.7",
|
||||
"@angular-eslint/eslint-plugin": "17.5.2",
|
||||
"@angular/cli": "17.3.7",
|
||||
"@angular/compiler-cli": "17.3.9",
|
||||
"@angular/service-worker": "17.3.9",
|
||||
"@types/jest": "29.5.12",
|
||||
"@types/node": "20.11.25",
|
||||
"@typescript-eslint/eslint-plugin": "7.11.0",
|
||||
"@typescript-eslint/parser": "7.11.0",
|
||||
"browser-sync": "3.0.2",
|
||||
"browser-sync-webpack-plugin": "2.3.0",
|
||||
"buffer": "6.0.3",
|
||||
"concurrently": "8.2.2",
|
||||
"copy-webpack-plugin": "12.0.2",
|
||||
"eslint": "8.57.0",
|
||||
"eslint-config-prettier": "9.1.0",
|
||||
"eslint-webpack-plugin": "4.2.0",
|
||||
"folder-hash": "4.0.4",
|
||||
"generator-jhipster": "8.5.0",
|
||||
"husky": "9.0.11",
|
||||
"jest": "29.7.0",
|
||||
"jest-date-mock": "1.0.10",
|
||||
"jest-environment-jsdom": "29.7.0",
|
||||
"jest-junit": "16.0.0",
|
||||
"jest-preset-angular": "14.1.0",
|
||||
"jest-sonar": "0.2.16",
|
||||
"lint-staged": "15.2.5",
|
||||
"merge-jsons-webpack-plugin": "2.0.1",
|
||||
"prettier": "3.2.5",
|
||||
"prettier-plugin-java": "2.6.0",
|
||||
"prettier-plugin-packagejson": "2.5.0",
|
||||
"rimraf": "5.0.7",
|
||||
"swagger-ui-dist": "5.17.14",
|
||||
"ts-jest": "29.1.4",
|
||||
"typescript": "5.4.5",
|
||||
"wait-on": "7.2.0",
|
||||
"webpack-bundle-analyzer": "4.10.2",
|
||||
"webpack-merge": "5.10.0",
|
||||
"webpack-notifier": "1.15.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=20.14.0"
|
||||
},
|
||||
"cacheDirectories": [
|
||||
"node_modules"
|
||||
],
|
||||
"overrides": {
|
||||
"browser-sync": "3.0.2",
|
||||
"webpack": "5.91.0"
|
||||
}
|
||||
}
|
1152
pom.xml.old
Normal file
1152
pom.xml.old
Normal file
File diff suppressed because it is too large
Load diff
788
resilient-mono.jh
Normal file
788
resilient-mono.jh
Normal file
|
@ -0,0 +1,788 @@
|
|||
|
||||
/*
|
||||
* Resilient JHipster JDL file definition.
|
||||
* DON'T use infinite-scroll. The infinite-scroll paginate option
|
||||
* has some kind of error, and makes it IMPOSSIBLE to login into the
|
||||
* APP.
|
||||
*/
|
||||
|
||||
// POST generation metadata
|
||||
// This metadata set the order of fields. And the only ones visible. All others, will be hidden
|
||||
// @@ List:: < A list of properties for the list view. Ex: code;name;description >
|
||||
// @@ Update:: < A list of properties for the Update/Create form. Ex: code;name;description >
|
||||
// @@ View:: < A list of properties for the Detail form. Ex: code;name;description >
|
||||
// The properties in this list, will be EDITABLE only when in CREATE mode. Readonly otherwise
|
||||
// @@ READONLY:: < A list of properties for the Detail form. Ex: code;name;description >
|
||||
// @@ IMAGE:: <Tells the post-generator to customize HTML of this type of fields>
|
||||
|
||||
/**
|
||||
* Monolith app
|
||||
*
|
||||
* Resilient core functions microservice.
|
||||
*/
|
||||
application {
|
||||
config {
|
||||
baseName resilient
|
||||
packageName com.oguerreiro.resilient
|
||||
applicationType monolith
|
||||
authenticationType session
|
||||
devDatabaseType mysql
|
||||
prodDatabaseType mysql
|
||||
clientFramework angularX
|
||||
buildTool maven
|
||||
cacheProvider ehcache
|
||||
enableHibernateCache true
|
||||
enableTranslation true
|
||||
languages [pt-pt, en]
|
||||
nativeLanguage pt-pt
|
||||
serverPort 8081
|
||||
}
|
||||
|
||||
entities *
|
||||
}
|
||||
|
||||
/**
|
||||
* **************************************************
|
||||
* Core - Entities & Relations
|
||||
* **************************************************
|
||||
*/
|
||||
|
||||
/**
|
||||
* Organization Nature enum
|
||||
* This identifies the nature of the organization entry level.
|
||||
*/
|
||||
enum OrganizationNature {
|
||||
/**
|
||||
* Represents an organizational level (company; department; university; ...)
|
||||
* Rules : An Organization always starts with and entry level ORGANIZATION.
|
||||
* Parent's allowed: none; ORGANIZATION; LEVEL
|
||||
*/
|
||||
ORGANIZATION,
|
||||
|
||||
/**
|
||||
* Represents a human. With or without a login to the APP.
|
||||
* Rules : Must have a parent Organization entry
|
||||
* Parent's allowed: any
|
||||
*/
|
||||
PERSON,
|
||||
|
||||
/**
|
||||
* Represents physical building.
|
||||
* Rules : Must have a parent Organization entry
|
||||
* Parent's allowed: ORGANIZATION; LEVEL
|
||||
*/
|
||||
FACILITY,
|
||||
|
||||
/**
|
||||
* Generic. Its a organizer, creating a level without any system meaning
|
||||
* Rules : Must have a parent Organization entry
|
||||
* Parent's allowed: any
|
||||
*/
|
||||
LEVEL
|
||||
}
|
||||
|
||||
/**
|
||||
* Organization Type
|
||||
* The organization type is a setup that defines the usage of the Organization level and other configurations.
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity OrganizationType {
|
||||
// @@ List:: icon;name;description
|
||||
// @@ Update:: code;name;description;nature;icon;metadataProperties
|
||||
// @@ View:: code;name;description;nature;icon;metadataProperties
|
||||
// @@ READONLY:: code;nature
|
||||
// @@ IMAGE:: icon
|
||||
|
||||
/** User defined code. Must be unique in the OrganizationType */
|
||||
code String required minlength(3) unique
|
||||
/** The name of the type. Must be unique in the system */
|
||||
name String required minlength(3) unique
|
||||
/** A more complete description of the type. Whats the meaning of this type? */
|
||||
description String required minlength(3)
|
||||
/** The nature of the type */
|
||||
nature OrganizationNature required
|
||||
/** Icon image associated with this organization type. Will be used in user interface. */
|
||||
icon ImageBlob
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Organization
|
||||
* Hierarchical organigram of the organization.
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity Organization {
|
||||
// @@ List:: organizationType;code;name;parent
|
||||
// @@ Update:: parent;organizationType;code;name;image;inputInventory;outputInventory;user
|
||||
// @@ View:: parent;organizationType;code;name;image;inputInventory;outputInventory;user
|
||||
// @@ READONLY:: parent;organizationType;code
|
||||
|
||||
//References:
|
||||
/*
|
||||
* Applies only to OrganizationType.OrganizationNature.PERSON.
|
||||
* Associates a PERSON with a login User. It's NOT mandatory that all PERSON have a system user
|
||||
*/
|
||||
//to User(user)
|
||||
//to Organization(parent)
|
||||
//to OrganizationType(organizationType)
|
||||
|
||||
/** User defined code. Must be unique in the Organization */
|
||||
code String required minlength(3) unique
|
||||
/** The name of the Organization entry. Allows duplicate name's, but NOT duplicate code's. */
|
||||
name String required minlength(3)
|
||||
/* Optional image associated with this hierarchical level. NOT the same as OrganizationType.icon.
|
||||
* The Organization.imagem is not an icon and its intended to be specific of the entry it self
|
||||
*/
|
||||
image ImageBlob
|
||||
/*
|
||||
* Applies only to OrganizationType.OrganizationNature.ORGANIZATION.
|
||||
* Means that this level is allowed to have inventory data input. Data can be inserted into table InputData associated to this Organization
|
||||
*/
|
||||
inputInventory Boolean
|
||||
|
||||
/*
|
||||
* Applies only to OrganizationType.OrganizationNature.ORGANIZATION.
|
||||
* Means that this level will be evaluated for inventory output variables.
|
||||
*/
|
||||
outputInventory Boolean
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
// Metadata is a structure for any info associated with other entity domains.
|
||||
// It's general information that can be used, for example, in formulas.
|
||||
|
||||
/**
|
||||
* Metadata type enum
|
||||
* The property type
|
||||
*/
|
||||
enum MetadataType {
|
||||
STRING,
|
||||
BOOLEAN,
|
||||
INTEGER,
|
||||
DECIMAL,
|
||||
DATE
|
||||
}
|
||||
|
||||
/**
|
||||
* Metadata Property
|
||||
* Configuration of a metadata property. Defines its type and a description of its usage.
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity MetadataProperty {
|
||||
// @@ List:: code;name;description;mandatory
|
||||
// @@ Update:: code;name;description;metadataTye;mandatory;pattern
|
||||
// @@ View:: code;name;description;metadataTye;mandatory;pattern
|
||||
// @@ READONLY:: code;metadataType
|
||||
|
||||
code String required minlength(3) unique
|
||||
name String required
|
||||
description String
|
||||
mandatory Boolean
|
||||
metadataType MetadataType required
|
||||
/** Regex pattern for validation (optional). Only applies when the value is not empty. */
|
||||
pattern String
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Metadata Value
|
||||
* The value of a metadata property.
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity MetadataValue {
|
||||
/** Functional relational key to MetadataProperty */
|
||||
metadataPropertyCode String required
|
||||
|
||||
/**
|
||||
* The target domain key that this MetadataValue belongs. Its a class name or a key provided by the consumer. <br>
|
||||
* Used with targetDomainId to create as unique relation with the target domain
|
||||
* @see targetDomainId
|
||||
*/
|
||||
targetDomainKey String required
|
||||
|
||||
/**
|
||||
* The target domain Id that this MetadataValue belongs. <br>
|
||||
* Used with targetDomainKey to create as unique relation with the target domain
|
||||
* @see targetDomainKey
|
||||
*/
|
||||
targetDomainId Long required
|
||||
|
||||
/**
|
||||
* The value of the MetadataProperty, persisted as a string. <br>
|
||||
*/
|
||||
value String
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
relationship OneToMany {
|
||||
Organization{child(name)} to Organization{parent(name)}
|
||||
OrganizationType to Organization{organizationType(name)}
|
||||
}
|
||||
|
||||
relationship OneToOne {
|
||||
/* Relation to builtInEntity User, must have the name "user", any other, JHipster generates TC with error */
|
||||
Organization{user(login)} to User with builtInEntity
|
||||
}
|
||||
|
||||
relationship ManyToMany {
|
||||
// NOTE: For this to work, the OrganizationTypeMapper.toDtoMetadataPropertyName(MetadataProperty metadataProperty)
|
||||
// Must have an additional mapping for the version property : @Mapping(target = "version", source = "version")
|
||||
OrganizationType{metadataProperties(name)} to MetadataProperty{organizationType(name)}
|
||||
}
|
||||
|
||||
/**
|
||||
* **************************************************
|
||||
* Inventory - Entities & Relations
|
||||
* **************************************************
|
||||
*/
|
||||
|
||||
/**
|
||||
* Variable InputMode enum
|
||||
* Defines how the input values for the variable are inserted.
|
||||
*/
|
||||
enum InputMode {
|
||||
/** Values are inserted by DataFile only. User can always change the value manually, but they can't delete it or insert it */
|
||||
DATAFILE,
|
||||
/** Values are inserted Manually. In this mode, only a human can insert and change the variable values. If a file or integration attempts to insert it, an error will be thrown */
|
||||
MANUAL,
|
||||
/** Values are inserted by Integration files. Very similar to the option DATAFILE */
|
||||
INTEGRATION,
|
||||
/** The variable can be inserted by any of the modes */
|
||||
ANY
|
||||
}
|
||||
|
||||
/**
|
||||
* Unit Variable Type
|
||||
* The type of data this unit represents
|
||||
*/
|
||||
enum UnitValueType {
|
||||
/** Decimal value */
|
||||
DECIMAL,
|
||||
/** boolean value */
|
||||
BOOLEAN
|
||||
}
|
||||
|
||||
/**
|
||||
* UnitType
|
||||
* Type of measure unit types. Convertions can only be done within Unit's of the same UnitType
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity UnitType {
|
||||
// @@ List:: name;description;valueType
|
||||
// @@ Update:: name;description;valueType
|
||||
// @@ View:: name;description;valueType
|
||||
|
||||
name String required unique
|
||||
description String required
|
||||
valueType UnitValueType required
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Unit
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity Unit {
|
||||
// @@ List:: unitType;symbol;name;description
|
||||
// @@ Update:: unitType;code;symbol;name;description;convertionRate
|
||||
// @@ View:: unitType;code;symbol;name;description;convertionRate
|
||||
// @@ Readonly:: unitType;code
|
||||
|
||||
/** Required code to use in integrations */
|
||||
code String required unique
|
||||
/** Math symbol that is usually used as sufix for this unit. Eg. 'm3' for square metters.*/
|
||||
symbol String required
|
||||
/** Math name for this unit. Eg. 'Square metters'.*/
|
||||
name String required
|
||||
description String
|
||||
|
||||
/**
|
||||
* The convertion rate (CR), relative to the base unit.
|
||||
* This values awnsers the question: When the base unit is 1 (one), whats the value of this unit measure ?
|
||||
* Ex: How many Ml (miligrams) 1Kg has? 1000
|
||||
* The formula to convert between any value unit the scale is:
|
||||
* <Value>*CR(target unit)/CR(source unit)
|
||||
*/
|
||||
convertionRate BigDecimal required
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Unit Converter
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity UnitConverter {
|
||||
// @@ List:: fromUnit;toUnit;name;description
|
||||
// @@ Update:: fromUnit;toUnit;name;description;convertionFormula
|
||||
// @@ View:: fromUnit;toUnit;name;description;convertionFormula
|
||||
// @@ Readonly:: fromUnit;toUnit
|
||||
|
||||
//References:
|
||||
//to Unit(fromUnit)
|
||||
//to Unit(toUnit)
|
||||
|
||||
name String required
|
||||
description String required
|
||||
|
||||
/**
|
||||
* The convertion formula to convert the fromUnit into the toUnit.
|
||||
*/
|
||||
convertionFormula String required
|
||||
|
||||
/**
|
||||
* Record version for concurrency control.
|
||||
*/
|
||||
version Integer
|
||||
}
|
||||
|
||||
// Standard GEE Variable definition schema
|
||||
// VariableScope
|
||||
// (1-n) VariableCategory
|
||||
// (1-n) Variable
|
||||
// ---------------------------------------------------
|
||||
|
||||
/**
|
||||
* Variable Scope
|
||||
* Example: GEE Scope 1/2/3 or General Info
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity VariableScope {
|
||||
// @@ List:: code;name;description
|
||||
// @@ Update:: code;name;description
|
||||
// @@ View:: code;name;description
|
||||
// @@ Readonly:: code
|
||||
|
||||
/**
|
||||
* Unique key, user defined.
|
||||
* Be aware, that this will be used to create the Variable.code
|
||||
* NOTE: The field type is string, but restricted to only numbers
|
||||
*/
|
||||
code String required pattern(/^[0-9]*$/) unique
|
||||
/** The name or title for this scope */
|
||||
name String required
|
||||
/** A description or usage of this scope */
|
||||
description String required
|
||||
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Variable Category
|
||||
* Sub-division of VariableScope in Categories
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity VariableCategory {
|
||||
// @@ List:: code;name;description
|
||||
// @@ Update:: variableScope;code;name;description
|
||||
// @@ View:: variableScope;code;name;description
|
||||
// @@ Readonly:: variableScope;code
|
||||
|
||||
//References:
|
||||
//to VariableScope
|
||||
|
||||
/**
|
||||
* Unique key, user defined.
|
||||
* Be aware, that this will be used to create the Variable.code
|
||||
* NOTE: The field type is string, but restricted to only numbers
|
||||
*/
|
||||
code String required pattern(/^[0-9]*$/)
|
||||
/** The name or title for this category */
|
||||
name String required
|
||||
/** A description or usage of this category */
|
||||
description String required
|
||||
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Variable Definition (GEE variable classification)
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity Variable {
|
||||
// @@ List:: name;description;input;output
|
||||
// @@ Update:: variableScope;variableCategory;code;name;baseUnit;description
|
||||
// @@ View:: variableScope;variableCategory;code;name;baseUnit;description
|
||||
// @@ Readonly:: variableScope;variableCategory;code
|
||||
|
||||
//References:
|
||||
//to VariableScope
|
||||
//to VariableCategory
|
||||
//to Unit (baseUnit) - The unit of the variable
|
||||
|
||||
/**
|
||||
* Unique key, composed by: <br>
|
||||
* VariableScope.code + VariableCategory.code + <index>
|
||||
* NOTA: User will provide the index property, and the software will create the code
|
||||
* index and code are NOT changeable
|
||||
*/
|
||||
code String required pattern(/^[0-9]*$/) unique
|
||||
/** Variable index */
|
||||
variableIndex Integer required
|
||||
/** The name or title for the variable */
|
||||
name String required
|
||||
/** The descriptions of the variable. Its meaning. Its usage. */
|
||||
description String required
|
||||
/** Defines this variable as input. Values will be inserted for this variable */
|
||||
input Boolean required
|
||||
/** Defines the way of input. See the enum for instructions. */
|
||||
inputMode InputMode required
|
||||
/** Defines this variable as output. This variable will be evaluated for output */
|
||||
output Boolean required
|
||||
/** The formula to calculate the output valut of the variable. Mandatory when output==TRUE */
|
||||
outputFormula String
|
||||
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
filter Variable
|
||||
|
||||
/**
|
||||
* Variable allowed input units. Also defines the converters needed if the
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity VariableUnits {
|
||||
// @@ List:: variable;unit
|
||||
// @@ Update:: variable;unit
|
||||
// @@ View:: variable;unit
|
||||
// @@ Readonly:: variable;unit
|
||||
|
||||
//References:
|
||||
//to Variable
|
||||
//to Unit (unit) - The allowed unit for input
|
||||
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Variable Class
|
||||
* A sub-variable classification. Example: Variable=FUEL CONSUMPTIOM; CLASS=GASOLINE; OR ELECTRICAL; ETC...
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity VariableClass {
|
||||
// @@ List:: variable;code;name
|
||||
// @@ Update:: variable;code;name
|
||||
// @@ View:: variable;code;name
|
||||
// @@ Readonly:: variable;code
|
||||
|
||||
//References:
|
||||
//to Variable
|
||||
|
||||
/** Code of the class. Must be unique within the Variavle */
|
||||
code String required
|
||||
/** Human name of the class. Must be unique within the Variable, because it will be used as key for the Excel integration data. */
|
||||
name String required
|
||||
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
// Period schema
|
||||
// Period (1-n) PeriodVersion
|
||||
// ---------------------------------------------------
|
||||
|
||||
/**
|
||||
* Period status enum
|
||||
*/
|
||||
enum PeriodStatus {
|
||||
OPEN,
|
||||
REOPEN,
|
||||
CLOSED
|
||||
}
|
||||
|
||||
/**
|
||||
* Data Source enum
|
||||
*/
|
||||
enum DataSourceType {
|
||||
MANUAL,
|
||||
FILE,
|
||||
AUTO,
|
||||
/** Special case, where a InputData value from an Organization is distributed to other Organization's */
|
||||
DISTRIB
|
||||
}
|
||||
|
||||
/**
|
||||
* Upload file type enum
|
||||
*/
|
||||
enum UploadType {
|
||||
/** Custom Excel file template, for variable input upload */
|
||||
INVENTORY,
|
||||
|
||||
/** Exported file from the accounting software */
|
||||
ACCOUNTING
|
||||
}
|
||||
|
||||
/**
|
||||
* Upload file status enum
|
||||
*/
|
||||
enum UploadStatus {
|
||||
UPLOADED,
|
||||
PROCESSING,
|
||||
PROCESSED,
|
||||
ERROR
|
||||
}
|
||||
|
||||
/**
|
||||
* Period
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity Period (period) {
|
||||
// @@ List:: name;description;beginDate;endDate;state
|
||||
// @@ Update:: name;description;beginDate;endDate;state
|
||||
// @@ View:: name;description;beginDate;endDate;state
|
||||
|
||||
//References:
|
||||
//?
|
||||
|
||||
/** Name of the period */
|
||||
name String required
|
||||
/** Description for the period */
|
||||
description String
|
||||
/** Period start date */
|
||||
beginDate LocalDate required
|
||||
/** Period end date */
|
||||
endDate LocalDate required
|
||||
/** State of the Period */
|
||||
state PeriodStatus required
|
||||
|
||||
/** The creation date (insert). When the data was inserted into the system. */
|
||||
creationDate Instant required
|
||||
/** The actual username logged into the system, that inserted the data. NOT a reference to the user, but the login username. */
|
||||
creationUsername String required
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Period versions
|
||||
* Always have at least one version.
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity PeriodVersion {
|
||||
//References:
|
||||
//to Period
|
||||
|
||||
/** Name of the version */
|
||||
name String required
|
||||
/** Description for the version */
|
||||
description String
|
||||
/** Period version (sequencial) */
|
||||
periodVersion Integer required
|
||||
/** State of the Period */
|
||||
state PeriodStatus required
|
||||
|
||||
/** The creation date (insert). When the data was inserted into the system. */
|
||||
creationDate Instant required
|
||||
/** The actual username logged into the system, that inserted the data. NOT a reference to the user, but the login username. */
|
||||
creationUsername String required
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Input data Values
|
||||
* The values inserted from:
|
||||
* - Each Organic Unit
|
||||
* - Variable
|
||||
* - PeriodVersion
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity InputData {
|
||||
//References:
|
||||
//to Variable - The Variable that this data reports
|
||||
//to Period - The period that this data belongs
|
||||
//to PeriodVersion - The period version active, when the data was inserted
|
||||
//to Unit (sourceUnit) - The Unit that the data was inserted. Must be one of the allowed input units for the variable
|
||||
//to Unit (unit) - The Unit of the variableValue. Its the unit configured in Variable.baseUnit
|
||||
//to Organization (owner) - The owner of the data. The Organization responsable for generating this data (that consumed this value)
|
||||
//to InputData (inputData) - In case of InputData.source==DataSourceType.DISTRIB, this points to the parent owner InputData
|
||||
//to InputDataUpload - In case of InputData.source==DataSourceType.FILE, this points to the InputDataUpload file that contains this data
|
||||
|
||||
/** The value of the data in the source Unit. This might be different from the Variable baseUnit. @see variableValue and variableUnit */
|
||||
sourceValue BigDecimal required
|
||||
/** The value of the data converted to the variable baseUnit. */
|
||||
variableValue BigDecimal required
|
||||
/**
|
||||
* The value that the InputData.owner is accounted for.
|
||||
* In case a variableValue is distributed to other Organization's (InputData.source==DataSources.DISTRIB)
|
||||
* , this will have the value to consider when calculating the final inventory value for the variable
|
||||
*/
|
||||
imputedValue BigDecimal required
|
||||
/** What was the source of this data ? */
|
||||
sourceType DataSourceType required
|
||||
/**
|
||||
* The date that this data relates to.
|
||||
* Eg. energy consumptium happens every month, this should be the date of invoice
|
||||
* [optional]
|
||||
*/
|
||||
dataDate LocalDate
|
||||
|
||||
/** Last change date */
|
||||
changeDate Instant required
|
||||
/** The actual username logged into the system, that last changed the data */
|
||||
changeUsername String required
|
||||
/** Where this data originates from? Where were the data collected ? */
|
||||
dataSource String
|
||||
/** Who collected the data ? */
|
||||
dataUser String
|
||||
/** Comments added by the user */
|
||||
dataComments String
|
||||
|
||||
/** The creation date (insert). When the data was inserted into the system. */
|
||||
creationDate Instant required
|
||||
/** The actual username logged into the system, that inserted the data. NOT a reference to the user, but the login username. */
|
||||
creationUsername String required
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Input data upload file
|
||||
* Users can upload an Excel file with InputData that will automatically insert values in the table InputData
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity InputDataUpload {
|
||||
// @@ List:: title;type;state
|
||||
// @@ Update:: title;type;dataFile;comments;state
|
||||
// @@ View:: title;type;dataFile;comments:state
|
||||
|
||||
//References:
|
||||
//to Period - The period that this data belongs
|
||||
//to PeriodVersion - The period version active, when the data was inserted
|
||||
//to Organization (owner) - The owner of the data. The Organization responsable for generating this data (that consumed this value)
|
||||
|
||||
/** A simple text with a title, for human reference and better relation */
|
||||
title String required
|
||||
/** An Excel file, that must match a template for input */
|
||||
dataFile Blob required
|
||||
/** The name of the uploaded Excel file */
|
||||
uploadFileName String
|
||||
/** The generated name of the Excel file, used to save to disk */
|
||||
diskFileName String
|
||||
/** Type of the Upload */
|
||||
type UploadType required
|
||||
/** State of the Upload */
|
||||
state UploadStatus required
|
||||
/** Optional comments */
|
||||
comments String
|
||||
|
||||
/** The creation date (insert). When the data was inserted into the system. */
|
||||
creationDate Instant required
|
||||
/** The actual username logged into the system, that inserted the data. NOT a reference to the user, but the login username. */
|
||||
creationUsername String required
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Input data upload file
|
||||
* Users can upload an Excel file with InputData that will automatically insert values in the table InputData
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity InputDataUploadLog {
|
||||
//References:
|
||||
//to InputDataUpload - The InputDataUpload that this log belongs
|
||||
|
||||
/** The log of the event. Eg. "InputDataUpload created"; "InputDataUpload replaced with new file"; "125 records inserted"; "User XPTO confirmed the file replacement." */
|
||||
logMessage String required
|
||||
|
||||
/** The creation date (insert). When the data was inserted into the system. */
|
||||
creationDate Instant required
|
||||
/** The actual username logged into the system, that inserted the data. NOT a reference to the user, but the login username. */
|
||||
creationUsername String required
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
/**
|
||||
* Output data Values
|
||||
* The values calculated using the Variable.outputFormula, for all variables with Variable.output==TRUE.
|
||||
*/
|
||||
@dto(mapstruct)
|
||||
entity OutputData {
|
||||
//References:
|
||||
//to Variable - The Variable that this data reports
|
||||
//to Period - The period that this data belongs
|
||||
//to PeriodVersion - The period version active, when the data was inserted
|
||||
//to Unit (baseUnit) - The Unit of the variableValue. Its the unit configured in Variable.baseUnit
|
||||
//to Organization (owner) - The owner of the data. The Organization responsable for generating this data (that consumed this value)
|
||||
|
||||
/** The evaluated value, calculated by Variable.outputFormula. This will probably represent an emission value. */
|
||||
value BigDecimal required
|
||||
|
||||
/** Record version for concurrency control. */
|
||||
version Integer
|
||||
}
|
||||
|
||||
relationship OneToMany {
|
||||
UnitType to Unit{unitType(name)}
|
||||
Unit{fromUnit(name)} to UnitConverter{fromUnit(name)}
|
||||
Unit{toUnit(name)} to UnitConverter{toUnit(name)}
|
||||
Unit{baseUnit(name)} to Variable{baseUnit(name)}
|
||||
|
||||
VariableScope to VariableCategory{variableScope(name)}
|
||||
VariableScope to Variable {variableScope(name)}
|
||||
VariableCategory to Variable {variableCategory(name)}
|
||||
Variable to VariableClass{variable(name)}
|
||||
Period to PeriodVersion{period(name)}
|
||||
|
||||
//InputData references
|
||||
Variable to InputData{variable(name)}
|
||||
Period to InputData{period(name)}
|
||||
PeriodVersion to InputData{periodVersion(name)}
|
||||
Unit{sourceUnit} to InputData{sourceUnit(name)}
|
||||
Unit to InputData{unit(name)}
|
||||
Organization to InputData{owner(name)}
|
||||
InputData to InputData{sourceInputData}
|
||||
InputDataUpload to InputData{sourceInputDataUpload}
|
||||
|
||||
//InputDataUpload
|
||||
Period to InputDataUpload{period(name)}
|
||||
PeriodVersion to InputDataUpload{periodVersion(name)}
|
||||
Organization to InputDataUpload{owner(name)}
|
||||
|
||||
//OutputData references
|
||||
Variable to OutputData{variable(name)}
|
||||
Period to OutputData{period(name)}
|
||||
PeriodVersion to OutputData{periodVersion(name)}
|
||||
Unit to OutputData{baseUnit(name)}
|
||||
Organization to InputData{owner(name)}
|
||||
|
||||
//VariableUnits
|
||||
Variable to VariableUnits{variable(name)}
|
||||
Unit to VariableUnits{unit(name)}
|
||||
|
||||
//InputDataUploadLog
|
||||
InputDataUpload to InputDataUploadLog{inputDataUpload(title)}
|
||||
}
|
||||
|
||||
/** paginate Entry, Tag with infinite-scroll */
|
||||
// paginate Organization, Metadata with pagination
|
||||
|
||||
service * with serviceClass
|
40
sonar-project.properties
Normal file
40
sonar-project.properties
Normal file
|
@ -0,0 +1,40 @@
|
|||
sonar.projectKey = resilient
|
||||
sonar.projectName = resilient generated by jhipster
|
||||
|
||||
# Typescript tests files must be inside sources and tests, otherwise `INFO: Test execution data ignored for 80 unknown files, including:`
|
||||
# is shown.
|
||||
sonar.sources = src
|
||||
sonar.tests = src
|
||||
sonar.host.url = http://localhost:9001
|
||||
|
||||
sonar.test.inclusions = src/test/**/*.*, src/main/webapp/app/**/*.spec.ts
|
||||
sonar.coverage.jacoco.xmlReportPaths = target/site/**/jacoco*.xml
|
||||
sonar.java.codeCoveragePlugin = jacoco
|
||||
sonar.junit.reportPaths = target/surefire-reports,target/failsafe-reports
|
||||
sonar.testExecutionReportPaths = target/test-results/jest/TESTS-results-sonar.xml
|
||||
sonar.javascript.lcov.reportPaths = target/test-results/lcov.info
|
||||
|
||||
sonar.sourceEncoding = UTF-8
|
||||
sonar.exclusions = src/main/webapp/content/**/*.*, src/main/webapp/i18n/*.js, target/classes/static/**/*.*
|
||||
|
||||
sonar.issue.ignore.multicriteria = S1192,S125,S3437,S4684,S5145,UndocumentedApi
|
||||
|
||||
# Rule https://rules.sonarsource.com/java/RSPEC-3437 is ignored, as a JPA-managed field cannot be transient
|
||||
sonar.issue.ignore.multicriteria.S3437.resourceKey = src/main/java/**/*
|
||||
sonar.issue.ignore.multicriteria.S3437.ruleKey = squid:S3437
|
||||
# Rule https://rules.sonarsource.com/java/RSPEC-4684
|
||||
sonar.issue.ignore.multicriteria.S4684.resourceKey = src/main/java/**/*
|
||||
sonar.issue.ignore.multicriteria.S4684.ruleKey = java:S4684
|
||||
# Rule https://rules.sonarsource.com/java/RSPEC-5145 log filter is applied
|
||||
sonar.issue.ignore.multicriteria.S5145.resourceKey = src/main/java/**/*
|
||||
sonar.issue.ignore.multicriteria.S5145.ruleKey = javasecurity:S5145
|
||||
# Rule https://rules.sonarsource.com/java/RSPEC-1176 is ignored, as we want to follow "clean code" guidelines and classes, methods and
|
||||
# arguments names should be self-explanatory
|
||||
sonar.issue.ignore.multicriteria.UndocumentedApi.resourceKey = src/main/java/**/*
|
||||
sonar.issue.ignore.multicriteria.UndocumentedApi.ruleKey = squid:UndocumentedApi
|
||||
# Rule https://rules.sonarsource.com/java/RSPEC-1192
|
||||
sonar.issue.ignore.multicriteria.S1192.resourceKey = src/main/java/**/CacheConfiguration.java
|
||||
sonar.issue.ignore.multicriteria.S1192.ruleKey = java:S1192
|
||||
# Rule https://rules.sonarsource.com/xml/RSPEC-125
|
||||
sonar.issue.ignore.multicriteria.S125.resourceKey = src/main/resources/logback-spring.xml
|
||||
sonar.issue.ignore.multicriteria.S125.ruleKey = xml:S125
|
77
src/main/docker-mariadb/Readme
Normal file
77
src/main/docker-mariadb/Readme
Normal file
|
@ -0,0 +1,77 @@
|
|||
# ###################################################### #
|
||||
# MariaDB #
|
||||
# #
|
||||
# Database container with MariaDB #
|
||||
# ###################################################### #
|
||||
|
||||
Project Structure:
|
||||
==================
|
||||
|
||||
docker-nginx/
|
||||
├── docker-compose.yml
|
||||
├── mariadb_data/
|
||||
│ ├── # Volume for database files
|
||||
|
||||
|
||||
Build & Run:
|
||||
============
|
||||
|
||||
For a first startup:
|
||||
|
||||
> docker-compose up --build
|
||||
|
||||
For a startup:
|
||||
|
||||
> docker-compose up -d
|
||||
|
||||
|
||||
Users:
|
||||
======
|
||||
User: resDbUser
|
||||
Pwd : res#Db!Pwd%765
|
||||
|
||||
|
||||
Config:
|
||||
=======
|
||||
User Root Password: root#unl!853
|
||||
Port: 3406
|
||||
|
||||
|
||||
Create database
|
||||
===============
|
||||
|
||||
#2 Create database
|
||||
> docker exec -it mariadb mariadb -uroot -proot#unl!853 -e "CREATE DATABASE IF NOT EXISTS resilient_resilient;"
|
||||
<mariadb>, its the docker container name
|
||||
<mariadb>, THE SECOND <mariadb> is the equivalent to mysql command, but for mariadb
|
||||
<root#unl!853>, the root password
|
||||
<resilient_resilient>, its the intended database name
|
||||
|
||||
#2 Verify
|
||||
> docker exec -it mariadb mariadb -uroot -proot#unl!853 -e "SHOW DATABASES;"
|
||||
<mariadb>, its the docker container name
|
||||
<mariadb>, THE SECOND <mariadb> is the equivalent to mysql command, but for mariadb
|
||||
<root#unl!853>, the root password
|
||||
|
||||
Restore from mysqldump
|
||||
======================
|
||||
|
||||
#1 Copy dump file into the ./dumps directory
|
||||
|
||||
#2 Import the dump into the database, without copy the dump into container
|
||||
> docker exec -i mariadb mariadb -uroot -proot#unl!853 resilient_resilient < ./dumps/resilient_dump.sql
|
||||
<mariadb>, its the docker container name
|
||||
<mariadb>, THE SECOND <mariadb> is the equivalent to mysql command, but for mariadb
|
||||
<root#unl!853>, the root password
|
||||
<resilient_resilient>, its the intended database name
|
||||
<resilient_dump.sql>, the dump file name
|
||||
|
||||
#3 Verify (SHOW TABLES;)
|
||||
> docker exec -it mariadb mariadb -uresDbUser -pres#Db!Pwd%765 resilient_resilient -e "SHOW TABLES;"
|
||||
<mariadb>, its the docker container name
|
||||
<mariadb>, THE SECOND <mariadb> is the equivalent to mysql command, but for mariadb
|
||||
<resDbUser>, User to use. NOTE: Testing the functional user (not root).
|
||||
<res#Db!Pwd%765>, The user password. NOTE: Testing the functional user (not root).
|
||||
<resilient_resilient>, its the intended database name
|
||||
|
||||
|
2
src/main/docker-mariadb/config/my.cnf
Normal file
2
src/main/docker-mariadb/config/my.cnf
Normal file
|
@ -0,0 +1,2 @@
|
|||
[mysqld]
|
||||
port = 3306
|
18
src/main/docker-mariadb/docker-compose.yml
Normal file
18
src/main/docker-mariadb/docker-compose.yml
Normal file
|
@ -0,0 +1,18 @@
|
|||
services:
|
||||
mariadb:
|
||||
image: mariadb:11.7.2
|
||||
container_name: mariadb
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: root#unl!853
|
||||
MYSQL_DATABASE: resilient_resilient
|
||||
MYSQL_USER: resDbUser
|
||||
MYSQL_PASSWORD: res#Db!Pwd%765
|
||||
ports:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- ./mariadb_data:/var/lib/mysql
|
||||
- ./config/my.cnf:/etc/mysql/conf.d/custom.cnf:ro # ':ro' means 'readonly', this is mandatory for MariaDB, or it will IGNORE the file
|
||||
|
||||
volumes:
|
||||
mariadb_data:
|
2
src/main/docker-mariadb/dumps/.keep
Normal file
2
src/main/docker-mariadb/dumps/.keep
Normal file
|
@ -0,0 +1,2 @@
|
|||
File to force directory commit into SVN.
|
||||
The content is SVN:IGNORED
|
2
src/main/docker-mariadb/mariadb_data/.keep
Normal file
2
src/main/docker-mariadb/mariadb_data/.keep
Normal file
|
@ -0,0 +1,2 @@
|
|||
File to force directory commit into SVN.
|
||||
The content is SVN:IGNORED
|
6
src/main/docker-mariadb/mariadb_data/.my-healthcheck.cnf
Normal file
6
src/main/docker-mariadb/mariadb_data/.my-healthcheck.cnf
Normal file
|
@ -0,0 +1,6 @@
|
|||
[mariadb-client]
|
||||
port=3306
|
||||
socket=/run/mysqld/mysqld.sock
|
||||
user=healthcheck
|
||||
password={lW`(KQ*F1l<VEqGq[hetMfeGkTQu2;)
|
||||
|
BIN
src/main/docker-mariadb/mariadb_data/aria_log.00000001
Normal file
BIN
src/main/docker-mariadb/mariadb_data/aria_log.00000001
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/aria_log_control
Normal file
BIN
src/main/docker-mariadb/mariadb_data/aria_log_control
Normal file
Binary file not shown.
148
src/main/docker-mariadb/mariadb_data/ib_buffer_pool
Normal file
148
src/main/docker-mariadb/mariadb_data/ib_buffer_pool
Normal file
|
@ -0,0 +1,148 @@
|
|||
7,3
|
||||
5,3
|
||||
4,3
|
||||
1,45
|
||||
3,44
|
||||
2,44
|
||||
1,44
|
||||
3,43
|
||||
2,43
|
||||
1,43
|
||||
3,42
|
||||
2,42
|
||||
1,42
|
||||
3,41
|
||||
2,41
|
||||
1,41
|
||||
3,40
|
||||
2,40
|
||||
1,40
|
||||
3,39
|
||||
2,39
|
||||
1,39
|
||||
3,38
|
||||
2,38
|
||||
1,38
|
||||
3,37
|
||||
2,37
|
||||
1,37
|
||||
3,36
|
||||
2,36
|
||||
1,36
|
||||
3,35
|
||||
2,35
|
||||
1,35
|
||||
3,34
|
||||
2,34
|
||||
1,34
|
||||
3,33
|
||||
2,33
|
||||
1,33
|
||||
3,32
|
||||
2,32
|
||||
1,32
|
||||
3,31
|
||||
2,31
|
||||
1,31
|
||||
3,30
|
||||
2,30
|
||||
1,30
|
||||
3,29
|
||||
2,29
|
||||
1,29
|
||||
3,28
|
||||
2,28
|
||||
1,28
|
||||
3,27
|
||||
2,27
|
||||
1,27
|
||||
3,26
|
||||
2,26
|
||||
1,26
|
||||
3,25
|
||||
2,25
|
||||
1,25
|
||||
3,24
|
||||
2,24
|
||||
1,24
|
||||
3,23
|
||||
2,23
|
||||
1,23
|
||||
3,22
|
||||
2,22
|
||||
1,22
|
||||
3,21
|
||||
2,21
|
||||
1,21
|
||||
3,20
|
||||
2,20
|
||||
1,20
|
||||
3,19
|
||||
2,19
|
||||
1,19
|
||||
3,18
|
||||
2,18
|
||||
1,18
|
||||
3,17
|
||||
2,17
|
||||
1,17
|
||||
3,16
|
||||
2,16
|
||||
1,16
|
||||
3,15
|
||||
2,15
|
||||
1,15
|
||||
3,14
|
||||
2,14
|
||||
1,14
|
||||
3,13
|
||||
2,13
|
||||
1,13
|
||||
3,12
|
||||
2,12
|
||||
1,12
|
||||
3,11
|
||||
2,11
|
||||
1,11
|
||||
3,10
|
||||
2,10
|
||||
1,10
|
||||
3,9
|
||||
2,9
|
||||
1,9
|
||||
3,8
|
||||
2,8
|
||||
1,8
|
||||
3,7
|
||||
2,7
|
||||
1,7
|
||||
3,6
|
||||
2,6
|
||||
1,6
|
||||
3,5
|
||||
2,5
|
||||
1,5
|
||||
3,4
|
||||
2,4
|
||||
1,4
|
||||
3,3
|
||||
3,0
|
||||
2,3
|
||||
2,0
|
||||
1,3
|
||||
1,0
|
||||
0,6
|
||||
0,0
|
||||
0,47
|
||||
0,46
|
||||
0,49
|
||||
0,48
|
||||
0,45
|
||||
0,12
|
||||
0,10
|
||||
0,8
|
||||
0,11
|
||||
0,5
|
||||
0,7
|
||||
0,4
|
||||
0,3
|
BIN
src/main/docker-mariadb/mariadb_data/ib_logfile0
Normal file
BIN
src/main/docker-mariadb/mariadb_data/ib_logfile0
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/ibdata1
Normal file
BIN
src/main/docker-mariadb/mariadb_data/ibdata1
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/ibtmp1
Normal file
BIN
src/main/docker-mariadb/mariadb_data/ibtmp1
Normal file
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
11.7.2-MariaDB
|
0
src/main/docker-mariadb/mariadb_data/multi-master.info
Normal file
0
src/main/docker-mariadb/mariadb_data/multi-master.info
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/column_stats.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/column_stats.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/column_stats.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/column_stats.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/column_stats.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/column_stats.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/columns_priv.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/columns_priv.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/columns_priv.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/columns_priv.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/columns_priv.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/columns_priv.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/db.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/db.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/db.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/db.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/db.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/db.frm
Normal file
Binary file not shown.
2
src/main/docker-mariadb/mariadb_data/mysql/db.opt
Normal file
2
src/main/docker-mariadb/mariadb_data/mysql/db.opt
Normal file
|
@ -0,0 +1,2 @@
|
|||
default-character-set=utf8mb4
|
||||
default-collation=utf8mb4_uca1400_ai_ci
|
BIN
src/main/docker-mariadb/mariadb_data/mysql/event.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/event.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/event.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/event.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/event.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/event.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/func.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/func.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/func.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/func.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/func.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/func.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/general_log.CSM
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/general_log.CSM
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/general_log.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/general_log.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/global_priv.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/global_priv.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/global_priv.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/global_priv.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/global_priv.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/global_priv.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/gtid_slave_pos.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/gtid_slave_pos.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/gtid_slave_pos.ibd
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/gtid_slave_pos.ibd
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_category.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_category.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_category.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_category.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_category.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_category.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_keyword.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_keyword.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_keyword.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_keyword.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_keyword.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_keyword.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_relation.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_relation.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_relation.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_relation.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_relation.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_relation.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_topic.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_topic.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_topic.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_topic.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_topic.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/help_topic.frm
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/index_stats.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/index_stats.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/index_stats.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/index_stats.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/index_stats.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/index_stats.frm
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/plugin.MAD
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/plugin.MAD
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/plugin.MAI
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/plugin.MAI
Normal file
Binary file not shown.
BIN
src/main/docker-mariadb/mariadb_data/mysql/plugin.frm
Normal file
BIN
src/main/docker-mariadb/mariadb_data/mysql/plugin.frm
Normal file
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue