diff --git a/.gitattributes b/.gitattributes
deleted file mode 100644
index 5ddd2a511..000000000
--- a/.gitattributes
+++ /dev/null
@@ -1,14 +0,0 @@
-
-*.sql linguist-detectable=true
-*.sql linguist-language=sql
-*.yml linguist-detectable=true
-*.yml linguist-language=yml
-*.yaml linguist-detectable=true
-*.yaml linguist-language=yaml
-*.json linguist-detectable=true
-*.json linguist-language=json
-*.xml linguist-detectable=true
-*.xml linguist-language=xml
-
-
-
diff --git a/.github/workflows/api-gateway-pipeline-dev-pr.yml b/.github/workflows/api-gateway-pipeline-dev-pr.yml
index 80e0836c5..cae993db3 100644
--- a/.github/workflows/api-gateway-pipeline-dev-pr.yml
+++ b/.github/workflows/api-gateway-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Develop, on PR Java CI/CD of api-gateway, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Develop, on PR Java CI/CD of api-gateway, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/api-gateway-pipeline-dev-push.yml b/.github/workflows/api-gateway-pipeline-dev-push.yml
index 7650bf445..404872f72 100644
--- a/.github/workflows/api-gateway-pipeline-dev-push.yml
+++ b/.github/workflows/api-gateway-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Develop, on PUSH Java CI/CD of api-gateway-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for api-gateway-ecommerce-boot Microservice
- run: docker build -f api-gateway/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push api-gateway-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Develop, on PUSH Java CI/CD of api-gateway-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for api-gateway-ecommerce-boot Microservice
+ run: docker build -f api-gateway/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push api-gateway-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/api-gateway-pipeline-prod-pr.yml b/.github/workflows/api-gateway-pipeline-prod-pr.yml
index 97b059d5f..b89621f02 100644
--- a/.github/workflows/api-gateway-pipeline-prod-pr.yml
+++ b/.github/workflows/api-gateway-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Prod, on PR Java CI/CD of api-gateway, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Prod, on PR Java CI/CD of api-gateway, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/api-gateway-pipeline-prod-push.yml b/.github/workflows/api-gateway-pipeline-prod-push.yml
index f5a06db5d..ece9afeca 100644
--- a/.github/workflows/api-gateway-pipeline-prod-push.yml
+++ b/.github/workflows/api-gateway-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of api-gateway-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for api-gateway-ecommerce-boot Microservice
- run: docker build -f api-gateway/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push api-gateway-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of api-gateway-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for api-gateway-ecommerce-boot Microservice
+ run: docker build -f api-gateway/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push api-gateway-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/api-gateway-pipeline-stage-pr.yml b/.github/workflows/api-gateway-pipeline-stage-pr.yml
index ca12270d8..0a1cda487 100644
--- a/.github/workflows/api-gateway-pipeline-stage-pr.yml
+++ b/.github/workflows/api-gateway-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of api-gateway, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of api-gateway, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/api-gateway-pipeline-stage-push.yml b/.github/workflows/api-gateway-pipeline-stage-push.yml
index 5fed6b320..9a9374e43 100644
--- a/.github/workflows/api-gateway-pipeline-stage-push.yml
+++ b/.github/workflows/api-gateway-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of api-gateway-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for api-gateway-ecommerce-boot Microservice
- run: docker build -f api-gateway/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push api-gateway-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Stage, on PUSH Java CI/CD of api-gateway-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for api-gateway-ecommerce-boot Microservice
+ run: docker build -f api-gateway/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push api-gateway-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/api-gateway-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/cloud-config-pipeline-dev-pr.yml b/.github/workflows/cloud-config-pipeline-dev-pr.yml
index ce6e97bc0..f3b47e4b4 100644
--- a/.github/workflows/cloud-config-pipeline-dev-pr.yml
+++ b/.github/workflows/cloud-config-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of cloud-gateway, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of cloud-gateway, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/cloud-config-pipeline-dev-push.yml b/.github/workflows/cloud-config-pipeline-dev-push.yml
index 242318ae2..89cd5c502 100644
--- a/.github/workflows/cloud-config-pipeline-dev-push.yml
+++ b/.github/workflows/cloud-config-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of cloud-config-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for cloud-config-ecommerce-boot Microservice
- run: docker build -f cloud-config/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push cloud-config-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Prod, on PUSH Java CI/CD of cloud-config-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for cloud-config-ecommerce-boot Microservice
+ run: docker build -f cloud-config/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push cloud-config-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/cloud-config-pipeline-prod-pr.yml b/.github/workflows/cloud-config-pipeline-prod-pr.yml
index db0e6313e..457af1d1f 100644
--- a/.github/workflows/cloud-config-pipeline-prod-pr.yml
+++ b/.github/workflows/cloud-config-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of cloud-gateway, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of cloud-gateway, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/cloud-config-pipeline-prod-push.yml b/.github/workflows/cloud-config-pipeline-prod-push.yml
index 2869ddf96..224e45c26 100644
--- a/.github/workflows/cloud-config-pipeline-prod-push.yml
+++ b/.github/workflows/cloud-config-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of cloud-config-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for cloud-config-ecommerce-boot Microservice
- run: docker build -f cloud-config/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push cloud-config-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of cloud-config-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for cloud-config-ecommerce-boot Microservice
+ run: docker build -f cloud-config/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push cloud-config-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/cloud-config-pipeline-stage-pr.yml b/.github/workflows/cloud-config-pipeline-stage-pr.yml
index f448bb16d..d146c6f57 100644
--- a/.github/workflows/cloud-config-pipeline-stage-pr.yml
+++ b/.github/workflows/cloud-config-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of cloud-gateway, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of cloud-gateway, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/cloud-config-pipeline-stage-push.yml b/.github/workflows/cloud-config-pipeline-stage-push.yml
index 962bb4a8a..4894d6708 100644
--- a/.github/workflows/cloud-config-pipeline-stage-push.yml
+++ b/.github/workflows/cloud-config-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of cloud-config-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for cloud-config-ecommerce-boot Microservice
- run: docker build -f cloud-config/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push cloud-config-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Prod, on PUSH Java CI/CD of cloud-config-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for cloud-config-ecommerce-boot Microservice
+ run: docker build -f cloud-config/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push cloud-config-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/cloud-config-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/favourite-service-pipeline-dev-pr.yml b/.github/workflows/favourite-service-pipeline-dev-pr.yml
index d075c7092..8bee8debf 100644
--- a/.github/workflows/favourite-service-pipeline-dev-pr.yml
+++ b/.github/workflows/favourite-service-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of favourite-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of favourite-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/favourite-service-pipeline-dev-push.yml b/.github/workflows/favourite-service-pipeline-dev-push.yml
index e40742278..4204e06e6 100644
--- a/.github/workflows/favourite-service-pipeline-dev-push.yml
+++ b/.github/workflows/favourite-service-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of favourite-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for favourite-service-ecommerce-boot Microservice
- run: docker build -f favourite-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push favourite-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Prod, on PUSH Java CI/CD of favourite-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for favourite-service-ecommerce-boot Microservice
+ run: docker build -f favourite-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push favourite-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/favourite-service-pipeline-prod-pr.yml b/.github/workflows/favourite-service-pipeline-prod-pr.yml
index d650ed18c..96d0f26ec 100644
--- a/.github/workflows/favourite-service-pipeline-prod-pr.yml
+++ b/.github/workflows/favourite-service-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of favourite-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of favourite-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/favourite-service-pipeline-prod-push.yml b/.github/workflows/favourite-service-pipeline-prod-push.yml
index 9402e25a0..64c3edf72 100644
--- a/.github/workflows/favourite-service-pipeline-prod-push.yml
+++ b/.github/workflows/favourite-service-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of favourite-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for favourite-service-ecommerce-boot Microservice
- run: docker build -f favourite-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push favourite-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of favourite-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for favourite-service-ecommerce-boot Microservice
+ run: docker build -f favourite-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push favourite-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/favourite-service-pipeline-stage-pr.yml b/.github/workflows/favourite-service-pipeline-stage-pr.yml
index cb9a5090d..aa647791e 100644
--- a/.github/workflows/favourite-service-pipeline-stage-pr.yml
+++ b/.github/workflows/favourite-service-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of favourite-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of favourite-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/favourite-service-pipeline-stage-push.yml b/.github/workflows/favourite-service-pipeline-stage-push.yml
index 072304cc9..f64264f56 100644
--- a/.github/workflows/favourite-service-pipeline-stage-push.yml
+++ b/.github/workflows/favourite-service-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of favourite-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for favourite-service-ecommerce-boot Microservice
- run: docker build -f favourite-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push favourite-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Prod, on PUSH Java CI/CD of favourite-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for favourite-service-ecommerce-boot Microservice
+ run: docker build -f favourite-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push favourite-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/favourite-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/order-service-pipeline-dev-pr.yml b/.github/workflows/order-service-pipeline-dev-pr.yml
index 82ab25df6..5eb1ef542 100644
--- a/.github/workflows/order-service-pipeline-dev-pr.yml
+++ b/.github/workflows/order-service-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of order-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of order-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/order-service-pipeline-dev-push.yml b/.github/workflows/order-service-pipeline-dev-push.yml
index d7731fec4..42161e4e5 100644
--- a/.github/workflows/order-service-pipeline-dev-push.yml
+++ b/.github/workflows/order-service-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of order-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for order-service-ecommerce-boot Microservice
- run: docker build -f order-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push order-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Prod, on PUSH Java CI/CD of order-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for order-service-ecommerce-boot Microservice
+ run: docker build -f order-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push order-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/order-service-pipeline-prod-pr.yml b/.github/workflows/order-service-pipeline-prod-pr.yml
index a86b3ff57..988ee43c1 100644
--- a/.github/workflows/order-service-pipeline-prod-pr.yml
+++ b/.github/workflows/order-service-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of order-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of order-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/order-service-pipeline-prod-push.yml b/.github/workflows/order-service-pipeline-prod-push.yml
index 855ec8ea8..c88ee94f8 100644
--- a/.github/workflows/order-service-pipeline-prod-push.yml
+++ b/.github/workflows/order-service-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of order-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for order-service-ecommerce-boot Microservice
- run: docker build -f order-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push order-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of order-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for order-service-ecommerce-boot Microservice
+ run: docker build -f order-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push order-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/order-service-pipeline-stage-pr.yml b/.github/workflows/order-service-pipeline-stage-pr.yml
index 46ef07c6a..b6059cbba 100644
--- a/.github/workflows/order-service-pipeline-stage-pr.yml
+++ b/.github/workflows/order-service-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of order-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of order-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/order-service-pipeline-stage-push.yml b/.github/workflows/order-service-pipeline-stage-push.yml
index 34d3ef1a8..78d3a4939 100644
--- a/.github/workflows/order-service-pipeline-stage-push.yml
+++ b/.github/workflows/order-service-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of order-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for order-service-ecommerce-boot Microservice
- run: docker build -f order-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push order-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Prod, on PUSH Java CI/CD of order-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for order-service-ecommerce-boot Microservice
+ run: docker build -f order-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push order-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/order-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/payment-service-pipeline-dev-pr.yml b/.github/workflows/payment-service-pipeline-dev-pr.yml
index 49242655b..9aa975107 100644
--- a/.github/workflows/payment-service-pipeline-dev-pr.yml
+++ b/.github/workflows/payment-service-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of payment-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of payment-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/payment-service-pipeline-dev-push.yml b/.github/workflows/payment-service-pipeline-dev-push.yml
index 6800aec86..237a34140 100644
--- a/.github/workflows/payment-service-pipeline-dev-push.yml
+++ b/.github/workflows/payment-service-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of payment-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for payment-service-ecommerce-boot Microservice
- run: docker build -f payment-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push payment-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Prod, on PUSH Java CI/CD of payment-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for payment-service-ecommerce-boot Microservice
+ run: docker build -f payment-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push payment-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/payment-service-pipeline-prod-pr.yml b/.github/workflows/payment-service-pipeline-prod-pr.yml
index e9ea6f92d..5a28db29d 100644
--- a/.github/workflows/payment-service-pipeline-prod-pr.yml
+++ b/.github/workflows/payment-service-pipeline-prod-pr.yml
@@ -1,22 +1,22 @@
-
-name: Stage, on PR Java CI/CD of payment-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of payment-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
\ No newline at end of file
diff --git a/.github/workflows/payment-service-pipeline-prod-push.yml b/.github/workflows/payment-service-pipeline-prod-push.yml
index 5f6456ffa..cc9243cf5 100644
--- a/.github/workflows/payment-service-pipeline-prod-push.yml
+++ b/.github/workflows/payment-service-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of payment-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for payment-service-ecommerce-boot Microservice
- run: docker build -f payment-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push payment-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of payment-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for payment-service-ecommerce-boot Microservice
+ run: docker build -f payment-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push payment-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/payment-service-pipeline-stage-pr.yml b/.github/workflows/payment-service-pipeline-stage-pr.yml
index 3b9e3ade3..a87333029 100644
--- a/.github/workflows/payment-service-pipeline-stage-pr.yml
+++ b/.github/workflows/payment-service-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of payment-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of payment-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/payment-service-pipeline-stage-push.yml b/.github/workflows/payment-service-pipeline-stage-push.yml
index b966416e0..74880bd45 100644
--- a/.github/workflows/payment-service-pipeline-stage-push.yml
+++ b/.github/workflows/payment-service-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of payment-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for payment-service-ecommerce-boot Microservice
- run: docker build -f payment-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push payment-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Prod, on PUSH Java CI/CD of payment-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for payment-service-ecommerce-boot Microservice
+ run: docker build -f payment-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push payment-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/payment-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/product-service-pipeline-dev-pr.yml b/.github/workflows/product-service-pipeline-dev-pr.yml
index 27abf9d42..67e230402 100644
--- a/.github/workflows/product-service-pipeline-dev-pr.yml
+++ b/.github/workflows/product-service-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of product-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of product-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/product-service-pipeline-dev-push.yml b/.github/workflows/product-service-pipeline-dev-push.yml
index 33b639efa..5a3ba19bd 100644
--- a/.github/workflows/product-service-pipeline-dev-push.yml
+++ b/.github/workflows/product-service-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of product-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for product-service-ecommerce-boot Microservice
- run: docker build -f product-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push product-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Prod, on PUSH Java CI/CD of product-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for product-service-ecommerce-boot Microservice
+ run: docker build -f product-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push product-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/product-service-pipeline-prod-pr.yml b/.github/workflows/product-service-pipeline-prod-pr.yml
index 0715d8c69..8ba90d3c6 100644
--- a/.github/workflows/product-service-pipeline-prod-pr.yml
+++ b/.github/workflows/product-service-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of product-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of product-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/product-service-pipeline-prod-push.yml b/.github/workflows/product-service-pipeline-prod-push.yml
index 2f21434ec..027be1234 100644
--- a/.github/workflows/product-service-pipeline-prod-push.yml
+++ b/.github/workflows/product-service-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of product-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for product-service-ecommerce-boot Microservice
- run: docker build -f product-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push product-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of product-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for product-service-ecommerce-boot Microservice
+ run: docker build -f product-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push product-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/product-service-pipeline-stage-pr.yml b/.github/workflows/product-service-pipeline-stage-pr.yml
index 95e6e7036..561de34dc 100644
--- a/.github/workflows/product-service-pipeline-stage-pr.yml
+++ b/.github/workflows/product-service-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of product-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of product-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/product-service-pipeline-stage-push.yml b/.github/workflows/product-service-pipeline-stage-push.yml
index 9d2f31c03..999a7ca15 100644
--- a/.github/workflows/product-service-pipeline-stage-push.yml
+++ b/.github/workflows/product-service-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of product-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for product-service-ecommerce-boot Microservice
- run: docker build -f product-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push product-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Prod, on PUSH Java CI/CD of product-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for product-service-ecommerce-boot Microservice
+ run: docker build -f product-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push product-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/product-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/proxy-client-pipeline-dev-pr.yml b/.github/workflows/proxy-client-pipeline-dev-pr.yml
index 432181a62..0f6661dc3 100644
--- a/.github/workflows/proxy-client-pipeline-dev-pr.yml
+++ b/.github/workflows/proxy-client-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Develop, on PR Java CI/CD of proxy-client, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Develop, on PR Java CI/CD of proxy-client, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/proxy-client-pipeline-dev-push.yml b/.github/workflows/proxy-client-pipeline-dev-push.yml
index 3ccf5b788..a348d9bab 100644
--- a/.github/workflows/proxy-client-pipeline-dev-push.yml
+++ b/.github/workflows/proxy-client-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Develop, on PUSH Java CI/CD of proxy-client-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for proxy-client-ecommerce-boot Microservice
- run: docker build -f proxy-client/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push proxy-client-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Develop, on PUSH Java CI/CD of proxy-client-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for proxy-client-ecommerce-boot Microservice
+ run: docker build -f proxy-client/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push proxy-client-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/proxy-client-pipeline-prod-pr.yml b/.github/workflows/proxy-client-pipeline-prod-pr.yml
index a427fc571..fcb3bfe5e 100644
--- a/.github/workflows/proxy-client-pipeline-prod-pr.yml
+++ b/.github/workflows/proxy-client-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Develop, on PR Java CI/CD of proxy-client, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Develop, on PR Java CI/CD of proxy-client, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/proxy-client-pipeline-prod-push.yml b/.github/workflows/proxy-client-pipeline-prod-push.yml
index 21667eb9d..bfc2bf3fe 100644
--- a/.github/workflows/proxy-client-pipeline-prod-push.yml
+++ b/.github/workflows/proxy-client-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Develop, on PUSH Java CI/CD of proxy-client-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for proxy-client-ecommerce-boot Microservice
- run: docker build -f proxy-client/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push proxy-client-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Develop, on PUSH Java CI/CD of proxy-client-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for proxy-client-ecommerce-boot Microservice
+ run: docker build -f proxy-client/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push proxy-client-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/proxy-client-pipeline-stage-pr.yml b/.github/workflows/proxy-client-pipeline-stage-pr.yml
index a942ad7fc..30fe4a44a 100644
--- a/.github/workflows/proxy-client-pipeline-stage-pr.yml
+++ b/.github/workflows/proxy-client-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Develop, on PR Java CI/CD of proxy-client, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Develop, on PR Java CI/CD of proxy-client, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/proxy-client-pipeline-stage-push.yml b/.github/workflows/proxy-client-pipeline-stage-push.yml
index 5bd23a72f..b4da58da8 100644
--- a/.github/workflows/proxy-client-pipeline-stage-push.yml
+++ b/.github/workflows/proxy-client-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Develop, on PUSH Java CI/CD of proxy-client-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for proxy-client-ecommerce-boot Microservice
- run: docker build -f proxy-client/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push proxy-client-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Develop, on PUSH Java CI/CD of proxy-client-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for proxy-client-ecommerce-boot Microservice
+ run: docker build -f proxy-client/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push proxy-client-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/proxy-client-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/service-discovery-pipeline-dev-pr.yml b/.github/workflows/service-discovery-pipeline-dev-pr.yml
index c2ea3c005..eb0cfa114 100644
--- a/.github/workflows/service-discovery-pipeline-dev-pr.yml
+++ b/.github/workflows/service-discovery-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Develop, on PR Java CI/CD of service-discovery, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Develop, on PR Java CI/CD of service-discovery, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/service-discovery-pipeline-dev-push.yml b/.github/workflows/service-discovery-pipeline-dev-push.yml
index ff37dad98..ac7ef13a2 100644
--- a/.github/workflows/service-discovery-pipeline-dev-push.yml
+++ b/.github/workflows/service-discovery-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Develop, on PUSH Java CI/CD of service-discovery-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for service-discovery-ecommerce-boot Microservice
- run: docker build -f service-discovery/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push service-discovery-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Develop, on PUSH Java CI/CD of service-discovery-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for service-discovery-ecommerce-boot Microservice
+ run: docker build -f service-discovery/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push service-discovery-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/service-discovery-pipeline-prod-pr.yml b/.github/workflows/service-discovery-pipeline-prod-pr.yml
index d98d1493f..3db38fda4 100644
--- a/.github/workflows/service-discovery-pipeline-prod-pr.yml
+++ b/.github/workflows/service-discovery-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Prod, on PR Java CI/CD of service-discovery, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Prod, on PR Java CI/CD of service-discovery, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/service-discovery-pipeline-prod-push.yml b/.github/workflows/service-discovery-pipeline-prod-push.yml
index c80f9b275..038f0832b 100644
--- a/.github/workflows/service-discovery-pipeline-prod-push.yml
+++ b/.github/workflows/service-discovery-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Prod, on PUSH Java CI/CD of service-discovery-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for service-discovery-ecommerce-boot Microservice
- run: docker build -f service-discovery/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push service-discovery-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Prod, on PUSH Java CI/CD of service-discovery-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for service-discovery-ecommerce-boot Microservice
+ run: docker build -f service-discovery/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push service-discovery-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/service-discovery-pipeline-stage-pr.yml b/.github/workflows/service-discovery-pipeline-stage-pr.yml
index 3b2f70c7c..29c303a90 100644
--- a/.github/workflows/service-discovery-pipeline-stage-pr.yml
+++ b/.github/workflows/service-discovery-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of service-discovery, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of service-discovery, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/service-discovery-pipeline-stage-push.yml b/.github/workflows/service-discovery-pipeline-stage-push.yml
index e490365ce..cfb8195cb 100644
--- a/.github/workflows/service-discovery-pipeline-stage-push.yml
+++ b/.github/workflows/service-discovery-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of service-discovery-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for service-discovery-ecommerce-boot Microservice
- run: docker build -f service-discovery/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push service-discovery-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Stage, on PUSH Java CI/CD of service-discovery-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for service-discovery-ecommerce-boot Microservice
+ run: docker build -f service-discovery/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push service-discovery-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/service-discovery-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/shipping-service-pipeline-dev-pr.yml b/.github/workflows/shipping-service-pipeline-dev-pr.yml
index 9cd3ec44a..beeb66bb8 100644
--- a/.github/workflows/shipping-service-pipeline-dev-pr.yml
+++ b/.github/workflows/shipping-service-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of shipping-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of shipping-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/shipping-service-pipeline-dev-push.yml b/.github/workflows/shipping-service-pipeline-dev-push.yml
index 5dc801ff5..902f62633 100644
--- a/.github/workflows/shipping-service-pipeline-dev-push.yml
+++ b/.github/workflows/shipping-service-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of shipping-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for shipping-service-ecommerce-boot Microservice
- run: docker build -f shipping-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push shipping-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Stage, on PUSH Java CI/CD of shipping-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for shipping-service-ecommerce-boot Microservice
+ run: docker build -f shipping-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push shipping-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/shipping-service-pipeline-prod-pr.yml b/.github/workflows/shipping-service-pipeline-prod-pr.yml
index 7c22bae52..a3c57d0be 100644
--- a/.github/workflows/shipping-service-pipeline-prod-pr.yml
+++ b/.github/workflows/shipping-service-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of shipping-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of shipping-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/shipping-service-pipeline-prod-push.yml b/.github/workflows/shipping-service-pipeline-prod-push.yml
index 3e07b4f28..a2b70ffbb 100644
--- a/.github/workflows/shipping-service-pipeline-prod-push.yml
+++ b/.github/workflows/shipping-service-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of shipping-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for shipping-service-ecommerce-boot Microservice
- run: docker build -f shipping-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push shipping-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Stage, on PUSH Java CI/CD of shipping-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for shipping-service-ecommerce-boot Microservice
+ run: docker build -f shipping-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push shipping-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/shipping-service-pipeline-stage-pr.yml b/.github/workflows/shipping-service-pipeline-stage-pr.yml
index 2447a0b9a..5663bb9aa 100644
--- a/.github/workflows/shipping-service-pipeline-stage-pr.yml
+++ b/.github/workflows/shipping-service-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of shipping-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of shipping-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/shipping-service-pipeline-stage-push.yml b/.github/workflows/shipping-service-pipeline-stage-push.yml
index 6c4ec225c..57f03f1ac 100644
--- a/.github/workflows/shipping-service-pipeline-stage-push.yml
+++ b/.github/workflows/shipping-service-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of shipping-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for shipping-service-ecommerce-boot Microservice
- run: docker build -f shipping-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push shipping-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Stage, on PUSH Java CI/CD of shipping-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for shipping-service-ecommerce-boot Microservice
+ run: docker build -f shipping-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push shipping-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/shipping-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.github/workflows/user-service-pipeline-dev-pr.yml b/.github/workflows/user-service-pipeline-dev-pr.yml
index d271f8642..282f80301 100644
--- a/.github/workflows/user-service-pipeline-dev-pr.yml
+++ b/.github/workflows/user-service-pipeline-dev-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of user-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ develop ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of user-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ develop ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/user-service-pipeline-dev-push.yml b/.github/workflows/user-service-pipeline-dev-push.yml
index b27c71bd2..0d7c49b85 100644
--- a/.github/workflows/user-service-pipeline-dev-push.yml
+++ b/.github/workflows/user-service-pipeline-dev-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of user-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ develop ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for user-service-ecommerce-boot Microservice
- run: docker build -f user-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
- - name: Push user-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
-
-
+
+name: Stage, on PUSH Java CI/CD of user-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ develop ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for user-service-ecommerce-boot Microservice
+ run: docker build -f user-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev .
+ - name: Push user-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}dev
+
+
diff --git a/.github/workflows/user-service-pipeline-prod-pr.yml b/.github/workflows/user-service-pipeline-prod-pr.yml
index a048fe1ed..cb46d131a 100644
--- a/.github/workflows/user-service-pipeline-prod-pr.yml
+++ b/.github/workflows/user-service-pipeline-prod-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of user-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ master ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of user-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/user-service-pipeline-prod-push.yml b/.github/workflows/user-service-pipeline-prod-push.yml
index ae58b153c..74faf6749 100644
--- a/.github/workflows/user-service-pipeline-prod-push.yml
+++ b/.github/workflows/user-service-pipeline-prod-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of user-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ master ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for user-service-ecommerce-boot Microservice
- run: docker build -f user-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
- - name: Push user-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
-
-
+
+name: Stage, on PUSH Java CI/CD of user-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ master ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for user-service-ecommerce-boot Microservice
+ run: docker build -f user-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }} .
+ - name: Push user-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}
+
+
diff --git a/.github/workflows/user-service-pipeline-stage-pr.yml b/.github/workflows/user-service-pipeline-stage-pr.yml
index f11ce58df..d36625a22 100644
--- a/.github/workflows/user-service-pipeline-stage-pr.yml
+++ b/.github/workflows/user-service-pipeline-stage-pr.yml
@@ -1,21 +1,21 @@
-
-name: Stage, on PR Java CI/CD of user-service, ecommerce-microservice-backend app
-
-on:
- pull_request:
- branches: [ stage ]
-
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
-
-
+
+name: Stage, on PR Java CI/CD of user-service, ecommerce-microservice-backend app
+
+on:
+ pull_request:
+ branches: [ stage ]
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+
+
diff --git a/.github/workflows/user-service-pipeline-stage-push.yml b/.github/workflows/user-service-pipeline-stage-push.yml
index 132f33fcc..dfba7e905 100644
--- a/.github/workflows/user-service-pipeline-stage-push.yml
+++ b/.github/workflows/user-service-pipeline-stage-push.yml
@@ -1,33 +1,33 @@
-
-name: Stage, on PUSH Java CI/CD of user-service-ecommerce-boot, ecommerce-microservice-backend app
-
-on:
- push:
- branches: [ stage ]
-
-jobs:
- build_push:
- #needs: build
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v2
- with:
- java-version: '11'
- distribution: 'adopt'
- - name: Build with Maven
- run: mvn -B package --file pom.xml
- - name: Setup env variables for Docker
- run: echo Setup env variables for Docker
- env:
- DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
- DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
- - name: Docker Login
- run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
- - name: Build Docker image for user-service-ecommerce-boot Microservice
- run: docker build -f user-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
- - name: Push user-service-ecommerce-boot image
- run: docker push ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
-
-
+
+name: Stage, on PUSH Java CI/CD of user-service-ecommerce-boot, ecommerce-microservice-backend app
+
+on:
+ push:
+ branches: [ stage ]
+
+jobs:
+ build_push:
+ #needs: build
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up JDK 11
+ uses: actions/setup-java@v2
+ with:
+ java-version: '11'
+ distribution: 'adopt'
+ - name: Build with Maven
+ run: mvn -B package --file pom.xml
+ - name: Setup env variables for Docker
+ run: echo Setup env variables for Docker
+ env:
+ DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
+ DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
+ - name: Docker Login
+ run: echo ${{ secrets.DOCKER_PASSWORD }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
+ - name: Build Docker image for user-service-ecommerce-boot Microservice
+ run: docker build -f user-service/Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage .
+ - name: Push user-service-ecommerce-boot image
+ run: docker push ${{ secrets.DOCKER_USERNAME }}/user-service-ecommerce-boot:${{ secrets.PROJECT_VERSION }}stage
+
+
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/.mvn/wrapper/MavenWrapperDownloader.java b/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/.mvn/wrapper/maven-wrapper.jar b/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/README.md b/README.md
deleted file mode 100644
index 1d4a67936..000000000
--- a/README.md
+++ /dev/null
@@ -1,621 +0,0 @@
-# e-Commerce-boot μServices
-
-## Important Note: This project's new milestone is to move The whole system to work on Kubernetes, so stay tuned.
-
-
-## Introduction
-- This project is a development of a small set of **Spring Boot** and **Cloud** based Microservices projects that implement cloud-native intuitive, Reactive Programming, Event-driven, Microservices design patterns, and coding best practices.
-- The project follows **CloudNative** recommendations and The [**twelve-factor app**](https://12factor.net/) methodology for building *software-as-a-service apps* to show how μServices should be developed and deployed.
-- This project uses cutting edge technologies like Docker, Kubernetes, Elasticsearch Stack for
- logging and monitoring, Java SE 11, H2, and MySQL databases, all components developed with TDD in mind, covering integration & performance testing, and many more.
- - This project is going to be developed as stages, and all such stage steps are documented under
- the project **e-Commerce-boot μServices** **README** file .
----
-## Getting started
-### System components Structure
-Let's explain first the system structure to understand its components:
-```
-ecommerce-microservice-backend-app [μService] --> Parent folder.
-|- docs --> All docs and diagrams.
-|- k8s --> All **Kubernetes** config files.
- |- proxy-client --> Authentication & Authorization µService, exposing all
- |- api-gateway --> API Gateway server
- |- service-discovery --> Service Registery server
- |- cloud-config --> Centralized Configuration server
- |- user-service --> Manage app users (customers & admins) as well as their credentials
- |- product-service --> Manage app products and their respective categories
- |- favourite-service --> Manage app users' favourite products added to their own favourite list
- |- order-service --> Manage app orders based on carts
- |- shipping-service --> Manage app order-shipping products
- |- payment-service --> Manage app order payments
-|- compose.yml --> contains all services landscape with Kafka
-|- run-em-all.sh --> Run all microservices in separate mode.
-|- setup.sh --> Install all shared POMs and shared libraries.
-|- stop-em-all.sh --> Stop all services runs in standalone mode.
-|- test-em-all.sh --> This will start all docker compose landscape and test them, then shutdown docker compose containers with test finishes (use switch start stop)
-```
-Now, as we have learned about different system components, then let's start.
-
-### System Boundary *Architecture* - μServices Landscape
-
-
-
-### Required software
-
-The following are the initially required software pieces:
-
-1. **Java 11**: JDK 11 LTS can be downloaded and installed from https://www.oracle.com/java/technologies/javase/jdk11-archive-downloads.html
-
-1. **Git**: it can be downloaded and installed from https://git-scm.com/downloads
-
-1. **Maven**: Apache Maven is a software project management and comprehension tool, it can be downloaded from here https://maven.apache.org/download.cgi
-
-1. **curl**: this command-line tool for testing HTTP-based APIs can be downloaded and installed from https://curl.haxx.se/download.html
-
-1. **jq**: This command-line JSON processor can be downloaded and installed from https://stedolan.github.io/jq/download/
-
-1. **Spring Boot Initializer**: This *Initializer* generates *spring* boot project with just what you need to start quickly! Start from here https://start.spring.io/
-
-1. **Docker**: The fastest way to containerize applications on your desktop, and you can download it from here [https://www.docker.com/products/docker-desktop](https://www.docker.com/products/docker-desktop)
-
-1. **Kubernetes**: We can install **minikube** for testing puposes https://minikube.sigs.k8s.io/docs/start/
-
- > For each future stage, I will list the newly required software.
-
-Follow the installation guide for each software website link and check your software versions from the command line to verify that they are all installed correctly.
-
-## Using an IDE
-
-I recommend that you work with your Java code using an IDE that supports the development of Spring Boot applications such as Spring Tool Suite or IntelliJ IDEA Ultimate Edition. So you can use the Spring Boot Dashboard to run the services, run each microservice test case, and many more.
-
-All that you want to do is just fire up your IDE **->** open or import the parent folder `ecommerce-microservice-backend-app`, and everything will be ready for you.
-
-## Data Model
-### Entity-Relationship-Diagram
-
-
-## Playing With e-Commerce-boot Project
-
-### Cloning It
-
-The first thing to do is to open **git bash** command line, and then simply you can clone the project under any of your favorite places as the following:
-
-```bash
-> git clone https://github.com/SelimHorri/ecommerce-microservice-backend-app.git
-```
-
-### Build & Test Them In Isolation
-
-To build and run the test cases for each service & shared modules in the project, we need to do the following:
-
-#### Build & Test µServices
-Now it is the time to build our **10 microservices** and run each service integration test in
- isolation by running the following commands:
-
-```bash
-selim@:~/ecommerce-microservice-backend-app$ ./mvnw clean package
-```
-
-All build commands and test suite for each microservice should run successfully, and the final output should be like this:
-
-```bash
----------------< com.selimhorri.app:ecommerce-microservice-backend >-----------
-[INFO] ------------------------------------------------------------------------
-[INFO] Reactor Summary for ecommerce-microservice-backend 0.1.0:
-[INFO]
-[INFO] ecommerce-microservice-backend ..................... SUCCESS [ 0.548 s]
-[INFO] service-discovery .................................. SUCCESS [ 3.126 s]
-[INFO] cloud-config ....................................... SUCCESS [ 1.595 s]
-[INFO] api-gateway ........................................ SUCCESS [ 1.697 s]
-[INFO] proxy-client ....................................... SUCCESS [ 3.632 s]
-[INFO] user-service ....................................... SUCCESS [ 2.546 s]
-[INFO] product-service .................................... SUCCESS [ 2.214 s]
-[INFO] favourite-service .................................. SUCCESS [ 2.072 s]
-[INFO] order-service ...................................... SUCCESS [ 2.241 s]
-[INFO] shipping-service ................................... SUCCESS [ 2.197 s]
-[INFO] payment-service .................................... SUCCESS [ 2.006 s]
-[INFO] ------------------------------------------------------------------------
-[INFO] BUILD SUCCESS
-[INFO] ------------------------------------------------------------------------
-[INFO] Total time: 24.156 s
-[INFO] Finished at: 2021-12-29T19:52:57+01:00
-[INFO] ------------------------------------------------------------------------
-```
-
-### Running Them All
-Now it's the time to run all of our Microservices, and it's straightforward just run the following `docker-compose` commands:
-
-```bash
-selim@:~/ecommerce-microservice-backend-app$ docker-compose -f compose.yml up
-```
-
-All the **services**, **databases**, and **messaging service** will run in parallel in detach mode (option `-d`), and command output will print to the console the following:
-
-```bash
-Creating network "ecommerce-microservice-backend-app_default" with the default driver
-Creating ecommerce-microservice-backend-app_api-gateway-container_1 ... done
-Creating ecommerce-microservice-backend-app_favourite-service-container_1 ... done
-Creating ecommerce-microservice-backend-app_service-discovery-container_1 ... done
-Creating ecommerce-microservice-backend-app_shipping-service-container_1 ... done
-Creating ecommerce-microservice-backend-app_order-service-container_1 ... done
-Creating ecommerce-microservice-backend-app_user-service-container_1 ... done
-Creating ecommerce-microservice-backend-app_payment-service-container_1 ... done
-Creating ecommerce-microservice-backend-app_product-service-container_1 ... done
-Creating ecommerce-microservice-backend-app_proxy-client-container_1 ... done
-Creating ecommerce-microservice-backend-app_zipkin-container_1 ... done
-Creating ecommerce-microservice-backend-app_cloud-config-container_1 ... done
-```
-### Access proxy-client APIs
-You can manually test `proxy-client` APIs throughout its **Swagger** interface at the following
- URL [https://localhost:8900/swagger-ui.html](https://localhost:8900/swagger-ui.html).
-### Access Service Discovery Server (Eureka)
-If you would like to access the Eureka service discovery point to this URL [http://localhosts:8761/eureka](https://localhost:8761/eureka) to see all the services registered inside it.
-
-### Access user-service APIs
- URL [https://localhost:8700/swagger-ui.html](https://localhost:8700/swagger-ui.html).
-
-
-The **API Gateway** and **Store Service** both act as a *resource server*.
-
-#### Check all **Spring Boot Actuator** exposed metrics http://localhost:8080/app/actuator/metrics:
-
-```bash
-{
- "names": [
- "http.server.requests",
- "jvm.buffer.count",
- "jvm.buffer.memory.used",
- "jvm.buffer.total.capacity",
- "jvm.classes.loaded",
- "jvm.classes.unloaded",
- "jvm.gc.live.data.size",
- "jvm.gc.max.data.size",
- "jvm.gc.memory.allocated",
- "jvm.gc.memory.promoted",
- "jvm.gc.pause",
- "jvm.memory.committed",
- "jvm.memory.max",
- "jvm.memory.used",
- "jvm.threads.daemon",
- "jvm.threads.live",
- "jvm.threads.peak",
- "jvm.threads.states",
- "logback.events",
- "process.cpu.usage",
- "process.files.max",
- "process.files.open",
- "process.start.time",
- "process.uptime",
- "resilience4j.circuitbreaker.buffered.calls",
- "resilience4j.circuitbreaker.calls",
- "resilience4j.circuitbreaker.failure.rate",
- "resilience4j.circuitbreaker.not.permitted.calls",
- "resilience4j.circuitbreaker.slow.call.rate",
- "resilience4j.circuitbreaker.slow.calls",
- "resilience4j.circuitbreaker.state",
- "system.cpu.count",
- "system.cpu.usage",
- "system.load.average.1m",
- "tomcat.sessions.active.current",
- "tomcat.sessions.active.max",
- "tomcat.sessions.alive.max",
- "tomcat.sessions.created",
- "tomcat.sessions.expired",
- "tomcat.sessions.rejected",
- "zipkin.reporter.messages",
- "zipkin.reporter.messages.dropped",
- "zipkin.reporter.messages.total",
- "zipkin.reporter.queue.bytes",
- "zipkin.reporter.queue.spans",
- "zipkin.reporter.spans",
- "zipkin.reporter.spans.dropped",
- "zipkin.reporter.spans.total"
- ]
-}
-```
-
-#### Prometheus exposed metrics at http://localhost:8080/app/actuator/prometheus
-
-```bash
-# HELP resilience4j_circuitbreaker_not_permitted_calls_total Total number of not permitted calls
-# TYPE resilience4j_circuitbreaker_not_permitted_calls_total counter
-resilience4j_circuitbreaker_not_permitted_calls_total{kind="not_permitted",name="proxyService",} 0.0
-# HELP jvm_gc_live_data_size_bytes Size of long-lived heap memory pool after reclamation
-# TYPE jvm_gc_live_data_size_bytes gauge
-jvm_gc_live_data_size_bytes 3721880.0
-# HELP jvm_gc_pause_seconds Time spent in GC pause
-# TYPE jvm_gc_pause_seconds summary
-jvm_gc_pause_seconds_count{action="end of minor GC",cause="Metadata GC Threshold",} 1.0
-jvm_gc_pause_seconds_sum{action="end of minor GC",cause="Metadata GC Threshold",} 0.071
-jvm_gc_pause_seconds_count{action="end of minor GC",cause="G1 Evacuation Pause",} 6.0
-jvm_gc_pause_seconds_sum{action="end of minor GC",cause="G1 Evacuation Pause",} 0.551
-# HELP jvm_gc_pause_seconds_max Time spent in GC pause
-# TYPE jvm_gc_pause_seconds_max gauge
-jvm_gc_pause_seconds_max{action="end of minor GC",cause="Metadata GC Threshold",} 0.071
-jvm_gc_pause_seconds_max{action="end of minor GC",cause="G1 Evacuation Pause",} 0.136
-# HELP system_cpu_usage The "recent cpu usage" for the whole system
-# TYPE system_cpu_usage gauge
-system_cpu_usage 0.4069206655413552
-# HELP jvm_buffer_total_capacity_bytes An estimate of the total capacity of the buffers in this pool
-# TYPE jvm_buffer_total_capacity_bytes gauge
-jvm_buffer_total_capacity_bytes{id="mapped",} 0.0
-jvm_buffer_total_capacity_bytes{id="direct",} 24576.0
-# HELP zipkin_reporter_spans_dropped_total Spans dropped (failed to report)
-# TYPE zipkin_reporter_spans_dropped_total counter
-zipkin_reporter_spans_dropped_total 4.0
-# HELP zipkin_reporter_spans_bytes_total Total bytes of encoded spans reported
-# TYPE zipkin_reporter_spans_bytes_total counter
-zipkin_reporter_spans_bytes_total 1681.0
-# HELP tomcat_sessions_active_current_sessions
-# TYPE tomcat_sessions_active_current_sessions gauge
-tomcat_sessions_active_current_sessions 0.0
-# HELP jvm_classes_loaded_classes The number of classes that are currently loaded in the Java virtual machine
-# TYPE jvm_classes_loaded_classes gauge
-jvm_classes_loaded_classes 13714.0
-# HELP process_files_open_files The open file descriptor count
-# TYPE process_files_open_files gauge
-process_files_open_files 17.0
-# HELP resilience4j_circuitbreaker_slow_call_rate The slow call of the circuit breaker
-# TYPE resilience4j_circuitbreaker_slow_call_rate gauge
-resilience4j_circuitbreaker_slow_call_rate{name="proxyService",} -1.0
-# HELP system_cpu_count The number of processors available to the Java virtual machine
-# TYPE system_cpu_count gauge
-system_cpu_count 8.0
-# HELP jvm_threads_daemon_threads The current number of live daemon threads
-# TYPE jvm_threads_daemon_threads gauge
-jvm_threads_daemon_threads 21.0
-# HELP zipkin_reporter_messages_total Messages reported (or attempted to be reported)
-# TYPE zipkin_reporter_messages_total counter
-zipkin_reporter_messages_total 2.0
-# HELP zipkin_reporter_messages_dropped_total
-# TYPE zipkin_reporter_messages_dropped_total counter
-zipkin_reporter_messages_dropped_total{cause="ResourceAccessException",} 2.0
-# HELP zipkin_reporter_messages_bytes_total Total bytes of messages reported
-# TYPE zipkin_reporter_messages_bytes_total counter
-zipkin_reporter_messages_bytes_total 1368.0
-# HELP http_server_requests_seconds
-# TYPE http_server_requests_seconds summary
-http_server_requests_seconds_count{exception="None",method="GET",outcome="SUCCESS",status="200",uri="/actuator/metrics",} 1.0
-http_server_requests_seconds_sum{exception="None",method="GET",outcome="SUCCESS",status="200",uri="/actuator/metrics",} 1.339804427
-http_server_requests_seconds_count{exception="None",method="GET",outcome="SUCCESS",status="200",uri="/actuator/prometheus",} 1.0
-http_server_requests_seconds_sum{exception="None",method="GET",outcome="SUCCESS",status="200",uri="/actuator/prometheus",} 0.053689381
-# HELP http_server_requests_seconds_max
-# TYPE http_server_requests_seconds_max gauge
-http_server_requests_seconds_max{exception="None",method="GET",outcome="SUCCESS",status="200",uri="/actuator/metrics",} 1.339804427
-http_server_requests_seconds_max{exception="None",method="GET",outcome="SUCCESS",status="200",uri="/actuator/prometheus",} 0.053689381
-# HELP resilience4j_circuitbreaker_slow_calls The number of slow successful which were slower than a certain threshold
-# TYPE resilience4j_circuitbreaker_slow_calls gauge
-resilience4j_circuitbreaker_slow_calls{kind="successful",name="proxyService",} 0.0
-resilience4j_circuitbreaker_slow_calls{kind="failed",name="proxyService",} 0.0
-# HELP jvm_classes_unloaded_classes_total The total number of classes unloaded since the Java virtual machine has started execution
-# TYPE jvm_classes_unloaded_classes_total counter
-jvm_classes_unloaded_classes_total 0.0
-# HELP process_files_max_files The maximum file descriptor count
-# TYPE process_files_max_files gauge
-process_files_max_files 1048576.0
-# HELP resilience4j_circuitbreaker_calls_seconds Total number of successful calls
-# TYPE resilience4j_circuitbreaker_calls_seconds summary
-resilience4j_circuitbreaker_calls_seconds_count{kind="successful",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_sum{kind="successful",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_count{kind="failed",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_sum{kind="failed",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_count{kind="ignored",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_sum{kind="ignored",name="proxyService",} 0.0
-# HELP resilience4j_circuitbreaker_calls_seconds_max Total number of successful calls
-# TYPE resilience4j_circuitbreaker_calls_seconds_max gauge
-resilience4j_circuitbreaker_calls_seconds_max{kind="successful",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_max{kind="failed",name="proxyService",} 0.0
-resilience4j_circuitbreaker_calls_seconds_max{kind="ignored",name="proxyService",} 0.0
-# HELP zipkin_reporter_spans_total Spans reported
-# TYPE zipkin_reporter_spans_total counter
-zipkin_reporter_spans_total 5.0
-# HELP zipkin_reporter_queue_bytes Total size of all encoded spans queued for reporting
-# TYPE zipkin_reporter_queue_bytes gauge
-zipkin_reporter_queue_bytes 0.0
-# HELP tomcat_sessions_expired_sessions_total
-# TYPE tomcat_sessions_expired_sessions_total counter
-tomcat_sessions_expired_sessions_total 0.0
-# HELP tomcat_sessions_alive_max_seconds
-# TYPE tomcat_sessions_alive_max_seconds gauge
-tomcat_sessions_alive_max_seconds 0.0
-# HELP process_uptime_seconds The uptime of the Java virtual machine
-# TYPE process_uptime_seconds gauge
-process_uptime_seconds 224.402
-# HELP tomcat_sessions_active_max_sessions
-# TYPE tomcat_sessions_active_max_sessions gauge
-tomcat_sessions_active_max_sessions 0.0
-# HELP process_cpu_usage The "recent cpu usage" for the Java Virtual Machine process
-# TYPE process_cpu_usage gauge
-process_cpu_usage 5.625879043600563E-4
-# HELP jvm_gc_memory_promoted_bytes_total Count of positive increases in the size of the old generation memory pool before GC to after GC
-# TYPE jvm_gc_memory_promoted_bytes_total counter
-jvm_gc_memory_promoted_bytes_total 1.7851088E7
-# HELP logback_events_total Number of error level events that made it to the logs
-# TYPE logback_events_total counter
-logback_events_total{level="warn",} 5.0
-logback_events_total{level="debug",} 79.0
-logback_events_total{level="error",} 0.0
-logback_events_total{level="trace",} 0.0
-logback_events_total{level="info",} 60.0
-# HELP tomcat_sessions_created_sessions_total
-# TYPE tomcat_sessions_created_sessions_total counter
-tomcat_sessions_created_sessions_total 0.0
-# HELP jvm_threads_live_threads The current number of live threads including both daemon and non-daemon threads
-# TYPE jvm_threads_live_threads gauge
-jvm_threads_live_threads 25.0
-# HELP jvm_threads_states_threads The current number of threads having NEW state
-# TYPE jvm_threads_states_threads gauge
-jvm_threads_states_threads{state="runnable",} 6.0
-jvm_threads_states_threads{state="blocked",} 0.0
-jvm_threads_states_threads{state="waiting",} 8.0
-jvm_threads_states_threads{state="timed-waiting",} 11.0
-jvm_threads_states_threads{state="new",} 0.0
-jvm_threads_states_threads{state="terminated",} 0.0
-# HELP tomcat_sessions_rejected_sessions_total
-# TYPE tomcat_sessions_rejected_sessions_total counter
-tomcat_sessions_rejected_sessions_total 0.0
-# HELP process_start_time_seconds Start time of the process since unix epoch.
-# TYPE process_start_time_seconds gauge
-process_start_time_seconds 1.64088634006E9
-# HELP resilience4j_circuitbreaker_buffered_calls The number of buffered failed calls stored in the ring buffer
-# TYPE resilience4j_circuitbreaker_buffered_calls gauge
-resilience4j_circuitbreaker_buffered_calls{kind="successful",name="proxyService",} 0.0
-resilience4j_circuitbreaker_buffered_calls{kind="failed",name="proxyService",} 0.0
-# HELP jvm_memory_max_bytes The maximum amount of memory in bytes that can be used for memory management
-# TYPE jvm_memory_max_bytes gauge
-jvm_memory_max_bytes{area="nonheap",id="CodeHeap 'profiled nmethods'",} 1.22908672E8
-jvm_memory_max_bytes{area="heap",id="G1 Survivor Space",} -1.0
-jvm_memory_max_bytes{area="heap",id="G1 Old Gen",} 5.182062592E9
-jvm_memory_max_bytes{area="nonheap",id="Metaspace",} -1.0
-jvm_memory_max_bytes{area="nonheap",id="CodeHeap 'non-nmethods'",} 5836800.0
-jvm_memory_max_bytes{area="heap",id="G1 Eden Space",} -1.0
-jvm_memory_max_bytes{area="nonheap",id="Compressed Class Space",} 1.073741824E9
-jvm_memory_max_bytes{area="nonheap",id="CodeHeap 'non-profiled nmethods'",} 1.22912768E8
-# HELP jvm_memory_committed_bytes The amount of memory in bytes that is committed for the Java virtual machine to use
-# TYPE jvm_memory_committed_bytes gauge
-jvm_memory_committed_bytes{area="nonheap",id="CodeHeap 'profiled nmethods'",} 1.6646144E7
-jvm_memory_committed_bytes{area="heap",id="G1 Survivor Space",} 2.4117248E7
-jvm_memory_committed_bytes{area="heap",id="G1 Old Gen",} 1.7301504E8
-jvm_memory_committed_bytes{area="nonheap",id="Metaspace",} 7.6857344E7
-jvm_memory_committed_bytes{area="nonheap",id="CodeHeap 'non-nmethods'",} 2555904.0
-jvm_memory_committed_bytes{area="heap",id="G1 Eden Space",} 2.71581184E8
-jvm_memory_committed_bytes{area="nonheap",id="Compressed Class Space",} 1.0354688E7
-jvm_memory_committed_bytes{area="nonheap",id="CodeHeap 'non-profiled nmethods'",} 6619136.0
-# HELP jvm_memory_used_bytes The amount of used memory
-# TYPE jvm_memory_used_bytes gauge
-jvm_memory_used_bytes{area="nonheap",id="CodeHeap 'profiled nmethods'",} 1.6585088E7
-jvm_memory_used_bytes{area="heap",id="G1 Survivor Space",} 2.4117248E7
-jvm_memory_used_bytes{area="heap",id="G1 Old Gen",} 2.0524392E7
-jvm_memory_used_bytes{area="nonheap",id="Metaspace",} 7.4384552E7
-jvm_memory_used_bytes{area="nonheap",id="CodeHeap 'non-nmethods'",} 1261696.0
-jvm_memory_used_bytes{area="heap",id="G1 Eden Space",} 2.5165824E7
-jvm_memory_used_bytes{area="nonheap",id="Compressed Class Space",} 9365664.0
-jvm_memory_used_bytes{area="nonheap",id="CodeHeap 'non-profiled nmethods'",} 6604416.0
-# HELP system_load_average_1m The sum of the number of runnable entities queued to available processors and the number of runnable entities running on the available processors averaged over a period of time
-# TYPE system_load_average_1m gauge
-system_load_average_1m 8.68
-# HELP resilience4j_circuitbreaker_state The states of the circuit breaker
-# TYPE resilience4j_circuitbreaker_state gauge
-resilience4j_circuitbreaker_state{name="proxyService",state="forced_open",} 0.0
-resilience4j_circuitbreaker_state{name="proxyService",state="closed",} 1.0
-resilience4j_circuitbreaker_state{name="proxyService",state="disabled",} 0.0
-resilience4j_circuitbreaker_state{name="proxyService",state="open",} 0.0
-resilience4j_circuitbreaker_state{name="proxyService",state="half_open",} 0.0
-resilience4j_circuitbreaker_state{name="proxyService",state="metrics_only",} 0.0
-# HELP jvm_buffer_memory_used_bytes An estimate of the memory that the Java virtual machine is using for this buffer pool
-# TYPE jvm_buffer_memory_used_bytes gauge
-jvm_buffer_memory_used_bytes{id="mapped",} 0.0
-jvm_buffer_memory_used_bytes{id="direct",} 24576.0
-# HELP resilience4j_circuitbreaker_failure_rate The failure rate of the circuit breaker
-# TYPE resilience4j_circuitbreaker_failure_rate gauge
-resilience4j_circuitbreaker_failure_rate{name="proxyService",} -1.0
-# HELP zipkin_reporter_queue_spans Spans queued for reporting
-# TYPE zipkin_reporter_queue_spans gauge
-zipkin_reporter_queue_spans 0.0
-# HELP jvm_gc_memory_allocated_bytes_total Incremented for an increase in the size of the (young) heap memory pool after one GC to before the next
-# TYPE jvm_gc_memory_allocated_bytes_total counter
-jvm_gc_memory_allocated_bytes_total 1.402994688E9
-# HELP jvm_buffer_count_buffers An estimate of the number of buffers in the pool
-# TYPE jvm_buffer_count_buffers gauge
-jvm_buffer_count_buffers{id="mapped",} 0.0
-jvm_buffer_count_buffers{id="direct",} 3.0
-# HELP jvm_threads_peak_threads The peak live thread count since the Java virtual machine started or peak was reset
-# TYPE jvm_threads_peak_threads gauge
-jvm_threads_peak_threads 25.0
-# HELP jvm_gc_max_data_size_bytes Max size of long-lived heap memory pool
-# TYPE jvm_gc_max_data_size_bytes gauge
-jvm_gc_max_data_size_bytes 5.182062592E9
-```
-
-#### Check All Services Health
-From ecommerce front Service proxy we can check all the core services health when you have all the
- microservices up and running using Docker Compose,
-```bash
-selim@:~/ecommerce-microservice-backend-app$ curl -k https://localhost:8443/actuator/health -s | jq .components."\"Core Microservices\""
-```
-This will result in the following response:
-```json
-{
- "status": "UP",
- "components": {
- "circuitBreakers": {
- "status": "UP",
- "details": {
- "proxyService": {
- "status": "UP",
- "details": {
- "failureRate": "-1.0%",
- "failureRateThreshold": "50.0%",
- "slowCallRate": "-1.0%",
- "slowCallRateThreshold": "100.0%",
- "bufferedCalls": 0,
- "slowCalls": 0,
- "slowFailedCalls": 0,
- "failedCalls": 0,
- "notPermittedCalls": 0,
- "state": "CLOSED"
- }
- }
- }
- },
- "clientConfigServer": {
- "status": "UNKNOWN",
- "details": {
- "error": "no property sources located"
- }
- },
- "discoveryComposite": {
- "status": "UP",
- "components": {
- "discoveryClient": {
- "status": "UP",
- "details": {
- "services": [
- "proxy-client",
- "api-gateway",
- "cloud-config",
- "product-service",
- "user-service",
- "favourite-service",
- "order-service",
- "payment-service",
- "shipping-service"
- ]
- }
- },
- "eureka": {
- "description": "Remote status from Eureka server",
- "status": "UP",
- "details": {
- "applications": {
- "FAVOURITE-SERVICE": 1,
- "PROXY-CLIENT": 1,
- "API-GATEWAY": 1,
- "PAYMENT-SERVICE": 1,
- "ORDER-SERVICE": 1,
- "CLOUD-CONFIG": 1,
- "PRODUCT-SERVICE": 1,
- "SHIPPING-SERVICE": 1,
- "USER-SERVICE": 1
- }
- }
- }
- }
- },
- "diskSpace": {
- "status": "UP",
- "details": {
- "total": 981889826816,
- "free": 325116776448,
- "threshold": 10485760,
- "exists": true
- }
- },
- "ping": {
- "status": "UP"
- },
- "refreshScope": {
- "status": "UP"
- }
- }
-}
-```
-### Testing Them All
-Now it's time to test all the application functionality as one part. To do so just run
- the following automation test script:
-
-```bash
-selim@:~/ecommerce-microservice-backend-app$ ./test-em-all.sh start
-```
-> You can use `stop` switch with `start`, that will
->1. start docker,
->2. run the tests,
->3. stop the docker instances.
-
-The result will look like this:
-
-```bash
-Starting 'ecommerce-microservice-backend-app' for [Blackbox] testing...
-
-Start Tests: Tue, May 31, 2020 2:09:36 AM
-HOST=localhost
-PORT=8080
-Restarting the test environment...
-$ docker-compose -p -f compose.yml down --remove-orphans
-$ docker-compose -p -f compose.yml up -d
-Wait for: curl -k https://localhost:8080/actuator/health... , retry #1 , retry #2, {"status":"UP"} DONE, continues...
-Test OK (HTTP Code: 200)
-...
-Test OK (actual value: 1)
-Test OK (actual value: 3)
-Test OK (actual value: 3)
-Test OK (HTTP Code: 404, {"httpStatus":"NOT_FOUND","message":"No product found for productId: 13","path":"/app/api/products/20","time":"2020-04-12@12:34:25.144+0000"})
-...
-Test OK (actual value: 3)
-Test OK (actual value: 0)
-Test OK (HTTP Code: 422, {"httpStatus":"UNPROCESSABLE_ENTITY","message":"Invalid productId: -1","path":"/app/api/products/-1","time":"2020-04-12@12:34:26.243+0000"})
-Test OK (actual value: "Invalid productId: -1")
-Test OK (HTTP Code: 400, {"timestamp":"2020-04-12T12:34:26.471+00:00","path":"/app/api/products/invalidProductId","status":400,"error":"Bad Request","message":"Type mismatch.","requestId":"044dcdf2-13"})
-Test OK (actual value: "Type mismatch.")
-Test OK (HTTP Code: 401, )
-Test OK (HTTP Code: 200)
-Test OK (HTTP Code: 403, )
-Start Circuit Breaker tests!
-Test OK (actual value: CLOSED)
-Test OK (HTTP Code: 500, {"timestamp":"2020-05-26T00:09:48.784+00:00","path":"/app/api/products/2","status":500,"error":"Internal Server Error","message":"Did not observe any item or terminal signal within 2000ms in 'onErrorResume' (and no fallback has been configured)","requestId":"4aa9f5e8-119"})
-...
-Test OK (actual value: Did not observe any item or terminal signal within 2000ms)
-Test OK (HTTP Code: 200)
-Test OK (actual value: Fallback product2)
-Test OK (HTTP Code: 200)
-Test OK (actual value: Fallback product2)
-Test OK (HTTP Code: 404, {"httpStatus":"NOT_FOUND","message":"Product Id: 14 not found in fallback cache!","path":"/app/api/products/14","timestamp":"2020-05-26@00:09:53.998+0000"})
-...
-Test OK (actual value: product name C)
-Test OK (actual value: CLOSED)
-Test OK (actual value: CLOSED_TO_OPEN)
-Test OK (actual value: OPEN_TO_HALF_OPEN)
-Test OK (actual value: HALF_OPEN_TO_CLOSED)
-End, all tests OK: Tue, May 31, 2020 2:10:09 AM
-```
-### Tracking the services with Zipkin
-Now, you can now track Microservices interactions throughout Zipkin UI from the following link:
-[http://localhost:9411/zipkin/](http://localhost:9411/zipkin/)
-
-
-### Closing The Story
-
-Finally, to close the story, we need to shut down Microservices manually service by service, hahaha just kidding, run the following command to shut them all:
-
-```bash
-selim@:~/ecommerce-microservice-backend-app$ docker-compose -f compose.yml down --remove-orphans
-```
- And you should see output like the following:
-
-```bash
-Removing ecommerce-microservice-backend-app_payment-service-container_1 ... done
-Removing ecommerce-microservice-backend-app_zipkin-container_1 ... done
-Removing ecommerce-microservice-backend-app_service-discovery-container_1 ... done
-Removing ecommerce-microservice-backend-app_product-service-container_1 ... done
-Removing ecommerce-microservice-backend-app_cloud-config-container_1 ... done
-Removing ecommerce-microservice-backend-app_proxy-client-container_1 ... done
-Removing ecommerce-microservice-backend-app_order-service-container_1 ... done
-Removing ecommerce-microservice-backend-app_user-service-container_1 ... done
-Removing ecommerce-microservice-backend-app_shipping-service-container_1 ... done
-Removing ecommerce-microservice-backend-app_api-gateway-container_1 ... done
-Removing ecommerce-microservice-backend-app_favourite-service-container_1 ... done
-Removing network ecommerce-microservice-backend-app_default
-```
-### The End
-In the end, I hope you enjoyed the application and find it useful, as I did when I was developing it.
-If you would like to enhance, please:
-- **Open PRs**,
-- Give **feedback**,
-- Add **new suggestions**, and
-- Finally, give it a 🌟.
-
-*Happy Coding ...* 🙂
diff --git a/api-gateway/.gitignore b/api-gateway/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/api-gateway/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/api-gateway/.mvn/wrapper/MavenWrapperDownloader.java b/api-gateway/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/api-gateway/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/api-gateway/.mvn/wrapper/maven-wrapper.jar b/api-gateway/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/api-gateway/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/api-gateway/.mvn/wrapper/maven-wrapper.properties b/api-gateway/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/api-gateway/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/api-gateway/Dockerfile b/api-gateway/Dockerfile
deleted file mode 100644
index e0c700df9..000000000
--- a/api-gateway/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-ENV SPRING_PROFILES_ACTIVE dev
-COPY api-gateway/ .
-ADD api-gateway/target/api-gateway-v${PROJECT_VERSION}.jar api-gateway.jar
-EXPOSE 8080
-ENTRYPOINT ["java", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "api-gateway.jar"]
-
-
diff --git a/api-gateway/compose.yml b/api-gateway/compose.yml
deleted file mode 100644
index 56a28e0a3..000000000
--- a/api-gateway/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- api-gateway-container:
- image: selimhorri/api-gateway-ecommerce-boot:0.1.0
- ports:
- - 8080:8080
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/api-gateway/mvnw b/api-gateway/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/api-gateway/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/api-gateway/mvnw.cmd b/api-gateway/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/api-gateway/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/api-gateway/pom.xml b/api-gateway/pom.xml
deleted file mode 100644
index d25eb1984..000000000
--- a/api-gateway/pom.xml
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- api-gateway
- api-gateway
- Spring Boot microservice!
- jar
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.cloud
- spring-cloud-starter
-
-
- org.springframework.cloud
- spring-cloud-starter-config
-
-
- org.springframework.cloud
- spring-cloud-starter-gateway
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- org.projectlombok
- lombok
- true
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.projectlombok
- lombok
-
-
-
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
-
-
diff --git a/api-gateway/src/main/java/com/selimhorri/app/ApiGatewayApplication.java b/api-gateway/src/main/java/com/selimhorri/app/ApiGatewayApplication.java
deleted file mode 100644
index 83ead8d95..000000000
--- a/api-gateway/src/main/java/com/selimhorri/app/ApiGatewayApplication.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-
-@SpringBootApplication
-@EnableEurekaClient
-public class ApiGatewayApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(ApiGatewayApplication.class, args);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
diff --git a/api-gateway/src/main/resources/application-dev.yml b/api-gateway/src/main/resources/application-dev.yml
deleted file mode 100644
index 484fde398..000000000
--- a/api-gateway/src/main/resources/application-dev.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-server:
- port: 8080
- error:
- whitelabel:
- enabled: false
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-logging:
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/api-gateway/src/main/resources/application-prod.yml b/api-gateway/src/main/resources/application-prod.yml
deleted file mode 100644
index 0b6a1ab78..000000000
--- a/api-gateway/src/main/resources/application-prod.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-server:
- port: 8080
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-logging:
- file:
- name: src/main/resources/script/prod_log.log
- clean-history-on-start: false
- level:
- org:
- hibernate:
- SQL: INFO
- springframework:
- web: INFO
- data: INFO
- boot:
- autoconfigure:
- data:
- rest: INFO
- jpa: INFO
- orm: INFO
-
diff --git a/api-gateway/src/main/resources/application-stage.yml b/api-gateway/src/main/resources/application-stage.yml
deleted file mode 100644
index ae9fc7536..000000000
--- a/api-gateway/src/main/resources/application-stage.yml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-server:
- port: 8080
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-logging:
- file:
- name: src/main/resources/script/stage_log.log
- clean-history-on-start: true
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/api-gateway/src/main/resources/application.yml b/api-gateway/src/main/resources/application.yml
deleted file mode 100644
index dd013a72d..000000000
--- a/api-gateway/src/main/resources/application.yml
+++ /dev/null
@@ -1,95 +0,0 @@
-
-server:
- servlet:
- context-path: /
-
-spring:
- zipkin:
- base-url: ${SPRING_ZIPKIN_BASE_URL:http://localhost:9411/}
- config:
- import: ${SPRING_CONFIG_IMPORT:optional:configserver:http://localhost:9296}
- application:
- name: API-GATEWAY
- profiles:
- active:
- - dev
- cloud:
- gateway:
- default-filters:
- - DedupeResponseHeader=Access-Control-Allow-Credentials Access-Control-Allow-Origin, RETAIN_UNIQUE
- globalcors:
- add-to-simple-url-handler-mapping: true
- cors-configurations:
- '[/**]':
- allowed-origins: "${CLIENT_HOST:http://localhost:4200}"
- allowed-headers: "*"
- exposed-headers: "*"
- allow-credentials: true
- allowed-methods:
- - GET
- - POST
- - PUT
- - DELETE
- - PATCH
- - OPTIONS
- routes:
- - id: ORDER-SERVICE
- uri: lb://ORDER-SERVICE
- predicates:
- - Path=/order-service/**
- - id: PAYMENT-SERVICE
- uri: lb://PAYMENT-SERVICE
- predicates:
- - Path=/payment-service/**
- - id: PRODUCT-SERVICE
- uri: lb://PRODUCT-SERVICE
- predicates:
- - Path=/product-service/**
- - id: SHIPPING-SERVICE
- uri: lb://SHIPPING-SERVICE
- predicates:
- - Path=/shipping-service/**
- - id: USER-SERVICE
- uri: lb://USER-SERVICE
- predicates:
- - Path=/user-service/**
- - id: FAVOURITE-SERVICE
- uri: lb://FAVOURITE-SERVICE
- predicates:
- - Path=/favourite-service/**
- - id: PROXY-CLIENT
- uri: lb://PROXY-CLIENT
- predicates:
- - Path=/app/**
-
-resilience4j:
- circuitbreaker:
- instances:
- apiGateway:
- register-health-indicator: true
- event-consumer-buffer-size: 10
- automatic-transition-from-open-to-half-open-enabled: true
- failure-rate-threshold: 50
- minimum-number-of-calls: 5
- permitted-number-of-calls-in-half-open-state: 3
- sliding-window-size: 10
- wait-duration-in-open-state: 5s
- sliding-window-type: COUNT_BASED
-
-management:
- health:
- circuitbreakers:
- enabled: true
- endpoint:
- health:
- show-details: always
-
-
-
-
-
-
-
-
-
-
diff --git a/api-gateway/src/test/java/com/selimhorri/app/ApiGatewayApplicationTests.java b/api-gateway/src/test/java/com/selimhorri/app/ApiGatewayApplicationTests.java
deleted file mode 100644
index 15c7492c0..000000000
--- a/api-gateway/src/test/java/com/selimhorri/app/ApiGatewayApplicationTests.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class ApiGatewayApplicationTests {
-
-
-
-}
-
-
-
-
-
-
-
diff --git a/api-gateway/system.properties b/api-gateway/system.properties
deleted file mode 100644
index 180a27348..000000000
--- a/api-gateway/system.properties
+++ /dev/null
@@ -1 +0,0 @@
-java.runtime.version=11
\ No newline at end of file
diff --git a/app-architecture.drawio b/app-architecture.drawio
deleted file mode 100644
index 89d7ed0a1..000000000
--- a/app-architecture.drawio
+++ /dev/null
@@ -1 +0,0 @@
-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
\ No newline at end of file
diff --git a/app-architecture.drawio.png b/app-architecture.drawio.png
deleted file mode 100644
index acbd46133..000000000
Binary files a/app-architecture.drawio.png and /dev/null differ
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
deleted file mode 100644
index 0b342ca01..000000000
--- a/azure-pipelines.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-trigger:
-- develop
-- stage
-- master
-
-pool:
- vmImage: ubuntu-latest
-
-steps:
-- task: Maven@3
- inputs:
- mavenPomFile: 'pom.xml'
- mavenOptions: '-Xmx3072m'
- javaHomeOption: 'JDKVersion'
- jdkVersionOption: '11'
- jdkArchitectureOption: 'x64'
- publishJUnitResults: true
- testResultsFiles: '**/surefire-reports/TEST-*.xml'
- goals: 'package'
-
-
diff --git a/cloud-config/.gitignore b/cloud-config/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/cloud-config/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/cloud-config/.mvn/wrapper/MavenWrapperDownloader.java b/cloud-config/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/cloud-config/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/cloud-config/.mvn/wrapper/maven-wrapper.jar b/cloud-config/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/cloud-config/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/cloud-config/.mvn/wrapper/maven-wrapper.properties b/cloud-config/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/cloud-config/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/cloud-config/Dockerfile b/cloud-config/Dockerfile
deleted file mode 100644
index cd5b044ee..000000000
--- a/cloud-config/Dockerfile
+++ /dev/null
@@ -1,11 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-COPY cloud-config/ .
-ADD cloud-config/target/cloud-config-v${PROJECT_VERSION}.jar cloud-config.jar
-EXPOSE 9296
-ENTRYPOINT ["java", "-jar", "cloud-config.jar"]
-
-
diff --git a/cloud-config/compose.yml b/cloud-config/compose.yml
deleted file mode 100644
index 2ebe9109c..000000000
--- a/cloud-config/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- cloud-config-container:
- image: selimhorri/cloud-config-ecommerce-boot:0.1.0
- ports:
- - 9296:9296
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/cloud-config/mvnw b/cloud-config/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/cloud-config/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/cloud-config/mvnw.cmd b/cloud-config/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/cloud-config/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/cloud-config/pom.xml b/cloud-config/pom.xml
deleted file mode 100644
index 578a73cce..000000000
--- a/cloud-config/pom.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- cloud-config
- cloud-config
- Spring Boot microservice!
- jar
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- org.springframework.cloud
- spring-cloud-config-server
-
-
- org.springframework.cloud
- spring-cloud-starter
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
-
-
diff --git a/cloud-config/src/main/java/com/selimhorri/app/CloudConfigApplication.java b/cloud-config/src/main/java/com/selimhorri/app/CloudConfigApplication.java
deleted file mode 100644
index 61df095ac..000000000
--- a/cloud-config/src/main/java/com/selimhorri/app/CloudConfigApplication.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.config.server.EnableConfigServer;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-
-@SpringBootApplication
-@EnableEurekaClient
-@EnableConfigServer
-public class CloudConfigApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(CloudConfigApplication.class, args);
- }
-
-
-
-}
-
-
-
-
-
-
diff --git a/cloud-config/src/main/resources/application.yml b/cloud-config/src/main/resources/application.yml
deleted file mode 100644
index 6ac6f81e6..000000000
--- a/cloud-config/src/main/resources/application.yml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-server:
- port: 9296
-
-spring:
- zipkin:
- base-url: ${SPRING_ZIPKIN_BASE_URL:http://localhost:9411/}
- application:
- name: CLOUD-CONFIG
- cloud:
- config:
- server:
- git:
- uri: https://github.com/SelimHorri/cloud-config-server
- clone-on-start: true
-
-resilience4j:
- circuitbreaker:
- instances:
- cloudConfig:
- register-health-indicator: true
- event-consumer-buffer-size: 10
- automatic-transition-from-open-to-half-open-enabled: true
- failure-rate-threshold: 50
- minimum-number-of-calls: 5
- permitted-number-of-calls-in-half-open-state: 3
- sliding-window-size: 10
- wait-duration-in-open-state: 5s
- sliding-window-type: COUNT_BASED
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
- health:
- circuitbreakers:
- enabled: true
- endpoint:
- health:
- show-details: always
-
-
-
-
-
-
-
-
diff --git a/cloud-config/src/test/java/com/selimhorri/app/CloudConfigApplicationTests.java b/cloud-config/src/test/java/com/selimhorri/app/CloudConfigApplicationTests.java
deleted file mode 100644
index 8b7a99062..000000000
--- a/cloud-config/src/test/java/com/selimhorri/app/CloudConfigApplicationTests.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class CloudConfigApplicationTests {
-
-
-
-}
-
-
-
-
-
-
diff --git a/cloud-config/system.properties b/cloud-config/system.properties
deleted file mode 100644
index 180a27348..000000000
--- a/cloud-config/system.properties
+++ /dev/null
@@ -1 +0,0 @@
-java.runtime.version=11
\ No newline at end of file
diff --git a/compose.yml b/compose.yml
deleted file mode 100644
index 2d6442c32..000000000
--- a/compose.yml
+++ /dev/null
@@ -1,70 +0,0 @@
-
-version: '3'
-services:
- zipkin-container:
- image: openzipkin/zipkin
- ports:
- - 9411:9411
- service-discovery-container:
- image: selimhorri/service-discovery-ecommerce-boot:0.1.0
- ports:
- - 8761:8761
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- cloud-config-container:
- image: selimhorri/cloud-config-ecommerce-boot:0.1.0
- ports:
- - 9296:9296
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- api-gateway-container:
- image: selimhorri/api-gateway-ecommerce-boot:0.1.0
- ports:
- - 8080:8080
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- proxy-client-container:
- image: selimhorri/proxy-client-ecommerce-boot:0.1.0
- ports:
- - 8900:8900
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- order-service-container:
- image: selimhorri/order-service-ecommerce-boot:0.1.0
- ports:
- - 8300:8300
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- payment-service-container:
- image: selimhorri/payment-service-ecommerce-boot:0.1.0
- ports:
- - 8400:8400
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- product-service-container:
- image: selimhorri/product-service-ecommerce-boot:0.1.0
- ports:
- - 8500:8500
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- shipping-service-container:
- image: selimhorri/shipping-service-ecommerce-boot:0.1.0
- ports:
- - 8600:8600
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- user-service-container:
- image: selimhorri/user-service-ecommerce-boot:0.1.0
- ports:
- - 8700:8700
- environment:
- - SPRING_PROFILES_ACTIVE=dev
- favourite-service-container:
- image: selimhorri/favourite-service-ecommerce-boot:0.1.0
- ports:
- - 8800:8800
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/ecommerce-ERD.drawio b/ecommerce-ERD.drawio
deleted file mode 100644
index 827e64a5e..000000000
--- a/ecommerce-ERD.drawio
+++ /dev/null
@@ -1 +0,0 @@
-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
\ No newline at end of file
diff --git a/ecommerce-ERD.drawio.png b/ecommerce-ERD.drawio.png
deleted file mode 100644
index f48ce1917..000000000
Binary files a/ecommerce-ERD.drawio.png and /dev/null differ
diff --git a/favourite-service/.gitignore b/favourite-service/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/favourite-service/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/favourite-service/.mvn/wrapper/MavenWrapperDownloader.java b/favourite-service/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/favourite-service/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/favourite-service/.mvn/wrapper/maven-wrapper.jar b/favourite-service/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/favourite-service/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/favourite-service/.mvn/wrapper/maven-wrapper.properties b/favourite-service/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/favourite-service/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/favourite-service/Dockerfile b/favourite-service/Dockerfile
deleted file mode 100644
index 82ab593f6..000000000
--- a/favourite-service/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-ENV SPRING_PROFILES_ACTIVE dev
-COPY favourite-service/ .
-ADD favourite-service/target/favourite-service-v${PROJECT_VERSION}.jar favourite-service.jar
-EXPOSE 8800
-ENTRYPOINT ["java", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "favourite-service.jar"]
-
-
diff --git a/favourite-service/compose.yml b/favourite-service/compose.yml
deleted file mode 100644
index 6a5607451..000000000
--- a/favourite-service/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- favourite-service-container:
- image: selimhorri/favourite-service-ecommerce-boot:0.1.0
- ports:
- - 8800:8800
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/favourite-service/mvnw b/favourite-service/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/favourite-service/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/favourite-service/mvnw.cmd b/favourite-service/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/favourite-service/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/favourite-service/pom.xml b/favourite-service/pom.xml
deleted file mode 100644
index c30204d36..000000000
--- a/favourite-service/pom.xml
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- favourite-service
- favourite-service
- Spring Boot Microservice!
- jar
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter
-
-
- org.springframework.cloud
- spring-cloud-starter-config
-
-
- org.springframework.boot
- spring-boot-starter-data-jpa
-
-
- org.springframework.boot
- spring-boot-starter-thymeleaf
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.flywaydb
- flyway-core
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- com.h2database
- h2
- runtime
-
-
- mysql
- mysql-connector-java
- runtime
-
-
- org.projectlombok
- lombok
- true
-
-
- org.testcontainers
- mysql
- test
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.projectlombok
- lombok
-
-
-
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/FavouriteServiceApplication.java b/favourite-service/src/main/java/com/selimhorri/app/FavouriteServiceApplication.java
deleted file mode 100644
index 6227ea5ba..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/FavouriteServiceApplication.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-
-@SpringBootApplication
-@EnableEurekaClient
-public class FavouriteServiceApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(FavouriteServiceApplication.class, args);
- }
-
-
-
-}
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java b/favourite-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
deleted file mode 100644
index a6346459a..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.config.client;
-
-import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.client.RestTemplate;
-
-@Configuration
-public class ClientConfig {
-
- @LoadBalanced
- @Bean
- public RestTemplate restTemplateBean() {
- return new RestTemplate();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java b/favourite-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
deleted file mode 100644
index 7e0f843ea..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.selimhorri.app.config.mapper;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
-import com.fasterxml.jackson.databind.json.JsonMapper;
-
-@Configuration
-public class MapperConfig {
-
- @Bean
- public ObjectMapper objectMapperBean() {
- return new JsonMapper()
- .enable(SerializationFeature.INDENT_OUTPUT);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/constant/AppConstant.java b/favourite-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
deleted file mode 100644
index 40f49bbc3..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.constant;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public abstract class AppConstant {
-
- public static final String LOCAL_DATE_FORMAT = "dd-MM-yyyy";
- public static final String LOCAL_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String ZONED_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String INSTANT_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
-
- @NoArgsConstructor(access = AccessLevel.PRIVATE)
- public abstract class DiscoveredDomainsApi {
-
- public static final String USER_SERVICE_HOST = "http://USER-SERVICE/user-service";
- public static final String USER_SERVICE_API_URL = "http://USER-SERVICE/user-service/api/users";
-
- public static final String PRODUCT_SERVICE_HOST = "http://PRODUCT-SERVICE/product-service";
- public static final String PRODUCT_SERVICE_API_URL = "http://PRODUCT-SERVICE/product-service/api/products";
-
- public static final String ORDER_SERVICE_HOST = "http://ORDER-SERVICE/order-service";
- public static final String ORDER_SERVICE_API_URL = "http://ORDER-SERVICE/order-service/api/orders";
-
- public static final String FAVOURITE_SERVICE_HOST = "http://FAVOURITE-SERVICE/favourite-service";
- public static final String FAVOURITE_SERVICE_API_URL = "http://FAVOURITE-SERVICE/favourite-service/api/favourites";
-
- public static final String PAYMENT_SERVICE_HOST = "http://PAYMENT-SERVICE/payment-service";
- public static final String PAYMENT_SERVICE_API_URL = "http://PAYMENT-SERVICE/payment-service/api/payments";
-
- public static final String SHIPPING_SERVICE_HOST = "http://SHIPPING-SERVICE/shipping-service";
- public static final String SHIPPING_SERVICE_API_URL = "http://SHIPPING-SERVICE/shipping-service/api/shippings";
-
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java b/favourite-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
deleted file mode 100644
index 3f4dd17fa..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.time.Instant;
-
-import javax.persistence.Column;
-import javax.persistence.MappedSuperclass;
-
-import org.springframework.data.annotation.CreatedDate;
-import org.springframework.data.annotation.LastModifiedDate;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-
-import lombok.AccessLevel;
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@MappedSuperclass
-@NoArgsConstructor(access = AccessLevel.PROTECTED)
-@AllArgsConstructor(access = AccessLevel.PROTECTED)
-@Data
-abstract public class AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @CreatedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "created_at")
- private Instant createdAt;
-
- @LastModifiedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "updated_at")
- private Instant updatedAt;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/domain/Favourite.java b/favourite-service/src/main/java/com/selimhorri/app/domain/Favourite.java
deleted file mode 100644
index b245b54e1..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/domain/Favourite.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.Id;
-import javax.persistence.IdClass;
-import javax.persistence.Table;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-import com.selimhorri.app.domain.id.FavouriteId;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@Entity
-@Table(name = "favourites")
-@IdClass(FavouriteId.class)
-@NoArgsConstructor
-@AllArgsConstructor
-@EqualsAndHashCode(callSuper = true)
-@Data
-@Builder
-public final class Favourite extends AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @Column(name = "user_id", nullable = false)
- private Integer userId;
-
- @Id
- @Column(name = "product_id", nullable = false)
- private Integer productId;
-
- @Id
- @Column(name = "like_date", nullable = false)
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime likeDate;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/domain/id/FavouriteId.java b/favourite-service/src/main/java/com/selimhorri/app/domain/id/FavouriteId.java
deleted file mode 100644
index 7f4b9be09..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/domain/id/FavouriteId.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.selimhorri.app.domain.id;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import javax.validation.constraints.NotNull;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-public class FavouriteId implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @NotNull
- private Integer userId;
-
- @NotNull
- private Integer productId;
-
- @NotNull
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime likeDate;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/dto/FavouriteDto.java b/favourite-service/src/main/java/com/selimhorri/app/dto/FavouriteDto.java
deleted file mode 100644
index 10a061d44..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/dto/FavouriteDto.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import javax.validation.constraints.NotNull;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class FavouriteDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @NotNull(message = "Field must not be NULL")
- private Integer userId;
-
- @NotNull(message = "Field must not be NULL")
- private Integer productId;
-
- @NotNull(message = "Field must not be NULL")
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime likeDate;
-
- @JsonProperty("user")
- @JsonInclude(Include.NON_NULL)
- private UserDto userDto;
-
- @JsonProperty("product")
- @JsonInclude(Include.NON_NULL)
- private ProductDto productDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/dto/ProductDto.java b/favourite-service/src/main/java/com/selimhorri/app/dto/ProductDto.java
deleted file mode 100644
index 74ccbbb77..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/dto/ProductDto.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class ProductDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer productId;
- private String productTitle;
- private String imageUrl;
- private String sku;
- private Double priceUnit;
- private Integer quantity;
-
- @JsonInclude(Include.NON_NULL)
- private Set favouriteDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/dto/UserDto.java b/favourite-service/src/main/java/com/selimhorri/app/dto/UserDto.java
deleted file mode 100644
index 15b649f0f..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/dto/UserDto.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class UserDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer userId;
- private String firstName;
- private String lastName;
- private String imageUrl;
- private String email;
- private String phone;
-
- @JsonInclude(Include.NON_NULL)
- private Set favouriteDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java b/favourite-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
deleted file mode 100644
index 920a621ab..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.selimhorri.app.dto.response.collection;
-
-import java.util.Collection;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class DtoCollectionResponse {
-
- private Collection collection;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java b/favourite-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
deleted file mode 100644
index deac66b67..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package com.selimhorri.app.exception;
-
-import java.time.ZoneId;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.converter.HttpMessageNotReadableException;
-import org.springframework.validation.BindException;
-import org.springframework.web.bind.MethodArgumentNotValidException;
-import org.springframework.web.bind.annotation.ControllerAdvice;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-
-import com.selimhorri.app.exception.payload.ExceptionMsg;
-import com.selimhorri.app.exception.wrapper.FavouriteNotFoundException;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@ControllerAdvice
-@Slf4j
-@RequiredArgsConstructor
-public class ApiExceptionHandler {
-
- @ExceptionHandler(value = {
- MethodArgumentNotValidException.class,
- HttpMessageNotReadableException.class,
- })
- public ResponseEntity handleValidationException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle validation exception*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("*" + e.getBindingResult().getFieldError().getDefaultMessage() + "!**")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
- @ExceptionHandler(value = {
- FavouriteNotFoundException.class,
- })
- public ResponseEntity handleApiRequestException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle API request*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("#### " + e.getMessage() + "! ####")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java b/favourite-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
deleted file mode 100644
index 274842143..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.exception.payload;
-
-import java.io.Serializable;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.ser.ZonedDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public final class ExceptionMsg implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @JsonSerialize(using = ZonedDateTimeSerializer.class)
- @JsonFormat(shape = Shape.STRING, pattern = AppConstant.ZONED_DATE_TIME_FORMAT)
- private final ZonedDateTime timestamp;
-
- @JsonInclude(value = Include.NON_NULL)
- private Throwable throwable;
- private final HttpStatus httpStatus;
- private final String msg;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/exception/wrapper/FavouriteNotFoundException.java b/favourite-service/src/main/java/com/selimhorri/app/exception/wrapper/FavouriteNotFoundException.java
deleted file mode 100644
index d7f9a6629..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/exception/wrapper/FavouriteNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class FavouriteNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public FavouriteNotFoundException() {
- super();
- }
-
- public FavouriteNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public FavouriteNotFoundException(String message) {
- super(message);
- }
-
- public FavouriteNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/helper/FavouriteMappingHelper.java b/favourite-service/src/main/java/com/selimhorri/app/helper/FavouriteMappingHelper.java
deleted file mode 100644
index 2d5ca7d35..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/helper/FavouriteMappingHelper.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package com.selimhorri.app.helper;
-
-import com.selimhorri.app.domain.Favourite;
-import com.selimhorri.app.dto.FavouriteDto;
-import com.selimhorri.app.dto.ProductDto;
-import com.selimhorri.app.dto.UserDto;
-
-public interface FavouriteMappingHelper {
-
- public static FavouriteDto map(final Favourite favourite) {
- return FavouriteDto.builder()
- .userId(favourite.getUserId())
- .productId(favourite.getProductId())
- .likeDate(favourite.getLikeDate())
- .userDto(
- UserDto.builder()
- .userId(favourite.getUserId())
- .build())
- .productDto(
- ProductDto.builder()
- .productId(favourite.getProductId())
- .build())
- .build();
- }
-
- public static Favourite map(final FavouriteDto favouriteDto) {
- return Favourite.builder()
- .userId(favouriteDto.getUserId())
- .productId(favouriteDto.getProductId())
- .likeDate(favouriteDto.getLikeDate())
- .build();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/repository/FavouriteRepository.java b/favourite-service/src/main/java/com/selimhorri/app/repository/FavouriteRepository.java
deleted file mode 100644
index 3145deb3a..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/repository/FavouriteRepository.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.selimhorri.app.repository;
-
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import com.selimhorri.app.domain.Favourite;
-import com.selimhorri.app.domain.id.FavouriteId;
-
-public interface FavouriteRepository extends JpaRepository {
-
-
-
-}
diff --git a/favourite-service/src/main/java/com/selimhorri/app/resource/FavouriteResource.java b/favourite-service/src/main/java/com/selimhorri/app/resource/FavouriteResource.java
deleted file mode 100644
index 33c27b835..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/resource/FavouriteResource.java
+++ /dev/null
@@ -1,113 +0,0 @@
-package com.selimhorri.app.resource;
-
-import java.time.LocalDateTime;
-import java.time.format.DateTimeFormatter;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.constant.AppConstant;
-import com.selimhorri.app.domain.id.FavouriteId;
-import com.selimhorri.app.dto.FavouriteDto;
-import com.selimhorri.app.dto.response.collection.DtoCollectionResponse;
-import com.selimhorri.app.service.FavouriteService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/favourites")
-@Slf4j
-@RequiredArgsConstructor
-public class FavouriteResource {
-
- private final FavouriteService favouriteService;
-
- @GetMapping
- public ResponseEntity> findAll() {
- log.info("*** FavouriteDto List, controller; fetch all favourites *");
- return ResponseEntity.ok(new DtoCollectionResponse<>(this.favouriteService.findAll()));
- }
-
- @GetMapping("/{userId}/{productId}/{likeDate}")
- public ResponseEntity findById(
- @PathVariable("userId") final String userId,
- @PathVariable("productId") final String productId,
- @PathVariable("likeDate") final String likeDate) {
- log.info("*** FavouriteDto, resource; fetch favourite by id *");
- return ResponseEntity.ok(this.favouriteService.findById(
- new FavouriteId(Integer.parseInt(userId), Integer.parseInt(productId),
- LocalDateTime.parse(likeDate, DateTimeFormatter.ofPattern(AppConstant.LOCAL_DATE_TIME_FORMAT)))));
- }
-
- @GetMapping("/find")
- public ResponseEntity findById(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteId favouriteId) {
- log.info("*** FavouriteDto, resource; fetch favourite by id *");
- return ResponseEntity.ok(this.favouriteService.findById(favouriteId));
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteDto favouriteDto) {
- log.info("*** FavouriteDto, resource; save favourite *");
- return ResponseEntity.ok(this.favouriteService.save(favouriteDto));
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteDto favouriteDto) {
- log.info("*** FavouriteDto, resource; update favourite *");
- return ResponseEntity.ok(this.favouriteService.update(favouriteDto));
- }
-
- @DeleteMapping("/{userId}/{productId}/{likeDate}")
- public ResponseEntity deleteById(
- @PathVariable("userId") final String userId,
- @PathVariable("productId") final String productId,
- @PathVariable("likeDate") final String likeDate) {
- log.info("*** Boolean, resource; delete favourite by id *");
- this.favouriteService.deleteById(new FavouriteId(Integer.parseInt(userId), Integer.parseInt(productId),
- LocalDateTime.parse(likeDate, DateTimeFormatter.ofPattern(AppConstant.LOCAL_DATE_TIME_FORMAT))));
- return ResponseEntity.ok(true);
- }
-
- @DeleteMapping("/delete")
- public ResponseEntity deleteById(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteId favouriteId) {
- log.info("*** Boolean, resource; delete favourite by id *");
- this.favouriteService.deleteById(favouriteId);
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/java/com/selimhorri/app/service/FavouriteService.java b/favourite-service/src/main/java/com/selimhorri/app/service/FavouriteService.java
deleted file mode 100644
index c20a9ec45..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/service/FavouriteService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.service;
-
-import java.util.List;
-
-import com.selimhorri.app.domain.id.FavouriteId;
-import com.selimhorri.app.dto.FavouriteDto;
-
-public interface FavouriteService {
-
- List findAll();
- FavouriteDto findById(final FavouriteId favouriteId);
- FavouriteDto save(final FavouriteDto favouriteDto);
- FavouriteDto update(final FavouriteDto favouriteDto);
- void deleteById(final FavouriteId favouriteId);
-
-}
diff --git a/favourite-service/src/main/java/com/selimhorri/app/service/impl/FavouriteServiceImpl.java b/favourite-service/src/main/java/com/selimhorri/app/service/impl/FavouriteServiceImpl.java
deleted file mode 100644
index a61753ff9..000000000
--- a/favourite-service/src/main/java/com/selimhorri/app/service/impl/FavouriteServiceImpl.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package com.selimhorri.app.service.impl;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.transaction.Transactional;
-
-import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-
-import com.selimhorri.app.constant.AppConstant;
-import com.selimhorri.app.domain.id.FavouriteId;
-import com.selimhorri.app.dto.FavouriteDto;
-import com.selimhorri.app.dto.ProductDto;
-import com.selimhorri.app.dto.UserDto;
-import com.selimhorri.app.exception.wrapper.FavouriteNotFoundException;
-import com.selimhorri.app.helper.FavouriteMappingHelper;
-import com.selimhorri.app.repository.FavouriteRepository;
-import com.selimhorri.app.service.FavouriteService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Transactional
-@Slf4j
-@RequiredArgsConstructor
-public class FavouriteServiceImpl implements FavouriteService {
-
- private final FavouriteRepository favouriteRepository;
- private final RestTemplate restTemplate;
-
- @Override
- public List findAll() {
- log.info("*** FavouriteDto List, service; fetch all favourites *");
- return this.favouriteRepository.findAll()
- .stream()
- .map(FavouriteMappingHelper::map)
- .map(f -> {
- f.setUserDto(this.restTemplate
- .getForObject(AppConstant.DiscoveredDomainsApi
- .USER_SERVICE_API_URL + "/" + f.getUserId(), UserDto.class));
- f.setProductDto(this.restTemplate
- .getForObject(AppConstant.DiscoveredDomainsApi
- .PRODUCT_SERVICE_API_URL + "/" + f.getProductId(), ProductDto.class));
- return f;
- })
- .distinct()
- .collect(Collectors.toUnmodifiableList());
- }
-
- @Override
- public FavouriteDto findById(final FavouriteId favouriteId) {
- log.info("*** FavouriteDto, service; fetch favourite by id *");
- return this.favouriteRepository.findById(favouriteId)
- .map(FavouriteMappingHelper::map)
- .map(f -> {
- f.setUserDto(this.restTemplate
- .getForObject(AppConstant.DiscoveredDomainsApi
- .USER_SERVICE_API_URL + "/" + f.getUserId(), UserDto.class));
- f.setProductDto(this.restTemplate
- .getForObject(AppConstant.DiscoveredDomainsApi
- .PRODUCT_SERVICE_API_URL + "/" + f.getProductId(), ProductDto.class));
- return f;
- })
- .orElseThrow(() -> new FavouriteNotFoundException(
- String.format("Favourite with id: [%s] not found!", favouriteId)));
- }
-
- @Override
- public FavouriteDto save(final FavouriteDto favouriteDto) {
- return FavouriteMappingHelper.map(this.favouriteRepository
- .save(FavouriteMappingHelper.map(favouriteDto)));
- }
-
- @Override
- public FavouriteDto update(final FavouriteDto favouriteDto) {
- return FavouriteMappingHelper.map(this.favouriteRepository
- .save(FavouriteMappingHelper.map(favouriteDto)));
- }
-
- @Override
- public void deleteById(final FavouriteId favouriteId) {
- this.favouriteRepository.deleteById(favouriteId);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/resources/application-dev.yml b/favourite-service/src/main/resources/application-dev.yml
deleted file mode 100644
index 98b3b174c..000000000
--- a/favourite-service/src/main/resources/application-dev.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-server:
- port: 8800
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:h2:mem:ecommerce_dev_db;DB_CLOSE_ON_EXIT=FALSE
- username: sa
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.H2Dialect
- use_sql_comments: true
- format_sql: true
- h2:
- console:
- enabled: true
- path: /h2-console
- #flyway:
- # baseline-on-migrate: true
- # enabled: true
-
-logging:
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/favourite-service/src/main/resources/application-prod.yml b/favourite-service/src/main/resources/application-prod.yml
deleted file mode 100644
index 9cf19fbba..000000000
--- a/favourite-service/src/main/resources/application-prod.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8300
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: false
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/prod_log.log
- clean-history-on-start: false
- level:
- org:
- hibernate:
- SQL: INFO
- springframework:
- web: INFO
- data: INFO
- boot:
- autoconfigure:
- data:
- rest: INFO
- jpa: INFO
- orm: INFO
-
diff --git a/favourite-service/src/main/resources/application-stage.yml b/favourite-service/src/main/resources/application-stage.yml
deleted file mode 100644
index 92140f53e..000000000
--- a/favourite-service/src/main/resources/application-stage.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8300
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/stage_log.log
- clean-history-on-start: true
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/favourite-service/src/main/resources/application.yml b/favourite-service/src/main/resources/application.yml
deleted file mode 100644
index 6474033d8..000000000
--- a/favourite-service/src/main/resources/application.yml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-server:
- servlet:
- context-path: /favourite-service
-
-spring:
- zipkin:
- base-url: ${SPRING_ZIPKIN_BASE_URL:http://localhost:9411/}
- config:
- import: ${SPRING_CONFIG_IMPORT:optional:configserver:http://localhost:9296}
- application:
- name: FAVOURITE-SERVICE
- profiles:
- active:
- - dev
-
-resilience4j:
- circuitbreaker:
- instances:
- favouriteService:
- register-health-indicator: true
- event-consumer-buffer-size: 10
- automatic-transition-from-open-to-half-open-enabled: true
- failure-rate-threshold: 50
- minimum-number-of-calls: 5
- permitted-number-of-calls-in-half-open-state: 3
- sliding-window-size: 10
- wait-duration-in-open-state: 5s
- sliding-window-type: COUNT_BASED
-
-management:
- health:
- circuitbreakers:
- enabled: true
- endpoint:
- health:
- show-details: always
-
-
-
-
-
-
-
-
-
diff --git a/favourite-service/src/main/resources/db/migration/V1__create_favourites_table.sql b/favourite-service/src/main/resources/db/migration/V1__create_favourites_table.sql
deleted file mode 100644
index bbc0875e5..000000000
--- a/favourite-service/src/main/resources/db/migration/V1__create_favourites_table.sql
+++ /dev/null
@@ -1,10 +0,0 @@
-
-CREATE TABLE favourites (
- user_id INT(11) NOT NULL,
- product_id INT(11) NOT NULL,
- like_date TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- created_at TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- updated_at TIMESTAMP,
- PRIMARY KEY (user_id, product_id, like_date)
-);
-
diff --git a/favourite-service/src/main/resources/db/migration/V2__insert_favourites_table.sql b/favourite-service/src/main/resources/db/migration/V2__insert_favourites_table.sql
deleted file mode 100644
index b937c5222..000000000
--- a/favourite-service/src/main/resources/db/migration/V2__insert_favourites_table.sql
+++ /dev/null
@@ -1,7 +0,0 @@
-
-INSERT INTO favourites
-(user_id, product_id) VALUES
-(1, 1),
-(1, 2),
-(2, 2);
-
diff --git a/favourite-service/src/test/java/com/selimhorri/app/FavouriteServiceApplicationTests.java b/favourite-service/src/test/java/com/selimhorri/app/FavouriteServiceApplicationTests.java
deleted file mode 100644
index 15c663c40..000000000
--- a/favourite-service/src/test/java/com/selimhorri/app/FavouriteServiceApplicationTests.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class FavouriteServiceApplicationTests {
-
-
-
-}
-
-
-
-
-
-
-
diff --git a/favourite-service/system.properties b/favourite-service/system.properties
deleted file mode 100644
index 180a27348..000000000
--- a/favourite-service/system.properties
+++ /dev/null
@@ -1 +0,0 @@
-java.runtime.version=11
\ No newline at end of file
diff --git a/helm/ecommerce/Chart.yaml b/helm/ecommerce/Chart.yaml
new file mode 100644
index 000000000..0c201c7b2
--- /dev/null
+++ b/helm/ecommerce/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: ecommerce
+description: "Umbrella Helm chart to deploy the ecommerce microservices"
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/api-gateway/Chart.yaml b/helm/ecommerce/charts/api-gateway/Chart.yaml
new file mode 100644
index 000000000..00c0d285e
--- /dev/null
+++ b/helm/ecommerce/charts/api-gateway/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: api-gateway
+description: API Gateway service
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/api-gateway/templates/configmap.yaml b/helm/ecommerce/charts/api-gateway/templates/configmap.yaml
new file mode 100644
index 000000000..26c8a592c
--- /dev/null
+++ b/helm/ecommerce/charts/api-gateway/templates/configmap.yaml
@@ -0,0 +1,17 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_REGION: {{ .Values.config.eurekaClientRegion | quote }}
+ EUREKA_CLIENT_AVAILABILITY_ZONES_DEFAULT: {{ .Values.config.eurekaClientAvailabilityZonesDefault | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_CLIENT_SERVICE_URL_MYZONE: {{ .Values.config.eurekaClientServiceUrlMyZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
+ EUREKA_CLIENT_REGISTER_WITH_EUREKA: "true"
+ EUREKA_CLIENT_FETCH_REGISTRY: "true"
diff --git a/helm/ecommerce/charts/api-gateway/templates/deployment.yaml b/helm/ecommerce/charts/api-gateway/templates/deployment.yaml
new file mode 100644
index 000000000..c3ae0bb78
--- /dev/null
+++ b/helm/ecommerce/charts/api-gateway/templates/deployment.yaml
@@ -0,0 +1,47 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.image.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ envFrom:
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
diff --git a/helm/ecommerce/charts/api-gateway/templates/ingress.yaml b/helm/ecommerce/charts/api-gateway/templates/ingress.yaml
new file mode 100644
index 000000000..662d0953f
--- /dev/null
+++ b/helm/ecommerce/charts/api-gateway/templates/ingress.yaml
@@ -0,0 +1,21 @@
+{{- if .Values.ingress.enabled }}
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ annotations:
+ nginx.ingress.kubernetes.io/rewrite-target: /
+spec:
+ ingressClassName: nginx
+ rules:
+ - host: {{ .Values.ingress.host }}
+ http:
+ paths:
+ - path: /
+ pathType: Prefix
+ backend:
+ service:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ port:
+ number: {{ .Values.service.port }}
+{{- end }}
diff --git a/helm/ecommerce/charts/api-gateway/templates/service.yaml b/helm/ecommerce/charts/api-gateway/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/api-gateway/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/api-gateway/values.yaml b/helm/ecommerce/charts/api-gateway/values.yaml
new file mode 100644
index 000000000..f1db7aa55
--- /dev/null
+++ b/helm/ecommerce/charts/api-gateway/values.yaml
@@ -0,0 +1,29 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/api-gateway-ecommerce-boot"
+ tag: "0.1.0"
+service:
+ type: ClusterIP
+ port: 8080
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientRegion: default
+ eurekaClientAvailabilityZonesDefault: myzone
+ eurekaClientServiceUrlMyZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaInstancePreferIpAddress: "true"
+
+# Ingress
+ingress:
+ enabled: true
+ ingressClassName: nginx
+ annotations:
+ nginx.ingress.kubernetes.io/rewrite-target: /
+ hosts:
+ - host: gateway.local
+ paths:
+ - path: /
+ pathType: Prefix
\ No newline at end of file
diff --git a/helm/ecommerce/charts/cloud-config/Chart.yaml b/helm/ecommerce/charts/cloud-config/Chart.yaml
new file mode 100644
index 000000000..c6ee94706
--- /dev/null
+++ b/helm/ecommerce/charts/cloud-config/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: cloud-config
+description: Spring Cloud Config Server
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/cloud-config/templates/configmap.yaml b/helm/ecommerce/charts/cloud-config/templates/configmap.yaml
new file mode 100644
index 000000000..6faa1fb96
--- /dev/null
+++ b/helm/ecommerce/charts/cloud-config/templates/configmap.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ EUREKA_CLIENT_REGION: {{ .Values.config.eurekaClientRegion | quote }}
+ EUREKA_CLIENT_AVAILABILITYZONES_DEFAULT: {{ .Values.config.eurekaClientAvailabilityZonesDefault | quote }}
+ EUREKA_CLIENT_SERVICEURL_MYZONE: {{ .Values.config.eurekaClientServiceUrlMyZone | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
diff --git a/helm/ecommerce/charts/cloud-config/templates/deployment.yaml b/helm/ecommerce/charts/cloud-config/templates/deployment.yaml
new file mode 100644
index 000000000..508f619ba
--- /dev/null
+++ b/helm/ecommerce/charts/cloud-config/templates/deployment.yaml
@@ -0,0 +1,33 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/cloud-config/templates/service.yaml b/helm/ecommerce/charts/cloud-config/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/cloud-config/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/cloud-config/values.yaml b/helm/ecommerce/charts/cloud-config/values.yaml
new file mode 100644
index 000000000..54c3b01f1
--- /dev/null
+++ b/helm/ecommerce/charts/cloud-config/values.yaml
@@ -0,0 +1,18 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/cloud-config-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 9296
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ eurekaClientRegion: default
+ eurekaClientAvailabilityZonesDefault: myzone
+ eurekaClientServiceUrlMyZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka"
+
diff --git a/helm/ecommerce/charts/favourite-service/Chart.yaml b/helm/ecommerce/charts/favourite-service/Chart.yaml
new file mode 100644
index 000000000..135158d93
--- /dev/null
+++ b/helm/ecommerce/charts/favourite-service/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: favourite-service
+description: Favourite microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/favourite-service/templates/configmap.yaml b/helm/ecommerce/charts/favourite-service/templates/configmap.yaml
new file mode 100644
index 000000000..d9a4e9185
--- /dev/null
+++ b/helm/ecommerce/charts/favourite-service/templates/configmap.yaml
@@ -0,0 +1,16 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_REGION: {{ .Values.config.eurekaClientRegion | quote }}
+ EUREKA_CLIENT_AVAILABILITY_ZONES_DEFAULT: {{ .Values.config.eurekaClientAvailabilityZonesDefault | quote }}
+ EUREKA_CLIENT_SERVICE_URL_MYZONE: {{ .Values.config.eurekaClientServiceUrlMyZone | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
+
diff --git a/helm/ecommerce/charts/favourite-service/templates/deployment.yaml b/helm/ecommerce/charts/favourite-service/templates/deployment.yaml
new file mode 100644
index 000000000..a00022dc7
--- /dev/null
+++ b/helm/ecommerce/charts/favourite-service/templates/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/favourite-service/templates/service.yaml b/helm/ecommerce/charts/favourite-service/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/favourite-service/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/favourite-service/values.yaml b/helm/ecommerce/charts/favourite-service/values.yaml
new file mode 100644
index 000000000..e18df83b3
--- /dev/null
+++ b/helm/ecommerce/charts/favourite-service/values.yaml
@@ -0,0 +1,19 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/favourite-service-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 8800
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientRegion: default
+ eurekaClientAvailabilityZonesDefault: myzone
+ eurekaClientServiceUrlMyZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaInstancePreferIpAddress: "true"
\ No newline at end of file
diff --git a/helm/ecommerce/charts/order-service/Chart.yaml b/helm/ecommerce/charts/order-service/Chart.yaml
new file mode 100644
index 000000000..4118d529d
--- /dev/null
+++ b/helm/ecommerce/charts/order-service/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: order-service
+description: Order microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/order-service/templates/configmap.yaml b/helm/ecommerce/charts/order-service/templates/configmap.yaml
new file mode 100644
index 000000000..9ee1d5a86
--- /dev/null
+++ b/helm/ecommerce/charts/order-service/templates/configmap.yaml
@@ -0,0 +1,15 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_REGION: {{ .Values.config.eurekaClientRegion | quote }}
+ EUREKA_CLIENT_AVAILABILITY_ZONES_DEFAULT: {{ .Values.config.eurekaClientAvailabilityZonesDefault | quote }}
+ EUREKA_CLIENT_SERVICE_URL_MYZONE: {{ .Values.config.eurekaClientServiceUrlMyZone | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
diff --git a/helm/ecommerce/charts/order-service/templates/deployment.yaml b/helm/ecommerce/charts/order-service/templates/deployment.yaml
new file mode 100644
index 000000000..bc060aba8
--- /dev/null
+++ b/helm/ecommerce/charts/order-service/templates/deployment.yaml
@@ -0,0 +1,57 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+
+ echo "✔ Dependencies UP!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/order-service/templates/service.yaml b/helm/ecommerce/charts/order-service/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/order-service/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/order-service/values.yaml b/helm/ecommerce/charts/order-service/values.yaml
new file mode 100644
index 000000000..a25f0cba4
--- /dev/null
+++ b/helm/ecommerce/charts/order-service/values.yaml
@@ -0,0 +1,19 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/order-service-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 8300
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientRegion: default
+ eurekaClientAvailabilityZonesDefault: myzone
+ eurekaClientServiceUrlMyZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka"
+ eurekaInstancePreferIpAddress: "true"
\ No newline at end of file
diff --git a/helm/ecommerce/charts/payment-service/Chart.yaml b/helm/ecommerce/charts/payment-service/Chart.yaml
new file mode 100644
index 000000000..17c2347c0
--- /dev/null
+++ b/helm/ecommerce/charts/payment-service/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: payment-service
+description: Payment microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/payment-service/templates/configmap.yaml b/helm/ecommerce/charts/payment-service/templates/configmap.yaml
new file mode 100644
index 000000000..39725f239
--- /dev/null
+++ b/helm/ecommerce/charts/payment-service/templates/configmap.yaml
@@ -0,0 +1,12 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
diff --git a/helm/ecommerce/charts/payment-service/templates/deployment.yaml b/helm/ecommerce/charts/payment-service/templates/deployment.yaml
new file mode 100644
index 000000000..a00022dc7
--- /dev/null
+++ b/helm/ecommerce/charts/payment-service/templates/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/payment-service/templates/service.yaml b/helm/ecommerce/charts/payment-service/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/payment-service/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/payment-service/values.yaml b/helm/ecommerce/charts/payment-service/values.yaml
new file mode 100644
index 000000000..db04d152b
--- /dev/null
+++ b/helm/ecommerce/charts/payment-service/values.yaml
@@ -0,0 +1,16 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/payment-service-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 8400
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka/"
+ eurekaInstancePreferIpAddress: "true"
diff --git a/helm/ecommerce/charts/product-service/Chart.yaml b/helm/ecommerce/charts/product-service/Chart.yaml
new file mode 100644
index 000000000..0b38b62f8
--- /dev/null
+++ b/helm/ecommerce/charts/product-service/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: product-service
+description: Product microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/product-service/templates/configmap.yaml b/helm/ecommerce/charts/product-service/templates/configmap.yaml
new file mode 100644
index 000000000..610cf135e
--- /dev/null
+++ b/helm/ecommerce/charts/product-service/templates/configmap.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_HOSTNAME: {{ .Values.config.eurekaInstanceHostname | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
diff --git a/helm/ecommerce/charts/product-service/templates/deployment.yaml b/helm/ecommerce/charts/product-service/templates/deployment.yaml
new file mode 100644
index 000000000..a00022dc7
--- /dev/null
+++ b/helm/ecommerce/charts/product-service/templates/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/product-service/templates/service.yaml b/helm/ecommerce/charts/product-service/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/product-service/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/product-service/values.yaml b/helm/ecommerce/charts/product-service/values.yaml
new file mode 100644
index 000000000..a58948566
--- /dev/null
+++ b/helm/ecommerce/charts/product-service/values.yaml
@@ -0,0 +1,17 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/product-service-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 8500
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka/"
+ eurekaInstancePreferIpAddress: "true"
+
diff --git a/helm/ecommerce/charts/proxy-client/Chart.yaml b/helm/ecommerce/charts/proxy-client/Chart.yaml
new file mode 100644
index 000000000..0218fb9b3
--- /dev/null
+++ b/helm/ecommerce/charts/proxy-client/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: proxy-client
+description: Proxy client microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/proxy-client/templates/configmap.yaml b/helm/ecommerce/charts/proxy-client/templates/configmap.yaml
new file mode 100644
index 000000000..39725f239
--- /dev/null
+++ b/helm/ecommerce/charts/proxy-client/templates/configmap.yaml
@@ -0,0 +1,12 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
diff --git a/helm/ecommerce/charts/proxy-client/templates/deployment.yaml b/helm/ecommerce/charts/proxy-client/templates/deployment.yaml
new file mode 100644
index 000000000..a00022dc7
--- /dev/null
+++ b/helm/ecommerce/charts/proxy-client/templates/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/proxy-client/templates/service.yaml b/helm/ecommerce/charts/proxy-client/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/proxy-client/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/proxy-client/values.yaml b/helm/ecommerce/charts/proxy-client/values.yaml
new file mode 100644
index 000000000..4b2301974
--- /dev/null
+++ b/helm/ecommerce/charts/proxy-client/values.yaml
@@ -0,0 +1,14 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/proxy-client-ecommerce-boot"
+ tag: "0.1.0"
+service:
+ type: ClusterIP
+ port: 8900
+
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka/"
+ eurekaInstancePreferIpAddress: "true"
\ No newline at end of file
diff --git a/helm/ecommerce/charts/service-discovery/Chart.yaml b/helm/ecommerce/charts/service-discovery/Chart.yaml
new file mode 100644
index 000000000..8a8bfcd02
--- /dev/null
+++ b/helm/ecommerce/charts/service-discovery/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: service-discovery
+description: Eureka service-discovery
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/service-discovery/templates/configmap.yaml b/helm/ecommerce/charts/service-discovery/templates/configmap.yaml
new file mode 100644
index 000000000..002478556
--- /dev/null
+++ b/helm/ecommerce/charts/service-discovery/templates/configmap.yaml
@@ -0,0 +1,10 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
diff --git a/helm/ecommerce/charts/service-discovery/templates/deployment.yaml b/helm/ecommerce/charts/service-discovery/templates/deployment.yaml
new file mode 100644
index 000000000..583726342
--- /dev/null
+++ b/helm/ecommerce/charts/service-discovery/templates/deployment.yaml
@@ -0,0 +1,27 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.image.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.targetPort }}
+ {{- if .Values.config }}
+ envFrom:
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
diff --git a/helm/ecommerce/charts/service-discovery/templates/service.yaml b/helm/ecommerce/charts/service-discovery/templates/service.yaml
new file mode 100644
index 000000000..247a2c532
--- /dev/null
+++ b/helm/ecommerce/charts/service-discovery/templates/service.yaml
@@ -0,0 +1,14 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.targetPort }}
diff --git a/helm/ecommerce/charts/service-discovery/values.yaml b/helm/ecommerce/charts/service-discovery/values.yaml
new file mode 100644
index 000000000..34c237ed5
--- /dev/null
+++ b/helm/ecommerce/charts/service-discovery/values.yaml
@@ -0,0 +1,16 @@
+replicaCount: 1
+
+image:
+ repository: "selimhorri/service-discovery-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+
+service:
+ type: LoadBalancer
+ port: 8761
+ targetPort: 8761
+
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
diff --git a/helm/ecommerce/charts/shipping-service/Chart.yaml b/helm/ecommerce/charts/shipping-service/Chart.yaml
new file mode 100644
index 000000000..30b7bd7a2
--- /dev/null
+++ b/helm/ecommerce/charts/shipping-service/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: shipping-service
+description: Shipping microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/shipping-service/templates/configmap.yaml b/helm/ecommerce/charts/shipping-service/templates/configmap.yaml
new file mode 100644
index 000000000..75b2fbcec
--- /dev/null
+++ b/helm/ecommerce/charts/shipping-service/templates/configmap.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
+
diff --git a/helm/ecommerce/charts/shipping-service/templates/deployment.yaml b/helm/ecommerce/charts/shipping-service/templates/deployment.yaml
new file mode 100644
index 000000000..a00022dc7
--- /dev/null
+++ b/helm/ecommerce/charts/shipping-service/templates/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/shipping-service/templates/service.yaml b/helm/ecommerce/charts/shipping-service/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/shipping-service/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/shipping-service/values.yaml b/helm/ecommerce/charts/shipping-service/values.yaml
new file mode 100644
index 000000000..3b2bc2545
--- /dev/null
+++ b/helm/ecommerce/charts/shipping-service/values.yaml
@@ -0,0 +1,17 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/shipping-service-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 8600
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka/"
+ eurekaInstancePreferIpAddress: "true"
+
\ No newline at end of file
diff --git a/helm/ecommerce/charts/user-service/Chart.yaml b/helm/ecommerce/charts/user-service/Chart.yaml
new file mode 100644
index 000000000..37aa651d0
--- /dev/null
+++ b/helm/ecommerce/charts/user-service/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: user-service
+description: User microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/user-service/templates/configmap.yaml b/helm/ecommerce/charts/user-service/templates/configmap.yaml
new file mode 100644
index 000000000..39725f239
--- /dev/null
+++ b/helm/ecommerce/charts/user-service/templates/configmap.yaml
@@ -0,0 +1,12 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
+ EUREKA_CLIENT_SERVICE_URL_DEFAULTZONE: {{ .Values.config.eurekaClientServiceUrlDefaultZone | quote }}
+ EUREKA_INSTANCE_PREFER_IP_ADDRESS: {{ .Values.config.eurekaInstancePreferIpAddress | quote }}
diff --git a/helm/ecommerce/charts/user-service/templates/deployment.yaml b/helm/ecommerce/charts/user-service/templates/deployment.yaml
new file mode 100644
index 000000000..a00022dc7
--- /dev/null
+++ b/helm/ecommerce/charts/user-service/templates/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ initContainers:
+ - name: wait-for-dependencies
+ image: busybox:1.28
+ command:
+ - sh
+ - -c
+ - |
+ echo "⏳ Waiting for Cloud Config..."
+ until wget -qO- http://my-ecommerce-cloud-config:9296/actuator/health > /dev/null 2>&1; do
+ echo "Cloud Config not ready yet..."
+ sleep 5
+ done
+ echo "✔ Cloud Config is UP!"
+
+ echo "⏳ Waiting for Eureka..."
+ until nc -z my-ecommerce-service-discovery 8761; do
+ echo "Eureka not ready yet..."
+ sleep 5
+ done
+ echo "✔ Eureka is UP!"
+
+ echo "✔ All dependencies are ready!"
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if or .Values.config .Values.secrets }}
+ envFrom:
+ {{- if .Values.config }}
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
+ {{- if .Values.secrets }}
+ - secretRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-secret
+ {{- end }}
+ {{- end }}
diff --git a/helm/ecommerce/charts/user-service/templates/service.yaml b/helm/ecommerce/charts/user-service/templates/service.yaml
new file mode 100644
index 000000000..cf9ba692d
--- /dev/null
+++ b/helm/ecommerce/charts/user-service/templates/service.yaml
@@ -0,0 +1,13 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ selector:
+ app: {{ .Chart.Name }}
+ ports:
+ - name: http
+ protocol: TCP
+ port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
diff --git a/helm/ecommerce/charts/user-service/values.yaml b/helm/ecommerce/charts/user-service/values.yaml
new file mode 100644
index 000000000..f3652675b
--- /dev/null
+++ b/helm/ecommerce/charts/user-service/values.yaml
@@ -0,0 +1,16 @@
+replicaCount: 1
+image:
+ repository: "selimhorri/user-service-ecommerce-boot"
+ tag: "0.1.0"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 8700
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
+ eurekaClientServiceUrlDefaultZone: "http://my-ecommerce-service-discovery:8761/eureka/"
+ eurekaInstancePreferIpAddress: "true"
diff --git a/helm/ecommerce/charts/zipkin/Chart.yaml b/helm/ecommerce/charts/zipkin/Chart.yaml
new file mode 100644
index 000000000..328c26da2
--- /dev/null
+++ b/helm/ecommerce/charts/zipkin/Chart.yaml
@@ -0,0 +1,6 @@
+apiVersion: v2
+name: zipkin
+description: User microservice
+type: application
+version: 0.1.0
+appVersion: "1.0"
diff --git a/helm/ecommerce/charts/zipkin/templates/configmap.yaml b/helm/ecommerce/charts/zipkin/templates/configmap.yaml
new file mode 100644
index 000000000..002478556
--- /dev/null
+++ b/helm/ecommerce/charts/zipkin/templates/configmap.yaml
@@ -0,0 +1,10 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ labels:
+ app: {{ .Chart.Name }}
+data:
+ SPRING_PROFILES_ACTIVE: {{ .Values.config.springProfilesActive | quote }}
+ SPRING_ZIPKIN_BASE_URL: {{ .Values.config.springZipkinBaseUrl | quote }}
+ SPRING_CONFIG_IMPORT: {{ .Values.config.springConfigImport | quote }}
diff --git a/helm/ecommerce/charts/zipkin/templates/deployment.yaml b/helm/ecommerce/charts/zipkin/templates/deployment.yaml
new file mode 100644
index 000000000..fcd32a5a2
--- /dev/null
+++ b/helm/ecommerce/charts/zipkin/templates/deployment.yaml
@@ -0,0 +1,27 @@
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ replicas: {{ .Values.replicaCount | default 1 }}
+ selector:
+ matchLabels:
+ app: {{ .Chart.Name }}
+ template:
+ metadata:
+ labels:
+ app: {{ .Chart.Name }}
+ spec:
+ containers:
+ - name: {{ .Chart.Name }}
+ image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
+ imagePullPolicy: {{ .Values.imagePullPolicy | default "IfNotPresent" }}
+ ports:
+ - containerPort: {{ .Values.service.port }}
+ {{- if .Values.config }}
+ envFrom:
+ - configMapRef:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}-config
+ {{- end }}
\ No newline at end of file
diff --git a/helm/ecommerce/charts/zipkin/templates/service.yaml b/helm/ecommerce/charts/zipkin/templates/service.yaml
new file mode 100644
index 000000000..a74b23741
--- /dev/null
+++ b/helm/ecommerce/charts/zipkin/templates/service.yaml
@@ -0,0 +1,16 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: {{ .Release.Name }}-{{ .Chart.Name }}
+ labels:
+ app: {{ .Chart.Name }}
+spec:
+ type: {{ .Values.service.type | default "ClusterIP" }}
+ ports:
+ - port: {{ .Values.service.port }}
+ targetPort: {{ .Values.service.port }}
+ protocol: TCP
+ name: http
+ selector:
+ app: {{ .Chart.Name }}
+
diff --git a/helm/ecommerce/charts/zipkin/values.yaml b/helm/ecommerce/charts/zipkin/values.yaml
new file mode 100644
index 000000000..0355287ae
--- /dev/null
+++ b/helm/ecommerce/charts/zipkin/values.yaml
@@ -0,0 +1,14 @@
+replicaCount: 1
+image:
+ repository: "openzipkin/zipkin"
+ tag: "latest"
+ imagePullPolicy: IfNotPresent
+service:
+ type: ClusterIP
+ port: 9411
+
+# Configuración no sensible
+config:
+ springProfilesActive: dev
+ springZipkinBaseUrl: "http://my-ecommerce-zipkin:9411"
+ springConfigImport: "optional:configserver:http://my-ecommerce-cloud-config:9296/"
diff --git a/helm/ecommerce/values.yaml b/helm/ecommerce/values.yaml
new file mode 100644
index 000000000..e69de29bb
diff --git a/mvnw b/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/mvnw.cmd b/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/order-service/.gitignore b/order-service/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/order-service/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/order-service/.mvn/wrapper/MavenWrapperDownloader.java b/order-service/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/order-service/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/order-service/.mvn/wrapper/maven-wrapper.jar b/order-service/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/order-service/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/order-service/.mvn/wrapper/maven-wrapper.properties b/order-service/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/order-service/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/order-service/Dockerfile b/order-service/Dockerfile
deleted file mode 100644
index b2b25a41a..000000000
--- a/order-service/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-ENV SPRING_PROFILES_ACTIVE dev
-COPY order-service/ .
-ADD order-service/target/order-service-v${PROJECT_VERSION}.jar order-service.jar
-EXPOSE 8300
-ENTRYPOINT ["java", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "order-service.jar"]
-
-
diff --git a/order-service/compose.yml b/order-service/compose.yml
deleted file mode 100644
index 34107eacf..000000000
--- a/order-service/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- order-service-container:
- image: selimhorri/order-service-ecommerce-boot:0.1.0
- ports:
- - 8300:8300
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/order-service/mvnw b/order-service/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/order-service/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/order-service/mvnw.cmd b/order-service/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/order-service/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/order-service/pom.xml b/order-service/pom.xml
deleted file mode 100644
index 13d9dd1ab..000000000
--- a/order-service/pom.xml
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- order-service
- order-service
- Spring Boot microservice
- jar
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter
-
-
- org.springframework.cloud
- spring-cloud-starter-config
-
-
- org.springframework.boot
- spring-boot-starter-data-jpa
-
-
- org.springframework.boot
- spring-boot-starter-thymeleaf
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.flywaydb
- flyway-core
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- com.h2database
- h2
- runtime
-
-
- mysql
- mysql-connector-java
- runtime
-
-
- org.projectlombok
- lombok
- true
-
-
- org.testcontainers
- mysql
- test
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.projectlombok
- lombok
-
-
-
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/OrderServiceApplication.java b/order-service/src/main/java/com/selimhorri/app/OrderServiceApplication.java
deleted file mode 100644
index e3db730af..000000000
--- a/order-service/src/main/java/com/selimhorri/app/OrderServiceApplication.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@SpringBootApplication
-@EnableEurekaClient
-public class OrderServiceApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(OrderServiceApplication.class, args);
- }
-
-
-
-}
-
-@RestController
-class OrderController {
-
- @GetMapping
- public String msg() {
- return "Order controller responding!!";
- }
-
-}
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java b/order-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
deleted file mode 100644
index a6346459a..000000000
--- a/order-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.config.client;
-
-import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.client.RestTemplate;
-
-@Configuration
-public class ClientConfig {
-
- @LoadBalanced
- @Bean
- public RestTemplate restTemplateBean() {
- return new RestTemplate();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java b/order-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
deleted file mode 100644
index 7e0f843ea..000000000
--- a/order-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.selimhorri.app.config.mapper;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
-import com.fasterxml.jackson.databind.json.JsonMapper;
-
-@Configuration
-public class MapperConfig {
-
- @Bean
- public ObjectMapper objectMapperBean() {
- return new JsonMapper()
- .enable(SerializationFeature.INDENT_OUTPUT);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/constant/AppConstant.java b/order-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
deleted file mode 100644
index 40f49bbc3..000000000
--- a/order-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.constant;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public abstract class AppConstant {
-
- public static final String LOCAL_DATE_FORMAT = "dd-MM-yyyy";
- public static final String LOCAL_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String ZONED_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String INSTANT_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
-
- @NoArgsConstructor(access = AccessLevel.PRIVATE)
- public abstract class DiscoveredDomainsApi {
-
- public static final String USER_SERVICE_HOST = "http://USER-SERVICE/user-service";
- public static final String USER_SERVICE_API_URL = "http://USER-SERVICE/user-service/api/users";
-
- public static final String PRODUCT_SERVICE_HOST = "http://PRODUCT-SERVICE/product-service";
- public static final String PRODUCT_SERVICE_API_URL = "http://PRODUCT-SERVICE/product-service/api/products";
-
- public static final String ORDER_SERVICE_HOST = "http://ORDER-SERVICE/order-service";
- public static final String ORDER_SERVICE_API_URL = "http://ORDER-SERVICE/order-service/api/orders";
-
- public static final String FAVOURITE_SERVICE_HOST = "http://FAVOURITE-SERVICE/favourite-service";
- public static final String FAVOURITE_SERVICE_API_URL = "http://FAVOURITE-SERVICE/favourite-service/api/favourites";
-
- public static final String PAYMENT_SERVICE_HOST = "http://PAYMENT-SERVICE/payment-service";
- public static final String PAYMENT_SERVICE_API_URL = "http://PAYMENT-SERVICE/payment-service/api/payments";
-
- public static final String SHIPPING_SERVICE_HOST = "http://SHIPPING-SERVICE/shipping-service";
- public static final String SHIPPING_SERVICE_API_URL = "http://SHIPPING-SERVICE/shipping-service/api/shippings";
-
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java b/order-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
deleted file mode 100644
index 3f4dd17fa..000000000
--- a/order-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.time.Instant;
-
-import javax.persistence.Column;
-import javax.persistence.MappedSuperclass;
-
-import org.springframework.data.annotation.CreatedDate;
-import org.springframework.data.annotation.LastModifiedDate;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-
-import lombok.AccessLevel;
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@MappedSuperclass
-@NoArgsConstructor(access = AccessLevel.PROTECTED)
-@AllArgsConstructor(access = AccessLevel.PROTECTED)
-@Data
-abstract public class AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @CreatedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "created_at")
- private Instant createdAt;
-
- @LastModifiedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "updated_at")
- private Instant updatedAt;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/domain/Cart.java b/order-service/src/main/java/com/selimhorri/app/domain/Cart.java
deleted file mode 100644
index 6218b67ac..000000000
--- a/order-service/src/main/java/com/selimhorri/app/domain/Cart.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.OneToMany;
-import javax.persistence.Table;
-
-import com.fasterxml.jackson.annotation.JsonIgnore;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@Entity
-@Table(name = "carts")
-@NoArgsConstructor
-@AllArgsConstructor
-@EqualsAndHashCode(callSuper = true, exclude = {"orders"})
-@Data
-@Builder
-public final class Cart extends AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "cart_id", unique = true, nullable = false, updatable = false)
- private Integer cartId;
-
- @Column(name = "user_id")
- private Integer userId;
-
- @JsonIgnore
- @OneToMany(mappedBy = "cart", fetch = FetchType.LAZY, cascade = CascadeType.ALL)
- private Set orders;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/domain/Order.java b/order-service/src/main/java/com/selimhorri/app/domain/Order.java
deleted file mode 100644
index d96518fb8..000000000
--- a/order-service/src/main/java/com/selimhorri/app/domain/Order.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@Entity
-@Table(name = "orders")
-@NoArgsConstructor
-@AllArgsConstructor
-@EqualsAndHashCode(callSuper = true, exclude = {"cart"})
-@Data
-@Builder
-public final class Order extends AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "order_id", unique = true, nullable = false, updatable = false)
- private Integer orderId;
-
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- @Column(name = "order_date")
- private LocalDateTime orderDate;
-
- @Column(name = "order_desc")
- private String orderDesc;
-
- @Column(name = "order_fee", columnDefinition = "decimal")
- private Double orderFee;
-
- @ManyToOne(fetch = FetchType.EAGER)
- @JoinColumn(name = "cart_id")
- private Cart cart;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/dto/CartDto.java b/order-service/src/main/java/com/selimhorri/app/dto/CartDto.java
deleted file mode 100644
index ac7d5f5dc..000000000
--- a/order-service/src/main/java/com/selimhorri/app/dto/CartDto.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CartDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer cartId;
- private Integer userId;
-
- @JsonInclude(Include.NON_NULL)
- private Set orderDtos;
-
- @JsonProperty("user")
- @JsonInclude(Include.NON_NULL)
- private UserDto userDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/dto/OrderDto.java b/order-service/src/main/java/com/selimhorri/app/dto/OrderDto.java
deleted file mode 100644
index 6db7b9a89..000000000
--- a/order-service/src/main/java/com/selimhorri/app/dto/OrderDto.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer orderId;
-
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime orderDate;
- private String orderDesc;
- private Double orderFee;
-
- @JsonProperty("cart")
- @JsonInclude(Include.NON_NULL)
- private CartDto cartDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/dto/UserDto.java b/order-service/src/main/java/com/selimhorri/app/dto/UserDto.java
deleted file mode 100644
index c8a2db53d..000000000
--- a/order-service/src/main/java/com/selimhorri/app/dto/UserDto.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class UserDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer userId;
- private String firstName;
- private String lastName;
- private String imageUrl;
- private String email;
- private String phone;
-
- @JsonProperty("cart")
- @JsonInclude(Include.NON_NULL)
- private CartDto cartDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java b/order-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
deleted file mode 100644
index 920a621ab..000000000
--- a/order-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.selimhorri.app.dto.response.collection;
-
-import java.util.Collection;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class DtoCollectionResponse {
-
- private Collection collection;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java b/order-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
deleted file mode 100644
index b43fd0e4e..000000000
--- a/order-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package com.selimhorri.app.exception;
-
-import java.time.ZoneId;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.converter.HttpMessageNotReadableException;
-import org.springframework.validation.BindException;
-import org.springframework.web.bind.MethodArgumentNotValidException;
-import org.springframework.web.bind.annotation.ControllerAdvice;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-
-import com.selimhorri.app.exception.payload.ExceptionMsg;
-import com.selimhorri.app.exception.wrapper.CartNotFoundException;
-import com.selimhorri.app.exception.wrapper.OrderNotFoundException;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@ControllerAdvice
-@Slf4j
-@RequiredArgsConstructor
-public class ApiExceptionHandler {
-
- @ExceptionHandler(value = {
- MethodArgumentNotValidException.class,
- HttpMessageNotReadableException.class,
- })
- public ResponseEntity handleValidationException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle validation exception*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("*" + e.getBindingResult().getFieldError().getDefaultMessage() + "!**")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
- @ExceptionHandler(value = {
- CartNotFoundException.class,
- OrderNotFoundException.class,
- IllegalStateException.class,
- })
- public ResponseEntity handleApiRequestException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle API request*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("#### " + e.getMessage() + "! ####")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java b/order-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
deleted file mode 100644
index 274842143..000000000
--- a/order-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.exception.payload;
-
-import java.io.Serializable;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.ser.ZonedDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public final class ExceptionMsg implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @JsonSerialize(using = ZonedDateTimeSerializer.class)
- @JsonFormat(shape = Shape.STRING, pattern = AppConstant.ZONED_DATE_TIME_FORMAT)
- private final ZonedDateTime timestamp;
-
- @JsonInclude(value = Include.NON_NULL)
- private Throwable throwable;
- private final HttpStatus httpStatus;
- private final String msg;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/exception/wrapper/CartNotFoundException.java b/order-service/src/main/java/com/selimhorri/app/exception/wrapper/CartNotFoundException.java
deleted file mode 100644
index 8bf37d869..000000000
--- a/order-service/src/main/java/com/selimhorri/app/exception/wrapper/CartNotFoundException.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class CartNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public CartNotFoundException() {
- super();
- }
-
- public CartNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public CartNotFoundException(String message) {
- super(message);
- }
-
- public CartNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/exception/wrapper/OrderNotFoundException.java b/order-service/src/main/java/com/selimhorri/app/exception/wrapper/OrderNotFoundException.java
deleted file mode 100644
index 502a7ecdf..000000000
--- a/order-service/src/main/java/com/selimhorri/app/exception/wrapper/OrderNotFoundException.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class OrderNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public OrderNotFoundException() {
- super();
- }
-
- public OrderNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public OrderNotFoundException(String message) {
- super(message);
- }
-
- public OrderNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/helper/CartMappingHelper.java b/order-service/src/main/java/com/selimhorri/app/helper/CartMappingHelper.java
deleted file mode 100644
index ef1f6a8d5..000000000
--- a/order-service/src/main/java/com/selimhorri/app/helper/CartMappingHelper.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.selimhorri.app.helper;
-
-import com.selimhorri.app.domain.Cart;
-import com.selimhorri.app.dto.CartDto;
-import com.selimhorri.app.dto.UserDto;
-
-public interface CartMappingHelper {
-
- public static CartDto map(final Cart cart) {
- return CartDto.builder()
- .cartId(cart.getCartId())
- .userId(cart.getUserId())
- .userDto(
- UserDto.builder()
- .userId(cart.getUserId())
- .build())
- .build();
- }
-
- public static Cart map(final CartDto cartDto) {
- return Cart.builder()
- .cartId(cartDto.getCartId())
- .userId(cartDto.getUserId())
- .build();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/helper/OrderMappingHelper.java b/order-service/src/main/java/com/selimhorri/app/helper/OrderMappingHelper.java
deleted file mode 100644
index 1905421cf..000000000
--- a/order-service/src/main/java/com/selimhorri/app/helper/OrderMappingHelper.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.helper;
-
-import com.selimhorri.app.domain.Cart;
-import com.selimhorri.app.domain.Order;
-import com.selimhorri.app.dto.CartDto;
-import com.selimhorri.app.dto.OrderDto;
-
-public interface OrderMappingHelper {
-
- public static OrderDto map(final Order order) {
- return OrderDto.builder()
- .orderId(order.getOrderId())
- .orderDate(order.getOrderDate())
- .orderDesc(order.getOrderDesc())
- .orderFee(order.getOrderFee())
- .cartDto(
- CartDto.builder()
- .cartId(order.getCart().getCartId())
- .build())
- .build();
- }
-
- public static Order map(final OrderDto orderDto) {
- return Order.builder()
- .orderId(orderDto.getOrderId())
- .orderDate(orderDto.getOrderDate())
- .orderDesc(orderDto.getOrderDesc())
- .orderFee(orderDto.getOrderFee())
- .cart(
- Cart.builder()
- .cartId(orderDto.getCartDto().getCartId())
- .build())
- .build();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/repository/CartRepository.java b/order-service/src/main/java/com/selimhorri/app/repository/CartRepository.java
deleted file mode 100644
index 80f4d670b..000000000
--- a/order-service/src/main/java/com/selimhorri/app/repository/CartRepository.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.selimhorri.app.repository;
-
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import com.selimhorri.app.domain.Cart;
-
-public interface CartRepository extends JpaRepository {
-
-
-
-}
diff --git a/order-service/src/main/java/com/selimhorri/app/repository/OrderRepository.java b/order-service/src/main/java/com/selimhorri/app/repository/OrderRepository.java
deleted file mode 100644
index f3927ff16..000000000
--- a/order-service/src/main/java/com/selimhorri/app/repository/OrderRepository.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.selimhorri.app.repository;
-
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import com.selimhorri.app.domain.Order;
-
-public interface OrderRepository extends JpaRepository {
-
-
-
-}
diff --git a/order-service/src/main/java/com/selimhorri/app/resource/CartResource.java b/order-service/src/main/java/com/selimhorri/app/resource/CartResource.java
deleted file mode 100644
index 89ce472c7..000000000
--- a/order-service/src/main/java/com/selimhorri/app/resource/CartResource.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package com.selimhorri.app.resource;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.dto.CartDto;
-import com.selimhorri.app.dto.response.collection.DtoCollectionResponse;
-import com.selimhorri.app.service.CartService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/carts")
-@Slf4j
-@RequiredArgsConstructor
-public class CartResource {
-
- private final CartService cartService;
-
- @GetMapping
- public ResponseEntity> findAll() {
- log.info("*** CartDto List, controller; fetch all categories *");
- return ResponseEntity.ok(new DtoCollectionResponse<>(this.cartService.findAll()));
- }
-
- @GetMapping("/{cartId}")
- public ResponseEntity findById(
- @PathVariable("cartId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String cartId) {
- log.info("*** CartDto, resource; fetch cart by id *");
- return ResponseEntity.ok(this.cartService.findById(Integer.parseInt(cartId)));
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto) {
- log.info("*** CartDto, resource; save cart *");
- return ResponseEntity.ok(this.cartService.save(cartDto));
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final CartDto cartDto) {
- log.info("*** CartDto, resource; update cart *");
- return ResponseEntity.ok(this.cartService.update(cartDto));
- }
-
- @PutMapping("/{cartId}")
- public ResponseEntity update(
- @PathVariable("cartId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String cartId,
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final CartDto cartDto) {
- log.info("*** CartDto, resource; update cart with cartId *");
- return ResponseEntity.ok(this.cartService.update(Integer.parseInt(cartId), cartDto));
- }
-
- @DeleteMapping("/{cartId}")
- public ResponseEntity deleteById(@PathVariable("cartId") final String cartId) {
- log.info("*** Boolean, resource; delete cart by id *");
- this.cartService.deleteById(Integer.parseInt(cartId));
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/resource/OrderResource.java b/order-service/src/main/java/com/selimhorri/app/resource/OrderResource.java
deleted file mode 100644
index 237d0a631..000000000
--- a/order-service/src/main/java/com/selimhorri/app/resource/OrderResource.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package com.selimhorri.app.resource;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.dto.OrderDto;
-import com.selimhorri.app.dto.response.collection.DtoCollectionResponse;
-import com.selimhorri.app.service.OrderService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/orders")
-@Slf4j
-@RequiredArgsConstructor
-public class OrderResource {
-
- private final OrderService orderService;
-
- @GetMapping
- public ResponseEntity> findAll() {
- log.info("*** OrderDto List, controller; fetch all orders *");
- return ResponseEntity.ok(new DtoCollectionResponse<>(this.orderService.findAll()));
- }
-
- @GetMapping("/{orderId}")
- public ResponseEntity findById(
- @PathVariable("orderId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String orderId) {
- log.info("*** OrderDto, resource; fetch order by id *");
- return ResponseEntity.ok(this.orderService.findById(Integer.parseInt(orderId)));
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderDto orderDto) {
- log.info("*** OrderDto, resource; save order *");
- return ResponseEntity.ok(this.orderService.save(orderDto));
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderDto orderDto) {
- log.info("*** OrderDto, resource; update order *");
- return ResponseEntity.ok(this.orderService.update(orderDto));
- }
-
- @PutMapping("/{orderId}")
- public ResponseEntity update(
- @PathVariable("orderId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String orderId,
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderDto orderDto) {
- log.info("*** OrderDto, resource; update order with orderId *");
- return ResponseEntity.ok(this.orderService.update(Integer.parseInt(orderId), orderDto));
- }
-
- @DeleteMapping("/{orderId}")
- public ResponseEntity deleteById(@PathVariable("orderId") final String orderId) {
- log.info("*** Boolean, resource; delete order by id *");
- this.orderService.deleteById(Integer.parseInt(orderId));
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/service/CartService.java b/order-service/src/main/java/com/selimhorri/app/service/CartService.java
deleted file mode 100644
index 7c9ca896b..000000000
--- a/order-service/src/main/java/com/selimhorri/app/service/CartService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.service;
-
-import java.util.List;
-
-import com.selimhorri.app.dto.CartDto;
-
-public interface CartService {
-
- List findAll();
- CartDto findById(final Integer cartId);
- CartDto save(final CartDto cartDto);
- CartDto update(final CartDto cartDto);
- CartDto update(final Integer cartId, final CartDto cartDto);
- void deleteById(final Integer cartId);
-
-}
diff --git a/order-service/src/main/java/com/selimhorri/app/service/OrderService.java b/order-service/src/main/java/com/selimhorri/app/service/OrderService.java
deleted file mode 100644
index 8cdae858d..000000000
--- a/order-service/src/main/java/com/selimhorri/app/service/OrderService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.service;
-
-import java.util.List;
-
-import com.selimhorri.app.dto.OrderDto;
-
-public interface OrderService {
-
- List findAll();
- OrderDto findById(final Integer orderId);
- OrderDto save(final OrderDto orderDto);
- OrderDto update(final OrderDto orderDto);
- OrderDto update(final Integer orderId, final OrderDto orderDto);
- void deleteById(final Integer orderId);
-
-}
diff --git a/order-service/src/main/java/com/selimhorri/app/service/impl/CartServiceImpl.java b/order-service/src/main/java/com/selimhorri/app/service/impl/CartServiceImpl.java
deleted file mode 100644
index d3c997398..000000000
--- a/order-service/src/main/java/com/selimhorri/app/service/impl/CartServiceImpl.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package com.selimhorri.app.service.impl;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.transaction.Transactional;
-
-import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-
-import com.selimhorri.app.constant.AppConstant;
-import com.selimhorri.app.dto.CartDto;
-import com.selimhorri.app.dto.UserDto;
-import com.selimhorri.app.exception.wrapper.CartNotFoundException;
-import com.selimhorri.app.helper.CartMappingHelper;
-import com.selimhorri.app.repository.CartRepository;
-import com.selimhorri.app.service.CartService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Transactional
-@Slf4j
-@RequiredArgsConstructor
-public class CartServiceImpl implements CartService {
-
- private final CartRepository cartRepository;
- private final RestTemplate restTemplate;
-
- @Override
- public List findAll() {
- log.info("*** CartDto List, service; fetch all carts *");
- return this.cartRepository.findAll()
- .stream()
- .map(CartMappingHelper::map)
- .map(c -> {
- c.setUserDto(this.restTemplate.getForObject(AppConstant.DiscoveredDomainsApi
- .USER_SERVICE_API_URL + "/" + c.getUserDto().getUserId(), UserDto.class));
- return c;
- })
- .distinct()
- .collect(Collectors.toUnmodifiableList());
- }
-
- @Override
- public CartDto findById(final Integer cartId) {
- log.info("*** CartDto, service; fetch cart by id *");
- return this.cartRepository.findById(cartId)
- .map(CartMappingHelper::map)
- .map(c -> {
- c.setUserDto(this.restTemplate.getForObject(AppConstant.DiscoveredDomainsApi
- .USER_SERVICE_API_URL + "/" + c.getUserDto().getUserId(), UserDto.class));
- return c;
- })
- .orElseThrow(() -> new CartNotFoundException(String
- .format("Cart with id: %d not found", cartId)));
- }
-
- @Override
- public CartDto save(final CartDto cartDto) {
- log.info("*** CartDto, service; save cart *");
- return CartMappingHelper.map(this.cartRepository
- .save(CartMappingHelper.map(cartDto)));
- }
-
- @Override
- public CartDto update(final CartDto cartDto) {
- log.info("*** CartDto, service; update cart *");
- return CartMappingHelper.map(this.cartRepository
- .save(CartMappingHelper.map(cartDto)));
- }
-
- @Override
- public CartDto update(final Integer cartId, final CartDto cartDto) {
- log.info("*** CartDto, service; update cart with cartId *");
- return CartMappingHelper.map(this.cartRepository
- .save(CartMappingHelper.map(this.findById(cartId))));
- }
-
- @Override
- public void deleteById(final Integer cartId) {
- log.info("*** Void, service; delete cart by id *");
- this.cartRepository.deleteById(cartId);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/java/com/selimhorri/app/service/impl/OrderServiceImpl.java b/order-service/src/main/java/com/selimhorri/app/service/impl/OrderServiceImpl.java
deleted file mode 100644
index 2a656802e..000000000
--- a/order-service/src/main/java/com/selimhorri/app/service/impl/OrderServiceImpl.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package com.selimhorri.app.service.impl;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.transaction.Transactional;
-
-import org.springframework.stereotype.Service;
-
-import com.selimhorri.app.dto.OrderDto;
-import com.selimhorri.app.exception.wrapper.OrderNotFoundException;
-import com.selimhorri.app.helper.OrderMappingHelper;
-import com.selimhorri.app.repository.OrderRepository;
-import com.selimhorri.app.service.OrderService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Transactional
-@Slf4j
-@RequiredArgsConstructor
-public class OrderServiceImpl implements OrderService {
-
- private final OrderRepository orderRepository;
-
- @Override
- public List findAll() {
- log.info("*** OrderDto List, service; fetch all orders *");
- return this.orderRepository.findAll()
- .stream()
- .map(OrderMappingHelper::map)
- .distinct()
- .collect(Collectors.toUnmodifiableList());
- }
-
- @Override
- public OrderDto findById(final Integer orderId) {
- log.info("*** OrderDto, service; fetch order by id *");
- return this.orderRepository.findById(orderId)
- .map(OrderMappingHelper::map)
- .orElseThrow(() -> new OrderNotFoundException(String
- .format("Order with id: %d not found", orderId)));
- }
-
- @Override
- public OrderDto save(final OrderDto orderDto) {
- log.info("*** OrderDto, service; save order *");
- return OrderMappingHelper.map(this.orderRepository
- .save(OrderMappingHelper.map(orderDto)));
- }
-
- @Override
- public OrderDto update(final OrderDto orderDto) {
- log.info("*** OrderDto, service; update order *");
- return OrderMappingHelper.map(this.orderRepository
- .save(OrderMappingHelper.map(orderDto)));
- }
-
- @Override
- public OrderDto update(final Integer orderId, final OrderDto orderDto) {
- log.info("*** OrderDto, service; update order with orderId *");
- return OrderMappingHelper.map(this.orderRepository
- .save(OrderMappingHelper.map(this.findById(orderId))));
- }
-
- @Override
- public void deleteById(final Integer orderId) {
- log.info("*** Void, service; delete order by id *");
- this.orderRepository.delete(OrderMappingHelper.map(this.findById(orderId)));
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/resources/application-dev.yml b/order-service/src/main/resources/application-dev.yml
deleted file mode 100644
index e9e1b3681..000000000
--- a/order-service/src/main/resources/application-dev.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-server:
- port: 8300
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:h2:mem:ecommerce_dev_db;DB_CLOSE_ON_EXIT=FALSE
- username: sa
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.H2Dialect
- use_sql_comments: true
- format_sql: true
- h2:
- console:
- enabled: true
- path: /h2-console
- #flyway:
- # baseline-on-migrate: true
- # enabled: true
-
-logging:
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/order-service/src/main/resources/application-prod.yml b/order-service/src/main/resources/application-prod.yml
deleted file mode 100644
index 9cf19fbba..000000000
--- a/order-service/src/main/resources/application-prod.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8300
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: false
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/prod_log.log
- clean-history-on-start: false
- level:
- org:
- hibernate:
- SQL: INFO
- springframework:
- web: INFO
- data: INFO
- boot:
- autoconfigure:
- data:
- rest: INFO
- jpa: INFO
- orm: INFO
-
diff --git a/order-service/src/main/resources/application-stage.yml b/order-service/src/main/resources/application-stage.yml
deleted file mode 100644
index 92140f53e..000000000
--- a/order-service/src/main/resources/application-stage.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8300
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/stage_log.log
- clean-history-on-start: true
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/order-service/src/main/resources/application.yml b/order-service/src/main/resources/application.yml
deleted file mode 100644
index 1713e8409..000000000
--- a/order-service/src/main/resources/application.yml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-server:
- servlet:
- context-path: /order-service
-
-spring:
- zipkin:
- base-url: ${SPRING_ZIPKIN_BASE_URL:http://localhost:9411/}
- config:
- import: ${SPRING_CONFIG_IMPORT:optional:configserver:http://localhost:9296}
- application:
- name: ORDER-SERVICE
- profiles:
- active:
- - dev
-
-resilience4j:
- circuitbreaker:
- instances:
- orderService:
- register-health-indicator: true
- event-consumer-buffer-size: 10
- automatic-transition-from-open-to-half-open-enabled: true
- failure-rate-threshold: 50
- minimum-number-of-calls: 5
- permitted-number-of-calls-in-half-open-state: 3
- sliding-window-size: 10
- wait-duration-in-open-state: 5s
- sliding-window-type: COUNT_BASED
-
-management:
- health:
- circuitbreakers:
- enabled: true
- endpoint:
- health:
- show-details: always
-
-
-
-
-
-
-
-
-
diff --git a/order-service/src/main/resources/db/migration/V1__create_carts_table.sql b/order-service/src/main/resources/db/migration/V1__create_carts_table.sql
deleted file mode 100644
index 8c9491854..000000000
--- a/order-service/src/main/resources/db/migration/V1__create_carts_table.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-
-CREATE TABLE carts (
- cart_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
- user_id INT(11),
- created_at TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- updated_at TIMESTAMP
-);
-
diff --git a/order-service/src/main/resources/db/migration/V2__insert_carts_table.sql b/order-service/src/main/resources/db/migration/V2__insert_carts_table.sql
deleted file mode 100644
index 16ac0b9ae..000000000
--- a/order-service/src/main/resources/db/migration/V2__insert_carts_table.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-
-INSERT INTO carts
-(user_id) VALUES
-(1),
-(2),
-(3),
-(4);
-
diff --git a/order-service/src/main/resources/db/migration/V3__create_orders_table.sql b/order-service/src/main/resources/db/migration/V3__create_orders_table.sql
deleted file mode 100644
index 0bebcc1a7..000000000
--- a/order-service/src/main/resources/db/migration/V3__create_orders_table.sql
+++ /dev/null
@@ -1,11 +0,0 @@
-
-CREATE TABLE orders (
- order_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
- cart_id INT(11),
- order_date TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- order_desc VARCHAR(255),
- order_fee DECIMAL(7, 2),
- created_at TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- updated_at TIMESTAMP
-);
-
diff --git a/order-service/src/main/resources/db/migration/V4__insert_orders_table.sql b/order-service/src/main/resources/db/migration/V4__insert_orders_table.sql
deleted file mode 100644
index 03dd9fade..000000000
--- a/order-service/src/main/resources/db/migration/V4__insert_orders_table.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-
-INSERT INTO orders
-(cart_id, order_desc, order_fee) VALUES
-(1, 'init', 5000),
-(2, 'init', 5000),
-(3, 'init', 5000),
-(4, 'init', 5000);
-
diff --git a/order-service/src/main/resources/db/migration/V5__create_orders_cart_id_fk.sql b/order-service/src/main/resources/db/migration/V5__create_orders_cart_id_fk.sql
deleted file mode 100644
index 1b3300d9b..000000000
--- a/order-service/src/main/resources/db/migration/V5__create_orders_cart_id_fk.sql
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ALTER TABLE orders
- ADD CONSTRAINT fk5_assign FOREIGN KEY (cart_id) REFERENCES carts (cart_id);
diff --git a/order-service/src/test/java/com/selimhorri/app/OrderServiceApplicationTests.java b/order-service/src/test/java/com/selimhorri/app/OrderServiceApplicationTests.java
deleted file mode 100644
index 019d863ef..000000000
--- a/order-service/src/test/java/com/selimhorri/app/OrderServiceApplicationTests.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class OrderServiceApplicationTests {
-
-
-
-}
-
-
-
-
-
-
diff --git a/order-service/system.properties b/order-service/system.properties
deleted file mode 100644
index 180a27348..000000000
--- a/order-service/system.properties
+++ /dev/null
@@ -1 +0,0 @@
-java.runtime.version=11
\ No newline at end of file
diff --git a/payment-service/.gitignore b/payment-service/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/payment-service/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/payment-service/.mvn/wrapper/MavenWrapperDownloader.java b/payment-service/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/payment-service/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/payment-service/.mvn/wrapper/maven-wrapper.jar b/payment-service/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/payment-service/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/payment-service/.mvn/wrapper/maven-wrapper.properties b/payment-service/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/payment-service/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/payment-service/Dockerfile b/payment-service/Dockerfile
deleted file mode 100644
index 57d5b931c..000000000
--- a/payment-service/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-ENV SPRING_PROFILES_ACTIVE dev
-COPY payment-service/ .
-ADD payment-service/target/payment-service-v${PROJECT_VERSION}.jar payment-service.jar
-EXPOSE 8400
-ENTRYPOINT ["java", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "payment-service.jar"]
-
-
diff --git a/payment-service/compose.yml b/payment-service/compose.yml
deleted file mode 100644
index 4c3539d19..000000000
--- a/payment-service/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- payment-service-container:
- image: selimhorri/payment-service-ecommerce-boot:0.1.0
- ports:
- - 8400:8400
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/payment-service/mvnw b/payment-service/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/payment-service/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/payment-service/mvnw.cmd b/payment-service/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/payment-service/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/payment-service/pom.xml b/payment-service/pom.xml
deleted file mode 100644
index 0f3da9562..000000000
--- a/payment-service/pom.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- payment-service
- payment-service
- Spring Boot microservice
- jar
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter
-
-
- org.springframework.cloud
- spring-cloud-starter-config
-
-
- org.springframework.boot
- spring-boot-starter-data-jpa
-
-
- org.springframework.boot
- spring-boot-starter-thymeleaf
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.flywaydb
- flyway-core
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- com.h2database
- h2
- runtime
-
-
- mysql
- mysql-connector-java
- runtime
-
-
- org.projectlombok
- lombok
- true
-
-
- org.testcontainers
- mysql
- test
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.projectlombok
- lombok
-
-
-
-
-
- ${project.artifactId}-v${project.version}
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/PaymentServiceApplication.java b/payment-service/src/main/java/com/selimhorri/app/PaymentServiceApplication.java
deleted file mode 100644
index 4b46f8158..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/PaymentServiceApplication.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@SpringBootApplication
-@EnableEurekaClient
-public class PaymentServiceApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(PaymentServiceApplication.class, args);
- }
-
-
-
-}
-
-@RestController
-class PaymentController {
-
- @GetMapping
- public String msg() {
- return "Payment controller responding!!";
- }
-
-}
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java b/payment-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
deleted file mode 100644
index a6346459a..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.config.client;
-
-import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.client.RestTemplate;
-
-@Configuration
-public class ClientConfig {
-
- @LoadBalanced
- @Bean
- public RestTemplate restTemplateBean() {
- return new RestTemplate();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java b/payment-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
deleted file mode 100644
index 7e0f843ea..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.selimhorri.app.config.mapper;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
-import com.fasterxml.jackson.databind.json.JsonMapper;
-
-@Configuration
-public class MapperConfig {
-
- @Bean
- public ObjectMapper objectMapperBean() {
- return new JsonMapper()
- .enable(SerializationFeature.INDENT_OUTPUT);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/constant/AppConstant.java b/payment-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
deleted file mode 100644
index 40f49bbc3..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.constant;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public abstract class AppConstant {
-
- public static final String LOCAL_DATE_FORMAT = "dd-MM-yyyy";
- public static final String LOCAL_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String ZONED_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String INSTANT_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
-
- @NoArgsConstructor(access = AccessLevel.PRIVATE)
- public abstract class DiscoveredDomainsApi {
-
- public static final String USER_SERVICE_HOST = "http://USER-SERVICE/user-service";
- public static final String USER_SERVICE_API_URL = "http://USER-SERVICE/user-service/api/users";
-
- public static final String PRODUCT_SERVICE_HOST = "http://PRODUCT-SERVICE/product-service";
- public static final String PRODUCT_SERVICE_API_URL = "http://PRODUCT-SERVICE/product-service/api/products";
-
- public static final String ORDER_SERVICE_HOST = "http://ORDER-SERVICE/order-service";
- public static final String ORDER_SERVICE_API_URL = "http://ORDER-SERVICE/order-service/api/orders";
-
- public static final String FAVOURITE_SERVICE_HOST = "http://FAVOURITE-SERVICE/favourite-service";
- public static final String FAVOURITE_SERVICE_API_URL = "http://FAVOURITE-SERVICE/favourite-service/api/favourites";
-
- public static final String PAYMENT_SERVICE_HOST = "http://PAYMENT-SERVICE/payment-service";
- public static final String PAYMENT_SERVICE_API_URL = "http://PAYMENT-SERVICE/payment-service/api/payments";
-
- public static final String SHIPPING_SERVICE_HOST = "http://SHIPPING-SERVICE/shipping-service";
- public static final String SHIPPING_SERVICE_API_URL = "http://SHIPPING-SERVICE/shipping-service/api/shippings";
-
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java b/payment-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
deleted file mode 100644
index 3f4dd17fa..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.time.Instant;
-
-import javax.persistence.Column;
-import javax.persistence.MappedSuperclass;
-
-import org.springframework.data.annotation.CreatedDate;
-import org.springframework.data.annotation.LastModifiedDate;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-
-import lombok.AccessLevel;
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@MappedSuperclass
-@NoArgsConstructor(access = AccessLevel.PROTECTED)
-@AllArgsConstructor(access = AccessLevel.PROTECTED)
-@Data
-abstract public class AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @CreatedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "created_at")
- private Instant createdAt;
-
- @LastModifiedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "updated_at")
- private Instant updatedAt;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/domain/Payment.java b/payment-service/src/main/java/com/selimhorri/app/domain/Payment.java
deleted file mode 100644
index 3d2daed24..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/domain/Payment.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.Table;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@Entity
-@Table(name = "payments")
-@NoArgsConstructor
-@AllArgsConstructor
-@EqualsAndHashCode(callSuper = true)
-@Data
-@Builder
-public final class Payment extends AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "payment_id", unique = true, nullable = false, updatable = false)
- private Integer paymentId;
-
- @Column(name = "order_id")
- private Integer orderId;
-
- @Column(name = "is_payed")
- private Boolean isPayed;
-
- @Enumerated(EnumType.STRING)
- @Column(name = "payment_status")
- private PaymentStatus paymentStatus;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/domain/PaymentStatus.java b/payment-service/src/main/java/com/selimhorri/app/domain/PaymentStatus.java
deleted file mode 100644
index 37c145c7c..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/domain/PaymentStatus.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.domain;
-
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@Getter
-public enum PaymentStatus {
-
- NOT_STARTED("not_started"),
- IN_PROGRESS("in_progress"),
- COMPLETED("completed");
-
- private final String status;
-
-}
diff --git a/payment-service/src/main/java/com/selimhorri/app/dto/OrderDto.java b/payment-service/src/main/java/com/selimhorri/app/dto/OrderDto.java
deleted file mode 100644
index 8e5598ece..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/dto/OrderDto.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer orderId;
-
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime orderDate;
- private String orderDesc;
- private Double orderFee;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/dto/PaymentDto.java b/payment-service/src/main/java/com/selimhorri/app/dto/PaymentDto.java
deleted file mode 100644
index a7c686081..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/dto/PaymentDto.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.selimhorri.app.domain.PaymentStatus;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class PaymentDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer paymentId;
- private Boolean isPayed;
- private PaymentStatus paymentStatus;
-
- @JsonProperty("order")
- @JsonInclude(Include.NON_NULL)
- private OrderDto orderDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java b/payment-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
deleted file mode 100644
index 920a621ab..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.selimhorri.app.dto.response.collection;
-
-import java.util.Collection;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class DtoCollectionResponse {
-
- private Collection collection;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java b/payment-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
deleted file mode 100644
index 2a034e679..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package com.selimhorri.app.exception;
-
-import java.time.ZoneId;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.converter.HttpMessageNotReadableException;
-import org.springframework.validation.BindException;
-import org.springframework.web.bind.MethodArgumentNotValidException;
-import org.springframework.web.bind.annotation.ControllerAdvice;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-
-import com.selimhorri.app.exception.payload.ExceptionMsg;
-import com.selimhorri.app.exception.wrapper.PaymentNotFoundException;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@ControllerAdvice
-@Slf4j
-@RequiredArgsConstructor
-public class ApiExceptionHandler {
-
- @ExceptionHandler(value = {
- MethodArgumentNotValidException.class,
- HttpMessageNotReadableException.class,
- })
- public ResponseEntity handleValidationException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle validation exception*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("*" + e.getBindingResult().getFieldError().getDefaultMessage() + "!**")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
- @ExceptionHandler(value = {
- IllegalStateException.class,
- PaymentNotFoundException.class,
- })
- public ResponseEntity handleApiRequestException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle API request*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("#### " + e.getMessage() + "! ####")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java b/payment-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
deleted file mode 100644
index 274842143..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.exception.payload;
-
-import java.io.Serializable;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.ser.ZonedDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public final class ExceptionMsg implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @JsonSerialize(using = ZonedDateTimeSerializer.class)
- @JsonFormat(shape = Shape.STRING, pattern = AppConstant.ZONED_DATE_TIME_FORMAT)
- private final ZonedDateTime timestamp;
-
- @JsonInclude(value = Include.NON_NULL)
- private Throwable throwable;
- private final HttpStatus httpStatus;
- private final String msg;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/exception/wrapper/PaymentNotFoundException.java b/payment-service/src/main/java/com/selimhorri/app/exception/wrapper/PaymentNotFoundException.java
deleted file mode 100644
index 9518bccb4..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/exception/wrapper/PaymentNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class PaymentNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public PaymentNotFoundException() {
- super();
- }
-
- public PaymentNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public PaymentNotFoundException(String message) {
- super(message);
- }
-
- public PaymentNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/helper/PaymentMappingHelper.java b/payment-service/src/main/java/com/selimhorri/app/helper/PaymentMappingHelper.java
deleted file mode 100644
index 9e06de140..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/helper/PaymentMappingHelper.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.selimhorri.app.helper;
-
-import com.selimhorri.app.domain.Payment;
-import com.selimhorri.app.dto.OrderDto;
-import com.selimhorri.app.dto.PaymentDto;
-
-public interface PaymentMappingHelper {
-
- public static PaymentDto map(final Payment payment) {
- return PaymentDto.builder()
- .paymentId(payment.getPaymentId())
- .isPayed(payment.getIsPayed())
- .paymentStatus(payment.getPaymentStatus())
- .orderDto(
- OrderDto.builder()
- .orderId(payment.getOrderId())
- .build())
- .build();
- }
-
- public static Payment map(final PaymentDto paymentDto) {
- return Payment.builder()
- .paymentId(paymentDto.getPaymentId())
- .orderId(paymentDto.getOrderDto().getOrderId())
- .isPayed(paymentDto.getIsPayed())
- .paymentStatus(paymentDto.getPaymentStatus())
- .build();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/repository/PaymentRepository.java b/payment-service/src/main/java/com/selimhorri/app/repository/PaymentRepository.java
deleted file mode 100644
index 2aa489829..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/repository/PaymentRepository.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.selimhorri.app.repository;
-
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import com.selimhorri.app.domain.Payment;
-
-public interface PaymentRepository extends JpaRepository {
-
-
-
-}
diff --git a/payment-service/src/main/java/com/selimhorri/app/resource/PaymentResource.java b/payment-service/src/main/java/com/selimhorri/app/resource/PaymentResource.java
deleted file mode 100644
index 8ba435254..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/resource/PaymentResource.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.selimhorri.app.resource;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.dto.PaymentDto;
-import com.selimhorri.app.dto.response.collection.DtoCollectionResponse;
-import com.selimhorri.app.service.PaymentService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/payments")
-@Slf4j
-@RequiredArgsConstructor
-public class PaymentResource {
-
- private final PaymentService paymentService;
-
- @GetMapping
- public ResponseEntity> findAll() {
- log.info("*** PaymentDto List, controller; fetch all payments *");
- return ResponseEntity.ok(new DtoCollectionResponse<>(this.paymentService.findAll()));
- }
-
- @GetMapping("/{paymentId}")
- public ResponseEntity findById(
- @PathVariable("paymentId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String paymentId) {
- log.info("*** PaymentDto, resource; fetch payment by id *");
- return ResponseEntity.ok(this.paymentService.findById(Integer.parseInt(paymentId)));
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final PaymentDto paymentDto) {
- log.info("*** PaymentDto, resource; save payment *");
- return ResponseEntity.ok(this.paymentService.save(paymentDto));
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final PaymentDto paymentDto) {
- log.info("*** PaymentDto, resource; update payment *");
- return ResponseEntity.ok(this.paymentService.update(paymentDto));
- }
-
- @DeleteMapping("/{paymentId}")
- public ResponseEntity deleteById(@PathVariable("paymentId") final String paymentId) {
- log.info("*** Boolean, resource; delete payment by id *");
- this.paymentService.deleteById(Integer.parseInt(paymentId));
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/java/com/selimhorri/app/service/PaymentService.java b/payment-service/src/main/java/com/selimhorri/app/service/PaymentService.java
deleted file mode 100644
index fbf754754..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/service/PaymentService.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.selimhorri.app.service;
-
-import java.util.List;
-
-import com.selimhorri.app.dto.PaymentDto;
-
-public interface PaymentService {
-
- List findAll();
- PaymentDto findById(final Integer paymentId);
- PaymentDto save(final PaymentDto paymentDto);
- PaymentDto update(final PaymentDto paymentDto);
- void deleteById(final Integer paymentId);
-
-}
diff --git a/payment-service/src/main/java/com/selimhorri/app/service/impl/PaymentServiceImpl.java b/payment-service/src/main/java/com/selimhorri/app/service/impl/PaymentServiceImpl.java
deleted file mode 100644
index 588d69942..000000000
--- a/payment-service/src/main/java/com/selimhorri/app/service/impl/PaymentServiceImpl.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.selimhorri.app.service.impl;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.transaction.Transactional;
-
-import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-
-import com.selimhorri.app.constant.AppConstant;
-import com.selimhorri.app.dto.OrderDto;
-import com.selimhorri.app.dto.PaymentDto;
-import com.selimhorri.app.exception.wrapper.PaymentNotFoundException;
-import com.selimhorri.app.helper.PaymentMappingHelper;
-import com.selimhorri.app.repository.PaymentRepository;
-import com.selimhorri.app.service.PaymentService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Transactional
-@Slf4j
-@RequiredArgsConstructor
-public class PaymentServiceImpl implements PaymentService {
-
- private final PaymentRepository paymentRepository;
- private final RestTemplate restTemplate;
-
- @Override
- public List findAll() {
- log.info("*** PaymentDto List, service; fetch all payments *");
- return this.paymentRepository.findAll()
- .stream()
- .map(PaymentMappingHelper::map)
- .map(p -> {
- p.setOrderDto(this.restTemplate.getForObject(AppConstant.DiscoveredDomainsApi
- .ORDER_SERVICE_API_URL + "/" + p.getOrderDto().getOrderId(), OrderDto.class));
- return p;
- })
- .distinct()
- .collect(Collectors.toUnmodifiableList());
- }
-
- @Override
- public PaymentDto findById(final Integer paymentId) {
- log.info("*** PaymentDto, service; fetch payment by id *");
- return this.paymentRepository.findById(paymentId)
- .map(PaymentMappingHelper::map)
- .map(p -> {
- p.setOrderDto(this.restTemplate.getForObject(AppConstant.DiscoveredDomainsApi
- .ORDER_SERVICE_API_URL + "/" + p.getOrderDto().getOrderId(), OrderDto.class));
- return p;
- })
- .orElseThrow(() -> new PaymentNotFoundException(String.format("Payment with id: %d not found", paymentId)));
- }
-
- @Override
- public PaymentDto save(final PaymentDto paymentDto) {
- log.info("*** PaymentDto, service; save payment *");
- return PaymentMappingHelper.map(this.paymentRepository
- .save(PaymentMappingHelper.map(paymentDto)));
- }
-
- @Override
- public PaymentDto update(final PaymentDto paymentDto) {
- log.info("*** PaymentDto, service; update payment *");
- return PaymentMappingHelper.map(this.paymentRepository
- .save(PaymentMappingHelper.map(paymentDto)));
- }
-
- @Override
- public void deleteById(final Integer paymentId) {
- log.info("*** Void, service; delete payment by id *");
- this.paymentRepository.deleteById(paymentId);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/resources/application-dev.yml b/payment-service/src/main/resources/application-dev.yml
deleted file mode 100644
index adbba60ac..000000000
--- a/payment-service/src/main/resources/application-dev.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-server:
- port: 8400
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:h2:mem:ecommerce_dev_db;DB_CLOSE_ON_EXIT=FALSE
- username: sa
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.H2Dialect
- use_sql_comments: true
- format_sql: true
- h2:
- console:
- enabled: true
- path: /h2-console
- #flyway:
- # baseline-on-migrate: true
- # enabled: true
-
-logging:
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/payment-service/src/main/resources/application-prod.yml b/payment-service/src/main/resources/application-prod.yml
deleted file mode 100644
index fe86f59c1..000000000
--- a/payment-service/src/main/resources/application-prod.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8400
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: false
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/prod_log.log
- clean-history-on-start: false
- level:
- org:
- hibernate:
- SQL: INFO
- springframework:
- web: INFO
- data: INFO
- boot:
- autoconfigure:
- data:
- rest: INFO
- jpa: INFO
- orm: INFO
-
diff --git a/payment-service/src/main/resources/application-stage.yml b/payment-service/src/main/resources/application-stage.yml
deleted file mode 100644
index 21eae16b6..000000000
--- a/payment-service/src/main/resources/application-stage.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8400
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/stage_log.log
- clean-history-on-start: true
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/payment-service/src/main/resources/application.yml b/payment-service/src/main/resources/application.yml
deleted file mode 100644
index f595a0bf3..000000000
--- a/payment-service/src/main/resources/application.yml
+++ /dev/null
@@ -1,46 +0,0 @@
-
-server:
- servlet:
- context-path: /payment-service
-
-spring:
- zipkin:
- base-url: ${SPRING_ZIPKIN_BASE_URL:http://localhost:9411/}
- config:
- import: ${SPRING_CONFIG_IMPORT:optional:configserver:http://localhost:9296}
- application:
- name: PAYMENT-SERVICE
- profiles:
- active:
- - dev
-
-resilience4j:
- circuitbreaker:
- instances:
- paymentService:
- register-health-indicator: true
- event-consumer-buffer-size: 10
- automatic-transition-from-open-to-half-open-enabled: true
- failure-rate-threshold: 50
- minimum-number-of-calls: 5
- permitted-number-of-calls-in-half-open-state: 3
- sliding-window-size: 10
- wait-duration-in-open-state: 5s
- sliding-window-type: COUNT_BASED
-
-management:
- health:
- circuitbreakers:
- enabled: true
- endpoint:
- health:
- show-details: always
-
-
-
-
-
-
-
-
-
diff --git a/payment-service/src/main/resources/db/migration/V1__create_payments_table.sql b/payment-service/src/main/resources/db/migration/V1__create_payments_table.sql
deleted file mode 100644
index c8d548761..000000000
--- a/payment-service/src/main/resources/db/migration/V1__create_payments_table.sql
+++ /dev/null
@@ -1,10 +0,0 @@
-
-CREATE TABLE payments (
- payment_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
- order_id INT(11),
- is_payed BOOLEAN,
- payment_status VARCHAR(255),
- created_at TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- updated_at TIMESTAMP
-);
-
diff --git a/payment-service/src/main/resources/db/migration/V2__insert_payments_table.sql b/payment-service/src/main/resources/db/migration/V2__insert_payments_table.sql
deleted file mode 100644
index 888f0b942..000000000
--- a/payment-service/src/main/resources/db/migration/V2__insert_payments_table.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-
-INSERT INTO payments
-(order_id, is_payed, payment_status) VALUES
-(1, false, 'IN_PROGRESS'),
-(2, false, 'IN_PROGRESS'),
-(3, false, 'IN_PROGRESS'),
-(4, false, 'IN_PROGRESS');
-
diff --git a/payment-service/src/test/java/com/selimhorri/app/PaymentServiceApplicationTests.java b/payment-service/src/test/java/com/selimhorri/app/PaymentServiceApplicationTests.java
deleted file mode 100644
index 0858c9cd2..000000000
--- a/payment-service/src/test/java/com/selimhorri/app/PaymentServiceApplicationTests.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class PaymentServiceApplicationTests {
-
-
-
-}
-
-
-
-
-
-
diff --git a/payment-service/system.properties b/payment-service/system.properties
deleted file mode 100644
index 180a27348..000000000
--- a/payment-service/system.properties
+++ /dev/null
@@ -1 +0,0 @@
-java.runtime.version=11
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
deleted file mode 100644
index 832247436..000000000
--- a/pom.xml
+++ /dev/null
@@ -1,129 +0,0 @@
-
-
-
- 4.0.0
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.5.7
-
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
- ecommerce-microservice-backend
- Ecommerce backend implemented in Spring Boot and Spring Cloud!
- pom
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.boot
- spring-boot-starter
-
-
- org.springframework.boot
- spring-boot-starter-actuator
-
-
- org.springframework.cloud
- spring-cloud-starter-circuitbreaker-resilience4j
-
-
- io.micrometer
- micrometer-registry-prometheus
-
-
- org.springframework.cloud
- spring-cloud-sleuth-zipkin
-
-
- org.springframework.cloud
- spring-cloud-starter-sleuth
-
-
- org.springframework.boot
- spring-boot-devtools
- runtime
- true
-
-
- org.springframework.boot
- spring-boot-configuration-processor
- true
-
-
- com.fasterxml.jackson.datatype
- jackson-datatype-jsr310
-
-
- org.springdoc
- springdoc-openapi-ui
- 1.6.3
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
- org.testcontainers
- junit-jupiter
- test
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
- service-discovery
- cloud-config
- api-gateway
- proxy-client
- user-service
- product-service
- favourite-service
- order-service
- shipping-service
- payment-service
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
-
diff --git a/product-service/.gitignore b/product-service/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/product-service/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/product-service/.mvn/wrapper/MavenWrapperDownloader.java b/product-service/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/product-service/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/product-service/.mvn/wrapper/maven-wrapper.jar b/product-service/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/product-service/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/product-service/.mvn/wrapper/maven-wrapper.properties b/product-service/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/product-service/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/product-service/Dockerfile b/product-service/Dockerfile
deleted file mode 100644
index c052995cf..000000000
--- a/product-service/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-ENV SPRING_PROFILES_ACTIVE dev
-COPY product-service/ .
-ADD product-service/target/product-service-v${PROJECT_VERSION}.jar product-service.jar
-EXPOSE 8500
-ENTRYPOINT ["java", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "product-service.jar"]
-
-
diff --git a/product-service/compose.yml b/product-service/compose.yml
deleted file mode 100644
index 618eb819a..000000000
--- a/product-service/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- product-service-container:
- image: selimhorri/product-service-ecommerce-boot:0.1.0
- ports:
- - 8500:8500
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/product-service/mvnw b/product-service/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/product-service/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/product-service/mvnw.cmd b/product-service/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/product-service/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/product-service/pom.xml b/product-service/pom.xml
deleted file mode 100644
index ac89c6c8a..000000000
--- a/product-service/pom.xml
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- product-service
- product-service
- Spring Boot microservice
- jar
-
-
- 11
- 2020.0.4
- 1.16.0
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter
-
-
- org.springframework.cloud
- spring-cloud-starter-config
-
-
- org.springframework.boot
- spring-boot-starter-data-jpa
-
-
- org.springframework.boot
- spring-boot-starter-thymeleaf
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.flywaydb
- flyway-core
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- com.h2database
- h2
- runtime
-
-
- mysql
- mysql-connector-java
- runtime
-
-
- org.projectlombok
- lombok
- true
-
-
- org.testcontainers
- mysql
- test
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.projectlombok
- lombok
-
-
-
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/ProductServiceApplication.java b/product-service/src/main/java/com/selimhorri/app/ProductServiceApplication.java
deleted file mode 100644
index 0edb0b7fc..000000000
--- a/product-service/src/main/java/com/selimhorri/app/ProductServiceApplication.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-
-@SpringBootApplication
-@EnableEurekaClient
-public class ProductServiceApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(ProductServiceApplication.class, args);
- }
-
-
-
-}
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java b/product-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
deleted file mode 100644
index a6346459a..000000000
--- a/product-service/src/main/java/com/selimhorri/app/config/client/ClientConfig.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.config.client;
-
-import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.client.RestTemplate;
-
-@Configuration
-public class ClientConfig {
-
- @LoadBalanced
- @Bean
- public RestTemplate restTemplateBean() {
- return new RestTemplate();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java b/product-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
deleted file mode 100644
index 7e0f843ea..000000000
--- a/product-service/src/main/java/com/selimhorri/app/config/mapper/MapperConfig.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package com.selimhorri.app.config.mapper;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.SerializationFeature;
-import com.fasterxml.jackson.databind.json.JsonMapper;
-
-@Configuration
-public class MapperConfig {
-
- @Bean
- public ObjectMapper objectMapperBean() {
- return new JsonMapper()
- .enable(SerializationFeature.INDENT_OUTPUT);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/constant/AppConstant.java b/product-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
deleted file mode 100644
index 40f49bbc3..000000000
--- a/product-service/src/main/java/com/selimhorri/app/constant/AppConstant.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.constant;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public abstract class AppConstant {
-
- public static final String LOCAL_DATE_FORMAT = "dd-MM-yyyy";
- public static final String LOCAL_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String ZONED_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String INSTANT_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
-
- @NoArgsConstructor(access = AccessLevel.PRIVATE)
- public abstract class DiscoveredDomainsApi {
-
- public static final String USER_SERVICE_HOST = "http://USER-SERVICE/user-service";
- public static final String USER_SERVICE_API_URL = "http://USER-SERVICE/user-service/api/users";
-
- public static final String PRODUCT_SERVICE_HOST = "http://PRODUCT-SERVICE/product-service";
- public static final String PRODUCT_SERVICE_API_URL = "http://PRODUCT-SERVICE/product-service/api/products";
-
- public static final String ORDER_SERVICE_HOST = "http://ORDER-SERVICE/order-service";
- public static final String ORDER_SERVICE_API_URL = "http://ORDER-SERVICE/order-service/api/orders";
-
- public static final String FAVOURITE_SERVICE_HOST = "http://FAVOURITE-SERVICE/favourite-service";
- public static final String FAVOURITE_SERVICE_API_URL = "http://FAVOURITE-SERVICE/favourite-service/api/favourites";
-
- public static final String PAYMENT_SERVICE_HOST = "http://PAYMENT-SERVICE/payment-service";
- public static final String PAYMENT_SERVICE_API_URL = "http://PAYMENT-SERVICE/payment-service/api/payments";
-
- public static final String SHIPPING_SERVICE_HOST = "http://SHIPPING-SERVICE/shipping-service";
- public static final String SHIPPING_SERVICE_API_URL = "http://SHIPPING-SERVICE/shipping-service/api/shippings";
-
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java b/product-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
deleted file mode 100644
index 3f4dd17fa..000000000
--- a/product-service/src/main/java/com/selimhorri/app/domain/AbstractMappedEntity.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.time.Instant;
-
-import javax.persistence.Column;
-import javax.persistence.MappedSuperclass;
-
-import org.springframework.data.annotation.CreatedDate;
-import org.springframework.data.annotation.LastModifiedDate;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-
-import lombok.AccessLevel;
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@MappedSuperclass
-@NoArgsConstructor(access = AccessLevel.PROTECTED)
-@AllArgsConstructor(access = AccessLevel.PROTECTED)
-@Data
-abstract public class AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @CreatedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "created_at")
- private Instant createdAt;
-
- @LastModifiedDate
- @JsonFormat(shape = Shape.STRING)
- @Column(name = "updated_at")
- private Instant updatedAt;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/domain/Category.java b/product-service/src/main/java/com/selimhorri/app/domain/Category.java
deleted file mode 100644
index fae7ae140..000000000
--- a/product-service/src/main/java/com/selimhorri/app/domain/Category.java
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-import javax.persistence.Table;
-
-import com.fasterxml.jackson.annotation.JsonIgnore;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@Entity
-@Table(name = "categories")
-@NoArgsConstructor
-@AllArgsConstructor
-@EqualsAndHashCode(callSuper = true, exclude = {"subCategories", "parentCategory", "products"})
-@Data
-@Builder
-public final class Category extends AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "category_id", unique = true, nullable = false, updatable = false)
- private Integer categoryId;
-
- @Column(name = "category_title")
- private String categoryTitle;
-
- @Column(name = "image_url")
- private String imageUrl;
-
- @JsonIgnore
- @OneToMany(mappedBy = "parentCategory", fetch = FetchType.LAZY, cascade = CascadeType.ALL)
- private Set subCategories;
-
- @ManyToOne(fetch = FetchType.EAGER)
- @JoinColumn(name = "parent_category_id")
- private Category parentCategory;
-
- @JsonIgnore
- @OneToMany(mappedBy = "category", fetch = FetchType.LAZY, cascade = CascadeType.ALL)
- private Set products;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/domain/Product.java b/product-service/src/main/java/com/selimhorri/app/domain/Product.java
deleted file mode 100644
index 5d5d7a003..000000000
--- a/product-service/src/main/java/com/selimhorri/app/domain/Product.java
+++ /dev/null
@@ -1,66 +0,0 @@
-package com.selimhorri.app.domain;
-
-import java.io.Serializable;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.Table;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.NoArgsConstructor;
-
-@Entity
-@Table(name = "products")
-@NoArgsConstructor
-@AllArgsConstructor
-@EqualsAndHashCode(callSuper = true, exclude = {"category"})
-@Data
-@Builder
-public final class Product extends AbstractMappedEntity implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "product_id", unique = true, nullable = false, updatable = false)
- private Integer productId;
-
- @Column(name = "product_title")
- private String productTitle;
-
- @Column(name = "image_url")
- private String imageUrl;
-
- @Column(unique = true)
- private String sku;
-
- @Column(name = "price_unit", columnDefinition = "decimal")
- private Double priceUnit;
-
- @Column(name = "quantity")
- private Integer quantity;
-
- @ManyToOne(fetch = FetchType.EAGER)
- @JoinColumn(name = "category_id")
- private Category category;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/dto/CategoryDto.java b/product-service/src/main/java/com/selimhorri/app/dto/CategoryDto.java
deleted file mode 100644
index b66fb7d60..000000000
--- a/product-service/src/main/java/com/selimhorri/app/dto/CategoryDto.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CategoryDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer categoryId;
- private String categoryTitle;
- private String imageUrl;
-
- @JsonInclude(Include.NON_NULL)
- private Set subCategoriesDtos;
-
- @JsonProperty("parentCategory")
- @JsonInclude(Include.NON_NULL)
- private CategoryDto parentCategoryDto;
-
- @JsonInclude(Include.NON_NULL)
- private Set productDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/dto/ProductDto.java b/product-service/src/main/java/com/selimhorri/app/dto/ProductDto.java
deleted file mode 100644
index fe45297e6..000000000
--- a/product-service/src/main/java/com/selimhorri/app/dto/ProductDto.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.selimhorri.app.dto;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class ProductDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer productId;
- private String productTitle;
- private String imageUrl;
- private String sku;
- private Double priceUnit;
- private Integer quantity;
-
- @JsonProperty("category")
- @JsonInclude(Include.NON_NULL)
- private CategoryDto categoryDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java b/product-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
deleted file mode 100644
index 920a621ab..000000000
--- a/product-service/src/main/java/com/selimhorri/app/dto/response/collection/DtoCollectionResponse.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.selimhorri.app.dto.response.collection;
-
-import java.util.Collection;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class DtoCollectionResponse {
-
- private Collection collection;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java b/product-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
deleted file mode 100644
index 1912cbfef..000000000
--- a/product-service/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
+++ /dev/null
@@ -1,74 +0,0 @@
-package com.selimhorri.app.exception;
-
-import java.time.ZoneId;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.converter.HttpMessageNotReadableException;
-import org.springframework.validation.BindException;
-import org.springframework.web.bind.MethodArgumentNotValidException;
-import org.springframework.web.bind.annotation.ControllerAdvice;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-
-import com.selimhorri.app.exception.payload.ExceptionMsg;
-import com.selimhorri.app.exception.wrapper.CategoryNotFoundException;
-import com.selimhorri.app.exception.wrapper.ProductNotFoundException;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@ControllerAdvice
-@Slf4j
-@RequiredArgsConstructor
-public class ApiExceptionHandler {
-
- @ExceptionHandler(value = {
- MethodArgumentNotValidException.class,
- HttpMessageNotReadableException.class,
- })
- public ResponseEntity handleValidationException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle validation exception*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("*" + e.getBindingResult().getFieldError().getDefaultMessage() + "!**")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
- @ExceptionHandler(value = {
- CategoryNotFoundException.class,
- ProductNotFoundException.class,
- })
- public ResponseEntity handleApiRequestException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle API request*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg("#### " + e.getMessage() + "! ####")
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java b/product-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
deleted file mode 100644
index 274842143..000000000
--- a/product-service/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.exception.payload;
-
-import java.io.Serializable;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.ser.ZonedDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public final class ExceptionMsg implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @JsonSerialize(using = ZonedDateTimeSerializer.class)
- @JsonFormat(shape = Shape.STRING, pattern = AppConstant.ZONED_DATE_TIME_FORMAT)
- private final ZonedDateTime timestamp;
-
- @JsonInclude(value = Include.NON_NULL)
- private Throwable throwable;
- private final HttpStatus httpStatus;
- private final String msg;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/exception/wrapper/CategoryNotFoundException.java b/product-service/src/main/java/com/selimhorri/app/exception/wrapper/CategoryNotFoundException.java
deleted file mode 100644
index 5e4d0fa97..000000000
--- a/product-service/src/main/java/com/selimhorri/app/exception/wrapper/CategoryNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class CategoryNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public CategoryNotFoundException() {
- super();
- }
-
- public CategoryNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public CategoryNotFoundException(String message) {
- super(message);
- }
-
- public CategoryNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/exception/wrapper/ProductNotFoundException.java b/product-service/src/main/java/com/selimhorri/app/exception/wrapper/ProductNotFoundException.java
deleted file mode 100644
index b452b50ef..000000000
--- a/product-service/src/main/java/com/selimhorri/app/exception/wrapper/ProductNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class ProductNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public ProductNotFoundException() {
- super();
- }
-
- public ProductNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public ProductNotFoundException(String message) {
- super(message);
- }
-
- public ProductNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/helper/CategoryMappingHelper.java b/product-service/src/main/java/com/selimhorri/app/helper/CategoryMappingHelper.java
deleted file mode 100644
index 0c91ace1e..000000000
--- a/product-service/src/main/java/com/selimhorri/app/helper/CategoryMappingHelper.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package com.selimhorri.app.helper;
-
-import java.util.Optional;
-
-import com.selimhorri.app.domain.Category;
-import com.selimhorri.app.dto.CategoryDto;
-
-public interface CategoryMappingHelper {
-
- public static CategoryDto map(final Category category) {
-
- final var parentCategory = Optional.ofNullable(category
- .getParentCategory()).orElseGet(() -> new Category());
-
- return CategoryDto.builder()
- .categoryId(category.getCategoryId())
- .categoryTitle(category.getCategoryTitle())
- .imageUrl(category.getImageUrl())
- .parentCategoryDto(
- CategoryDto.builder()
- .categoryId(parentCategory.getCategoryId())
- .categoryTitle(parentCategory.getCategoryTitle())
- .imageUrl(parentCategory.getImageUrl())
- .build())
- .build();
- }
-
- public static Category map(final CategoryDto categoryDto) {
-
- final var parentCategoryDto = Optional.ofNullable(categoryDto
- .getParentCategoryDto()).orElseGet(() -> new CategoryDto());
-
- return Category.builder()
- .categoryId(categoryDto.getCategoryId())
- .categoryTitle(categoryDto.getCategoryTitle())
- .imageUrl(categoryDto.getImageUrl())
- .parentCategory(
- Category.builder()
- .categoryId(parentCategoryDto.getCategoryId())
- .categoryTitle(parentCategoryDto.getCategoryTitle())
- .imageUrl(parentCategoryDto.getImageUrl())
- .build())
- .build();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/helper/ProductMappingHelper.java b/product-service/src/main/java/com/selimhorri/app/helper/ProductMappingHelper.java
deleted file mode 100644
index 9cf5ebca8..000000000
--- a/product-service/src/main/java/com/selimhorri/app/helper/ProductMappingHelper.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.selimhorri.app.helper;
-
-import com.selimhorri.app.domain.Category;
-import com.selimhorri.app.domain.Product;
-import com.selimhorri.app.dto.CategoryDto;
-import com.selimhorri.app.dto.ProductDto;
-
-public interface ProductMappingHelper {
-
- public static ProductDto map(final Product product) {
- return ProductDto.builder()
- .productId(product.getProductId())
- .productTitle(product.getProductTitle())
- .imageUrl(product.getImageUrl())
- .sku(product.getSku())
- .priceUnit(product.getPriceUnit())
- .quantity(product.getQuantity())
- .categoryDto(
- CategoryDto.builder()
- .categoryId(product.getCategory().getCategoryId())
- .categoryTitle(product.getCategory().getCategoryTitle())
- .imageUrl(product.getCategory().getImageUrl())
- .build())
- .build();
- }
-
- public static Product map(final ProductDto productDto) {
- return Product.builder()
- .productId(productDto.getProductId())
- .productTitle(productDto.getProductTitle())
- .imageUrl(productDto.getImageUrl())
- .sku(productDto.getSku())
- .priceUnit(productDto.getPriceUnit())
- .quantity(productDto.getQuantity())
- .category(
- Category.builder()
- .categoryId(productDto.getCategoryDto().getCategoryId())
- .categoryTitle(productDto.getCategoryDto().getCategoryTitle())
- .imageUrl(productDto.getCategoryDto().getImageUrl())
- .build())
- .build();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/repository/CategoryRepository.java b/product-service/src/main/java/com/selimhorri/app/repository/CategoryRepository.java
deleted file mode 100644
index db0fe24cd..000000000
--- a/product-service/src/main/java/com/selimhorri/app/repository/CategoryRepository.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.selimhorri.app.repository;
-
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import com.selimhorri.app.domain.Category;
-
-public interface CategoryRepository extends JpaRepository {
-
-
-
-}
diff --git a/product-service/src/main/java/com/selimhorri/app/repository/ProductRepository.java b/product-service/src/main/java/com/selimhorri/app/repository/ProductRepository.java
deleted file mode 100644
index 771a1a0a5..000000000
--- a/product-service/src/main/java/com/selimhorri/app/repository/ProductRepository.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.selimhorri.app.repository;
-
-import org.springframework.data.jpa.repository.JpaRepository;
-
-import com.selimhorri.app.domain.Product;
-
-public interface ProductRepository extends JpaRepository {
-
-
-
-}
diff --git a/product-service/src/main/java/com/selimhorri/app/resource/CategoryResource.java b/product-service/src/main/java/com/selimhorri/app/resource/CategoryResource.java
deleted file mode 100644
index ae1a447f1..000000000
--- a/product-service/src/main/java/com/selimhorri/app/resource/CategoryResource.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package com.selimhorri.app.resource;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.dto.CategoryDto;
-import com.selimhorri.app.dto.response.collection.DtoCollectionResponse;
-import com.selimhorri.app.service.CategoryService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/categories")
-@Slf4j
-@RequiredArgsConstructor
-public class CategoryResource {
-
- private final CategoryService categoryService;
-
- @GetMapping
- public ResponseEntity> findAll() {
- log.info("*** CategoryDto List, controller; fetch all categories *");
- return ResponseEntity.ok(new DtoCollectionResponse<>(this.categoryService.findAll()));
- }
-
- @GetMapping("/{categoryId}")
- public ResponseEntity findById(
- @PathVariable("categoryId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String categoryId) {
- log.info("*** CategoryDto, resource; fetch category by id *");
- return ResponseEntity.ok(this.categoryService.findById(Integer.parseInt(categoryId)));
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final CategoryDto categoryDto) {
- log.info("*** CategoryDto, resource; save category *");
- return ResponseEntity.ok(this.categoryService.save(categoryDto));
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final CategoryDto categoryDto) {
- log.info("*** CategoryDto, resource; update category *");
- return ResponseEntity.ok(this.categoryService.update(categoryDto));
- }
-
- @PutMapping("/{categoryId}")
- public ResponseEntity update(
- @PathVariable("categoryId")
- @NotBlank(message = "Input must not be blank")
- @Valid final String categoryId,
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final CategoryDto categoryDto) {
- log.info("*** CategoryDto, resource; update category with categoryId *");
- return ResponseEntity.ok(this.categoryService.update(Integer.parseInt(categoryId), categoryDto));
- }
-
- @DeleteMapping("/{categoryId}")
- public ResponseEntity deleteById(@PathVariable("categoryId") final String categoryId) {
- log.info("*** Boolean, resource; delete category by id *");
- this.categoryService.deleteById(Integer.parseInt(categoryId));
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/resource/ProductResource.java b/product-service/src/main/java/com/selimhorri/app/resource/ProductResource.java
deleted file mode 100644
index d7f30270e..000000000
--- a/product-service/src/main/java/com/selimhorri/app/resource/ProductResource.java
+++ /dev/null
@@ -1,96 +0,0 @@
-package com.selimhorri.app.resource;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.dto.ProductDto;
-import com.selimhorri.app.dto.response.collection.DtoCollectionResponse;
-import com.selimhorri.app.service.ProductService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/products")
-@Slf4j
-@RequiredArgsConstructor
-public class ProductResource {
-
- private final ProductService productService;
-
- @GetMapping
- public ResponseEntity> findAll() {
- log.info("*** ProductDto List, controller; fetch all categories *");
- return ResponseEntity.ok(new DtoCollectionResponse<>(this.productService.findAll()));
- }
-
- @GetMapping("/{productId}")
- public ResponseEntity findById(
- @PathVariable("productId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String productId) {
- log.info("*** ProductDto, resource; fetch product by id *");
- return ResponseEntity.ok(this.productService.findById(Integer.parseInt(productId)));
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final ProductDto productDto) {
- log.info("*** ProductDto, resource; save product *");
- return ResponseEntity.ok(this.productService.save(productDto));
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final ProductDto productDto) {
- log.info("*** ProductDto, resource; update product *");
- return ResponseEntity.ok(this.productService.update(productDto));
- }
-
- @PutMapping("/{productId}")
- public ResponseEntity update(
- @PathVariable("productId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String productId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final ProductDto productDto) {
- log.info("*** ProductDto, resource; update product with productId *");
- return ResponseEntity.ok(this.productService.update(Integer.parseInt(productId), productDto));
- }
-
- @DeleteMapping("/{productId}")
- public ResponseEntity deleteById(@PathVariable("productId") final String productId) {
- log.info("*** Boolean, resource; delete product by id *");
- this.productService.deleteById(Integer.parseInt(productId));
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/service/CategoryService.java b/product-service/src/main/java/com/selimhorri/app/service/CategoryService.java
deleted file mode 100644
index 98afb44ac..000000000
--- a/product-service/src/main/java/com/selimhorri/app/service/CategoryService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.service;
-
-import java.util.List;
-
-import com.selimhorri.app.dto.CategoryDto;
-
-public interface CategoryService {
-
- List findAll();
- CategoryDto findById(final Integer categoryId);
- CategoryDto save(final CategoryDto categoryDto);
- CategoryDto update(final CategoryDto categoryDto);
- CategoryDto update(final Integer categoryId, final CategoryDto categoryDto);
- void deleteById(final Integer categoryId);
-
-}
diff --git a/product-service/src/main/java/com/selimhorri/app/service/ProductService.java b/product-service/src/main/java/com/selimhorri/app/service/ProductService.java
deleted file mode 100644
index da12cabcf..000000000
--- a/product-service/src/main/java/com/selimhorri/app/service/ProductService.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.service;
-
-import java.util.List;
-
-import com.selimhorri.app.dto.ProductDto;
-
-public interface ProductService {
-
- List findAll();
- ProductDto findById(final Integer productId);
- ProductDto save(final ProductDto productDto);
- ProductDto update(final ProductDto productDto);
- ProductDto update(final Integer productId, final ProductDto productDto);
- void deleteById(final Integer productId);
-
-}
diff --git a/product-service/src/main/java/com/selimhorri/app/service/impl/CategoryServiceImpl.java b/product-service/src/main/java/com/selimhorri/app/service/impl/CategoryServiceImpl.java
deleted file mode 100644
index 7754c7dd3..000000000
--- a/product-service/src/main/java/com/selimhorri/app/service/impl/CategoryServiceImpl.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package com.selimhorri.app.service.impl;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.transaction.Transactional;
-
-import org.springframework.stereotype.Service;
-
-import com.selimhorri.app.dto.CategoryDto;
-import com.selimhorri.app.exception.wrapper.CategoryNotFoundException;
-import com.selimhorri.app.helper.CategoryMappingHelper;
-import com.selimhorri.app.repository.CategoryRepository;
-import com.selimhorri.app.service.CategoryService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Transactional
-@Slf4j
-@RequiredArgsConstructor
-public class CategoryServiceImpl implements CategoryService {
-
- private final CategoryRepository categoryRepository;
-
- @Override
- public List findAll() {
- log.info("*** CategoryDto List, service; fetch all categorys *");
- return this.categoryRepository.findAll()
- .stream()
- .map(CategoryMappingHelper::map)
- .distinct()
- .collect(Collectors.toUnmodifiableList());
- }
-
- @Override
- public CategoryDto findById(final Integer categoryId) {
- log.info("*** CategoryDto, service; fetch category by id *");
- return this.categoryRepository.findById(categoryId)
- .map(CategoryMappingHelper::map)
- .orElseThrow(() -> new CategoryNotFoundException(String.format("Category with id: %d not found", categoryId)));
- }
-
- @Override
- public CategoryDto save(final CategoryDto categoryDto) {
- log.info("*** CategoryDto, service; save category *");
- return CategoryMappingHelper.map(this.categoryRepository
- .save(CategoryMappingHelper.map(categoryDto)));
- }
-
- @Override
- public CategoryDto update(final CategoryDto categoryDto) {
- log.info("*** CategoryDto, service; update category *");
- return CategoryMappingHelper.map(this.categoryRepository
- .save(CategoryMappingHelper.map(categoryDto)));
- }
-
- @Override
- public CategoryDto update(final Integer categoryId, final CategoryDto categoryDto) {
- log.info("*** CategoryDto, service; update category with categoryId *");
- return CategoryMappingHelper.map(this.categoryRepository
- .save(CategoryMappingHelper.map(this.findById(categoryId))));
- }
-
- @Override
- public void deleteById(final Integer categoryId) {
- log.info("*** Void, service; delete category by id *");
- this.categoryRepository.deleteById(categoryId);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/java/com/selimhorri/app/service/impl/ProductServiceImpl.java b/product-service/src/main/java/com/selimhorri/app/service/impl/ProductServiceImpl.java
deleted file mode 100644
index 6427acd21..000000000
--- a/product-service/src/main/java/com/selimhorri/app/service/impl/ProductServiceImpl.java
+++ /dev/null
@@ -1,84 +0,0 @@
-package com.selimhorri.app.service.impl;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-import javax.transaction.Transactional;
-
-import org.springframework.stereotype.Service;
-
-import com.selimhorri.app.dto.ProductDto;
-import com.selimhorri.app.exception.wrapper.ProductNotFoundException;
-import com.selimhorri.app.helper.ProductMappingHelper;
-import com.selimhorri.app.repository.ProductRepository;
-import com.selimhorri.app.service.ProductService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Transactional
-@Slf4j
-@RequiredArgsConstructor
-public class ProductServiceImpl implements ProductService {
-
- private final ProductRepository productRepository;
-
- @Override
- public List findAll() {
- log.info("*** ProductDto List, service; fetch all products *");
- return this.productRepository.findAll()
- .stream()
- .map(ProductMappingHelper::map)
- .distinct()
- .collect(Collectors.toUnmodifiableList());
- }
-
- @Override
- public ProductDto findById(final Integer productId) {
- log.info("*** ProductDto, service; fetch product by id *");
- return this.productRepository.findById(productId)
- .map(ProductMappingHelper::map)
- .orElseThrow(() -> new ProductNotFoundException(String.format("Product with id: %d not found", productId)));
- }
-
- @Override
- public ProductDto save(final ProductDto productDto) {
- log.info("*** ProductDto, service; save product *");
- return ProductMappingHelper.map(this.productRepository
- .save(ProductMappingHelper.map(productDto)));
- }
-
- @Override
- public ProductDto update(final ProductDto productDto) {
- log.info("*** ProductDto, service; update product *");
- return ProductMappingHelper.map(this.productRepository
- .save(ProductMappingHelper.map(productDto)));
- }
-
- @Override
- public ProductDto update(final Integer productId, final ProductDto productDto) {
- log.info("*** ProductDto, service; update product with productId *");
- return ProductMappingHelper.map(this.productRepository
- .save(ProductMappingHelper.map(this.findById(productId))));
- }
-
- @Override
- public void deleteById(final Integer productId) {
- log.info("*** Void, service; delete product by id *");
- this.productRepository.delete(ProductMappingHelper
- .map(this.findById(productId)));
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/resources/application-dev.yml b/product-service/src/main/resources/application-dev.yml
deleted file mode 100644
index cf7b17e41..000000000
--- a/product-service/src/main/resources/application-dev.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-server:
- port: 8500
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:h2:mem:ecommerce_dev_db;DB_CLOSE_ON_EXIT=FALSE
- username: sa
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.H2Dialect
- use_sql_comments: true
- format_sql: true
- h2:
- console:
- enabled: true
- path: /h2-console
- #flyway:
- # baseline-on-migrate: true
- # enabled: true
-
-logging:
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/product-service/src/main/resources/application-prod.yml b/product-service/src/main/resources/application-prod.yml
deleted file mode 100644
index 6f171453a..000000000
--- a/product-service/src/main/resources/application-prod.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8500
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: false
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/prod_log.log
- clean-history-on-start: false
- level:
- org:
- hibernate:
- SQL: INFO
- springframework:
- web: INFO
- data: INFO
- boot:
- autoconfigure:
- data:
- rest: INFO
- jpa: INFO
- orm: INFO
-
diff --git a/product-service/src/main/resources/application-stage.yml b/product-service/src/main/resources/application-stage.yml
deleted file mode 100644
index 92140f53e..000000000
--- a/product-service/src/main/resources/application-stage.yml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-server:
- port: 8300
-
-management:
- endpoints:
- web:
- exposure:
- include: "*"
-
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/ecommerce_stage_db
- username: root
- password:
- jpa:
- show-sql: true
- hibernate:
- ddl-auto: validate
- properties:
- hibernate:
- dialect: org.hibernate.dialect.MySQL5InnoDBDialect
- use_sql_comments: true
- format_sql: true
-
-logging:
- file:
- name: src/main/resources/script/stage_log.log
- clean-history-on-start: true
- level:
- org:
- hibernate:
- SQL: DEBUG
- springframework:
- web: DEBUG
- data: DEBUG
- boot:
- autoconfigure:
- data:
- rest: DEBUG
- jpa: DEBUG
- orm: DEBUG
-
diff --git a/product-service/src/main/resources/application.yml b/product-service/src/main/resources/application.yml
deleted file mode 100644
index 75c2b0a46..000000000
--- a/product-service/src/main/resources/application.yml
+++ /dev/null
@@ -1,45 +0,0 @@
-
-server:
- servlet:
- context-path: /product-service
-
-spring:
- zipkin:
- base-url: ${SPRING_ZIPKIN_BASE_URL:http://localhost:9411/}
- config:
- import: ${SPRING_CONFIG_IMPORT:optional:configserver:http://localhost:9296}
- application:
- name: PRODUCT-SERVICE
- profiles:
- active:
- - dev
-
-resilience4j:
- circuitbreaker:
- instances:
- productService:
- register-health-indicator: true
- event-consumer-buffer-size: 10
- automatic-transition-from-open-to-half-open-enabled: true
- failure-rate-threshold: 50
- minimum-number-of-calls: 5
- permitted-number-of-calls-in-half-open-state: 3
- sliding-window-size: 10
- wait-duration-in-open-state: 5s
- sliding-window-type: COUNT_BASED
-
-management:
- health:
- circuitbreakers:
- enabled: true
- endpoint:
- health:
- show-details: always
-
-
-
-
-
-
-
-
diff --git a/product-service/src/main/resources/db/migration/V1__create_categories_table.sql b/product-service/src/main/resources/db/migration/V1__create_categories_table.sql
deleted file mode 100644
index 445f5877d..000000000
--- a/product-service/src/main/resources/db/migration/V1__create_categories_table.sql
+++ /dev/null
@@ -1,10 +0,0 @@
-
-CREATE TABLE categories (
- category_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
- parent_category_id INT(11),
- category_title VARCHAR(255),
- image_url VARCHAR(255),
- created_at TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- updated_at TIMESTAMP
-);
-
diff --git a/product-service/src/main/resources/db/migration/V2__insert_categories_table.sql b/product-service/src/main/resources/db/migration/V2__insert_categories_table.sql
deleted file mode 100644
index d5ab0c6d6..000000000
--- a/product-service/src/main/resources/db/migration/V2__insert_categories_table.sql
+++ /dev/null
@@ -1,7 +0,0 @@
-
-INSERT INTO categories
-(parent_category_id, category_title) VALUES
-(null, 'Computer'),
-(null, 'Mode'),
-(null, 'Game');
-
diff --git a/product-service/src/main/resources/db/migration/V3__create_products_table.sql b/product-service/src/main/resources/db/migration/V3__create_products_table.sql
deleted file mode 100644
index 539c38e4d..000000000
--- a/product-service/src/main/resources/db/migration/V3__create_products_table.sql
+++ /dev/null
@@ -1,13 +0,0 @@
-
-CREATE TABLE products (
- product_id INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
- category_id INT(11),
- product_title VARCHAR(255),
- image_url VARCHAR(255),
- sku VARCHAR(255),
- price_unit DECIMAL(7, 2),
- quantity INT(11),
- created_at TIMESTAMP DEFAULT LOCALTIMESTAMP NOT NULL NULL_TO_DEFAULT,
- updated_at TIMESTAMP
-);
-
diff --git a/product-service/src/main/resources/db/migration/V4__insert_products_table.sql b/product-service/src/main/resources/db/migration/V4__insert_products_table.sql
deleted file mode 100644
index 97324939f..000000000
--- a/product-service/src/main/resources/db/migration/V4__insert_products_table.sql
+++ /dev/null
@@ -1,8 +0,0 @@
-
-INSERT INTO products
-(category_id, product_title, image_url, sku, price_unit, quantity) VALUES
-(1, 'asus', 'xxx', 'dfqejklejrkn', 0, 50),
-(1, 'hp', 'xxx', 'zsejfedbjh', 0, 50),
-(2, 'Armani', 'xxx', 'fjdvf', 0, 50),
-(3, 'GTA', 'xxx', 'qsdkjnvfrekjrf', 0, 50);
-
diff --git a/product-service/src/main/resources/db/migration/V5__create_categories_parent_category_id_fk.sql b/product-service/src/main/resources/db/migration/V5__create_categories_parent_category_id_fk.sql
deleted file mode 100644
index 5a14fea4e..000000000
--- a/product-service/src/main/resources/db/migration/V5__create_categories_parent_category_id_fk.sql
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ALTER TABLE categories
- ADD CONSTRAINT fk7_assign FOREIGN KEY (parent_category_id) REFERENCES categories (category_id);
diff --git a/product-service/src/main/resources/db/migration/V6__create_products_category_id_fk.sql b/product-service/src/main/resources/db/migration/V6__create_products_category_id_fk.sql
deleted file mode 100644
index ca38f5ea9..000000000
--- a/product-service/src/main/resources/db/migration/V6__create_products_category_id_fk.sql
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ALTER TABLE products
- ADD CONSTRAINT fk8_assign FOREIGN KEY (category_id) REFERENCES categories (category_id);
diff --git a/product-service/src/test/java/com/selimhorri/app/ProductServiceApplicationTests.java b/product-service/src/test/java/com/selimhorri/app/ProductServiceApplicationTests.java
deleted file mode 100644
index ca5a42946..000000000
--- a/product-service/src/test/java/com/selimhorri/app/ProductServiceApplicationTests.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class ProductServiceApplicationTests {
-
-
-
-}
-
-
-
-
-
-
diff --git a/product-service/system.properties b/product-service/system.properties
deleted file mode 100644
index 180a27348..000000000
--- a/product-service/system.properties
+++ /dev/null
@@ -1 +0,0 @@
-java.runtime.version=11
\ No newline at end of file
diff --git a/proxy-client/.gitignore b/proxy-client/.gitignore
deleted file mode 100644
index 549e00a2a..000000000
--- a/proxy-client/.gitignore
+++ /dev/null
@@ -1,33 +0,0 @@
-HELP.md
-target/
-!.mvn/wrapper/maven-wrapper.jar
-!**/src/main/**/target/
-!**/src/test/**/target/
-
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
-*.iml
-*.ipr
-
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-build/
-!**/src/main/**/build/
-!**/src/test/**/build/
-
-### VS Code ###
-.vscode/
diff --git a/proxy-client/.mvn/wrapper/MavenWrapperDownloader.java b/proxy-client/.mvn/wrapper/MavenWrapperDownloader.java
deleted file mode 100644
index e76d1f324..000000000
--- a/proxy-client/.mvn/wrapper/MavenWrapperDownloader.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2007-present the original author or authors.
- *
- * Licensed 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
- *
- * https://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.
- */
-import java.net.*;
-import java.io.*;
-import java.nio.channels.*;
-import java.util.Properties;
-
-public class MavenWrapperDownloader {
-
- private static final String WRAPPER_VERSION = "0.5.6";
- /**
- * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided.
- */
- private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
- + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";
-
- /**
- * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to
- * use instead of the default one.
- */
- private static final String MAVEN_WRAPPER_PROPERTIES_PATH =
- ".mvn/wrapper/maven-wrapper.properties";
-
- /**
- * Path where the maven-wrapper.jar will be saved to.
- */
- private static final String MAVEN_WRAPPER_JAR_PATH =
- ".mvn/wrapper/maven-wrapper.jar";
-
- /**
- * Name of the property which should be used to override the default download url for the wrapper.
- */
- private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";
-
- public static void main(String args[]) {
- System.out.println("- Downloader started");
- File baseDirectory = new File(args[0]);
- System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());
-
- // If the maven-wrapper.properties exists, read it and check if it contains a custom
- // wrapperUrl parameter.
- File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
- String url = DEFAULT_DOWNLOAD_URL;
- if(mavenWrapperPropertyFile.exists()) {
- FileInputStream mavenWrapperPropertyFileInputStream = null;
- try {
- mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
- Properties mavenWrapperProperties = new Properties();
- mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
- url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
- } catch (IOException e) {
- System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
- } finally {
- try {
- if(mavenWrapperPropertyFileInputStream != null) {
- mavenWrapperPropertyFileInputStream.close();
- }
- } catch (IOException e) {
- // Ignore ...
- }
- }
- }
- System.out.println("- Downloading from: " + url);
-
- File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
- if(!outputFile.getParentFile().exists()) {
- if(!outputFile.getParentFile().mkdirs()) {
- System.out.println(
- "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
- }
- }
- System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
- try {
- downloadFileFromURL(url, outputFile);
- System.out.println("Done");
- System.exit(0);
- } catch (Throwable e) {
- System.out.println("- Error downloading");
- e.printStackTrace();
- System.exit(1);
- }
- }
-
- private static void downloadFileFromURL(String urlString, File destination) throws Exception {
- if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
- String username = System.getenv("MVNW_USERNAME");
- char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
- Authenticator.setDefault(new Authenticator() {
- @Override
- protected PasswordAuthentication getPasswordAuthentication() {
- return new PasswordAuthentication(username, password);
- }
- });
- }
- URL website = new URL(urlString);
- ReadableByteChannel rbc;
- rbc = Channels.newChannel(website.openStream());
- FileOutputStream fos = new FileOutputStream(destination);
- fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
- fos.close();
- rbc.close();
- }
-
-}
diff --git a/proxy-client/.mvn/wrapper/maven-wrapper.jar b/proxy-client/.mvn/wrapper/maven-wrapper.jar
deleted file mode 100644
index 2cc7d4a55..000000000
Binary files a/proxy-client/.mvn/wrapper/maven-wrapper.jar and /dev/null differ
diff --git a/proxy-client/.mvn/wrapper/maven-wrapper.properties b/proxy-client/.mvn/wrapper/maven-wrapper.properties
deleted file mode 100644
index a9f1ef87b..000000000
--- a/proxy-client/.mvn/wrapper/maven-wrapper.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
-wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
diff --git a/proxy-client/Dockerfile b/proxy-client/Dockerfile
deleted file mode 100644
index deac97bb7..000000000
--- a/proxy-client/Dockerfile
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FROM openjdk:11
-ARG PROJECT_VERSION=0.1.0
-RUN mkdir -p /home/app
-WORKDIR /home/app
-ENV SPRING_PROFILES_ACTIVE dev
-COPY proxy-client/ .
-ADD proxy-client/target/proxy-client-v${PROJECT_VERSION}.jar proxy-client.jar
-EXPOSE 8900
-ENTRYPOINT ["java", "-Dspring.profiles.active=${SPRING_PROFILES_ACTIVE}", "-jar", "proxy-client.jar"]
-
-
diff --git a/proxy-client/compose.yml b/proxy-client/compose.yml
deleted file mode 100644
index 6255f4c12..000000000
--- a/proxy-client/compose.yml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-version: '3'
-services:
- auth-service-container:
- image: selimhorri/proxy-client-ecommerce-boot:0.1.0
- ports:
- - 8900:8900
- environment:
- - SPRING_PROFILES_ACTIVE=dev
-
-
-
diff --git a/proxy-client/mvnw b/proxy-client/mvnw
deleted file mode 100755
index a16b5431b..000000000
--- a/proxy-client/mvnw
+++ /dev/null
@@ -1,310 +0,0 @@
-#!/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
-#
-# https://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.
-# ----------------------------------------------------------------------------
-
-# ----------------------------------------------------------------------------
-# Maven Start Up Batch script
-#
-# Required ENV vars:
-# ------------------
-# JAVA_HOME - location of a JDK home dir
-#
-# Optional ENV vars
-# -----------------
-# M2_HOME - location of maven2's installed home dir
-# MAVEN_OPTS - parameters passed to the Java VM when running Maven
-# e.g. to debug Maven itself, use
-# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-# MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-# ----------------------------------------------------------------------------
-
-if [ -z "$MAVEN_SKIP_RC" ] ; then
-
- if [ -f /etc/mavenrc ] ; then
- . /etc/mavenrc
- fi
-
- if [ -f "$HOME/.mavenrc" ] ; then
- . "$HOME/.mavenrc"
- fi
-
-fi
-
-# OS specific support. $var _must_ be set to either true or false.
-cygwin=false;
-darwin=false;
-mingw=false
-case "`uname`" in
- CYGWIN*) cygwin=true ;;
- MINGW*) mingw=true;;
- Darwin*) darwin=true
- # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
- # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
- if [ -z "$JAVA_HOME" ]; then
- if [ -x "/usr/libexec/java_home" ]; then
- export JAVA_HOME="`/usr/libexec/java_home`"
- else
- export JAVA_HOME="/Library/Java/Home"
- fi
- fi
- ;;
-esac
-
-if [ -z "$JAVA_HOME" ] ; then
- if [ -r /etc/gentoo-release ] ; then
- JAVA_HOME=`java-config --jre-home`
- fi
-fi
-
-if [ -z "$M2_HOME" ] ; then
- ## resolve links - $0 may be a link to maven's home
- PRG="$0"
-
- # need this for relative symlinks
- while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG="`dirname "$PRG"`/$link"
- fi
- done
-
- saveddir=`pwd`
-
- M2_HOME=`dirname "$PRG"`/..
-
- # make it fully qualified
- M2_HOME=`cd "$M2_HOME" && pwd`
-
- cd "$saveddir"
- # echo Using m2 at $M2_HOME
-fi
-
-# For Cygwin, ensure paths are in UNIX format before anything is touched
-if $cygwin ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --unix "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
-fi
-
-# For Mingw, ensure paths are in UNIX format before anything is touched
-if $mingw ; then
- [ -n "$M2_HOME" ] &&
- M2_HOME="`(cd "$M2_HOME"; pwd)`"
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
-fi
-
-if [ -z "$JAVA_HOME" ]; then
- javaExecutable="`which javac`"
- if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
- # readlink(1) is not available as standard on Solaris 10.
- readLink=`which readlink`
- if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
- if $darwin ; then
- javaHome="`dirname \"$javaExecutable\"`"
- javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
- else
- javaExecutable="`readlink -f \"$javaExecutable\"`"
- fi
- javaHome="`dirname \"$javaExecutable\"`"
- javaHome=`expr "$javaHome" : '\(.*\)/bin'`
- JAVA_HOME="$javaHome"
- export JAVA_HOME
- fi
- fi
-fi
-
-if [ -z "$JAVACMD" ] ; then
- 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"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- else
- JAVACMD="`which java`"
- fi
-fi
-
-if [ ! -x "$JAVACMD" ] ; then
- echo "Error: JAVA_HOME is not defined correctly." >&2
- echo " We cannot execute $JAVACMD" >&2
- exit 1
-fi
-
-if [ -z "$JAVA_HOME" ] ; then
- echo "Warning: JAVA_HOME environment variable is not set."
-fi
-
-CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-
-# traverses directory structure from process work directory to filesystem root
-# first directory with .mvn subdirectory is considered project base directory
-find_maven_basedir() {
-
- if [ -z "$1" ]
- then
- echo "Path not specified to find_maven_basedir"
- return 1
- fi
-
- basedir="$1"
- wdir="$1"
- while [ "$wdir" != '/' ] ; do
- if [ -d "$wdir"/.mvn ] ; then
- basedir=$wdir
- break
- fi
- # workaround for JBEAP-8937 (on Solaris 10/Sparc)
- if [ -d "${wdir}" ]; then
- wdir=`cd "$wdir/.."; pwd`
- fi
- # end of workaround
- done
- echo "${basedir}"
-}
-
-# concatenates all lines of a file
-concat_lines() {
- if [ -f "$1" ]; then
- echo "$(tr -s '\n' ' ' < "$1")"
- fi
-}
-
-BASE_DIR=`find_maven_basedir "$(pwd)"`
-if [ -z "$BASE_DIR" ]; then
- exit 1;
-fi
-
-##########################################################################################
-# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-# This allows using the maven wrapper in projects that prohibit checking in binary data.
-##########################################################################################
-if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found .mvn/wrapper/maven-wrapper.jar"
- fi
-else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
- fi
- if [ -n "$MVNW_REPOURL" ]; then
- jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- else
- jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- fi
- while IFS="=" read key value; do
- case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
- esac
- done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Downloading from: $jarUrl"
- fi
- wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
- if $cygwin; then
- wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
- fi
-
- if command -v wget > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found wget ... using wget"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- wget "$jarUrl" -O "$wrapperJarPath"
- else
- wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath"
- fi
- elif command -v curl > /dev/null; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Found curl ... using curl"
- fi
- if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
- curl -o "$wrapperJarPath" "$jarUrl" -f
- else
- curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
- fi
-
- else
- if [ "$MVNW_VERBOSE" = true ]; then
- echo "Falling back to using Java to download"
- fi
- javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
- # For Cygwin, switch paths to Windows format before running javac
- if $cygwin; then
- javaClass=`cygpath --path --windows "$javaClass"`
- fi
- if [ -e "$javaClass" ]; then
- if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Compiling MavenWrapperDownloader.java ..."
- fi
- # Compiling the Java class
- ("$JAVA_HOME/bin/javac" "$javaClass")
- fi
- if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
- # Running the downloader
- if [ "$MVNW_VERBOSE" = true ]; then
- echo " - Running MavenWrapperDownloader.java ..."
- fi
- ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
- fi
- fi
- fi
-fi
-##########################################################################################
-# End of extension
-##########################################################################################
-
-export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
-if [ "$MVNW_VERBOSE" = true ]; then
- echo $MAVEN_PROJECTBASEDIR
-fi
-MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin; then
- [ -n "$M2_HOME" ] &&
- M2_HOME=`cygpath --path --windows "$M2_HOME"`
- [ -n "$JAVA_HOME" ] &&
- JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
- [ -n "$CLASSPATH" ] &&
- CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
- [ -n "$MAVEN_PROJECTBASEDIR" ] &&
- MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
-fi
-
-# Provide a "standardized" way to retrieve the CLI args that will
-# work with both Windows and non-Windows executions.
-MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
-export MAVEN_CMD_LINE_ARGS
-
-WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-exec "$JAVACMD" \
- $MAVEN_OPTS \
- -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
- "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
- ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"
diff --git a/proxy-client/mvnw.cmd b/proxy-client/mvnw.cmd
deleted file mode 100644
index c8d43372c..000000000
--- a/proxy-client/mvnw.cmd
+++ /dev/null
@@ -1,182 +0,0 @@
-@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 https://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 Maven Start Up Batch script
-@REM
-@REM Required ENV vars:
-@REM JAVA_HOME - location of a JDK home dir
-@REM
-@REM Optional ENV vars
-@REM M2_HOME - location of maven2's installed home dir
-@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
-@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
-@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
-@REM e.g. to debug Maven itself, use
-@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
-@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
-@REM ----------------------------------------------------------------------------
-
-@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
-@echo off
-@REM set title of command window
-title %0
-@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
-@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
-
-@REM set %HOME% to equivalent of $HOME
-if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
-
-@REM Execute a user defined script before this one
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
-@REM check for pre script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
-if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
-:skipRcPre
-
-@setlocal
-
-set ERROR_CODE=0
-
-@REM To isolate internal variables from possible post scripts, we use another setlocal
-@setlocal
-
-@REM ==== START VALIDATION ====
-if not "%JAVA_HOME%" == "" goto OkJHome
-
-echo.
-echo Error: JAVA_HOME not found in your environment. >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-:OkJHome
-if exist "%JAVA_HOME%\bin\java.exe" goto init
-
-echo.
-echo Error: JAVA_HOME is set to an invalid directory. >&2
-echo JAVA_HOME = "%JAVA_HOME%" >&2
-echo Please set the JAVA_HOME variable in your environment to match the >&2
-echo location of your Java installation. >&2
-echo.
-goto error
-
-@REM ==== END VALIDATION ====
-
-:init
-
-@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
-@REM Fallback to current working directory if not found.
-
-set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
-IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
-
-set EXEC_DIR=%CD%
-set WDIR=%EXEC_DIR%
-:findBaseDir
-IF EXIST "%WDIR%"\.mvn goto baseDirFound
-cd ..
-IF "%WDIR%"=="%CD%" goto baseDirNotFound
-set WDIR=%CD%
-goto findBaseDir
-
-:baseDirFound
-set MAVEN_PROJECTBASEDIR=%WDIR%
-cd "%EXEC_DIR%"
-goto endDetectBaseDir
-
-:baseDirNotFound
-set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
-cd "%EXEC_DIR%"
-
-:endDetectBaseDir
-
-IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
-
-@setlocal EnableExtensions EnableDelayedExpansion
-for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
-@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
-
-:endReadAdditionalConfig
-
-SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
-set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
-set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
-
-set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
-
-FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
- IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
-)
-
-@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
-@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
-if exist %WRAPPER_JAR% (
- if "%MVNW_VERBOSE%" == "true" (
- echo Found %WRAPPER_JAR%
- )
-) else (
- if not "%MVNW_REPOURL%" == "" (
- SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
- )
- if "%MVNW_VERBOSE%" == "true" (
- echo Couldn't find %WRAPPER_JAR%, downloading it ...
- echo Downloading from: %DOWNLOAD_URL%
- )
-
- powershell -Command "&{"^
- "$webclient = new-object System.Net.WebClient;"^
- "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
- "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
- "}"^
- "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
- "}"
- if "%MVNW_VERBOSE%" == "true" (
- echo Finished downloading %WRAPPER_JAR%
- )
-)
-@REM End of extension
-
-@REM Provide a "standardized" way to retrieve the CLI args that will
-@REM work with both Windows and non-Windows executions.
-set MAVEN_CMD_LINE_ARGS=%*
-
-%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
-if ERRORLEVEL 1 goto error
-goto end
-
-:error
-set ERROR_CODE=1
-
-:end
-@endlocal & set ERROR_CODE=%ERROR_CODE%
-
-if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
-@REM check for post script, once with legacy .bat ending and once with .cmd ending
-if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
-if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
-:skipRcPost
-
-@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
-if "%MAVEN_BATCH_PAUSE%" == "on" pause
-
-if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
-
-exit /B %ERROR_CODE%
diff --git a/proxy-client/pom.xml b/proxy-client/pom.xml
deleted file mode 100644
index 16a9917f3..000000000
--- a/proxy-client/pom.xml
+++ /dev/null
@@ -1,117 +0,0 @@
-
-
-
- 4.0.0
-
- com.selimhorri
- ecommerce-microservice-backend
- 0.1.0
-
- proxy-client
- proxy-client
- Spring Boot Microservice!
- jar
-
-
- 11
- 2020.0.4
- 1.16.2
-
-
-
-
- org.springframework.boot
- spring-boot-starter-security
-
-
- org.springframework.boot
- spring-boot-starter-thymeleaf
-
-
- org.springframework.boot
- spring-boot-starter-web
-
-
- org.springframework.cloud
- spring-cloud-starter-openfeign
-
-
- org.springframework.cloud
- spring-cloud-starter-config
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
- io.jsonwebtoken
- jjwt
- 0.9.1
-
-
- javax.xml.bind
- jaxb-api
-
-
- org.thymeleaf.extras
- thymeleaf-extras-springsecurity5
-
-
- org.projectlombok
- lombok
- true
-
-
- org.springframework.security
- spring-security-test
- test
-
-
-
-
-
-
- org.springframework.cloud
- spring-cloud-dependencies
- ${spring-cloud.version}
- pom
- import
-
-
- org.testcontainers
- testcontainers-bom
- ${testcontainers.version}
- pom
- import
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
-
-
- org.projectlombok
- lombok
-
-
-
-
-
- ${project.artifactId}-v${project.version}
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/ProxyClientApplication.java b/proxy-client/src/main/java/com/selimhorri/app/ProxyClientApplication.java
deleted file mode 100644
index afe229d68..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/ProxyClientApplication.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
-import org.springframework.cloud.openfeign.EnableFeignClients;
-
-@SpringBootApplication
-@EnableEurekaClient
-@EnableFeignClients
-public class ProxyClientApplication {
-
- public static void main(String[] args) {
- SpringApplication.run(ProxyClientApplication.class, args);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/auth/controller/AuthenticationController.java b/proxy-client/src/main/java/com/selimhorri/app/business/auth/controller/AuthenticationController.java
deleted file mode 100644
index b493955da..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/auth/controller/AuthenticationController.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.selimhorri.app.business.auth.controller;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.auth.model.request.AuthenticationRequest;
-import com.selimhorri.app.business.auth.model.response.AuthenticationResponse;
-import com.selimhorri.app.business.auth.service.AuthenticationService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@RestController
-@RequestMapping("/api/authenticate")
-@Slf4j
-@RequiredArgsConstructor
-public class AuthenticationController {
-
- private final AuthenticationService authenticationService;
-
- @PostMapping
- public ResponseEntity authenticate(
- @RequestBody
- @NotNull(message = "")
- @Valid final AuthenticationRequest authenticationRequest) {
- log.info("**Authentication controller, proceed with the request*\n");
- return ResponseEntity.ok(this.authenticationService.authenticate(authenticationRequest));
- }
-
- @GetMapping("/jwt/{jwt}")
- public ResponseEntity authenticate(@PathVariable("jwt") final String jwt) {
- log.info("**Authentication controller, proceed with the request*\n");
- return ResponseEntity.ok(this.authenticationService.authenticate(jwt));
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/auth/model/request/AuthenticationRequest.java b/proxy-client/src/main/java/com/selimhorri/app/business/auth/model/request/AuthenticationRequest.java
deleted file mode 100644
index b7c51ad91..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/auth/model/request/AuthenticationRequest.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.selimhorri.app.business.auth.model.request;
-
-import java.io.Serializable;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class AuthenticationRequest implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @NotBlank(message = "*Username must not be empty!**")
- private String username;
-
- @NotNull(message = "*Password must not be null!**")
- private String password;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/auth/model/response/AuthenticationResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/auth/model/response/AuthenticationResponse.java
deleted file mode 100644
index 42ae43c74..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/auth/model/response/AuthenticationResponse.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.business.auth.model.response;
-
-import java.io.Serializable;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class AuthenticationResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private String jwtToken;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/AuthenticationService.java b/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/AuthenticationService.java
deleted file mode 100644
index 0777f4309..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/AuthenticationService.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.selimhorri.app.business.auth.service;
-
-import com.selimhorri.app.business.auth.model.request.AuthenticationRequest;
-import com.selimhorri.app.business.auth.model.response.AuthenticationResponse;
-
-public interface AuthenticationService {
-
- AuthenticationResponse authenticate(final AuthenticationRequest authenticationRequest);
- Boolean authenticate(final String jwt);
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/impl/AuthenticationServiceImpl.java b/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/impl/AuthenticationServiceImpl.java
deleted file mode 100644
index da4b958f2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/impl/AuthenticationServiceImpl.java
+++ /dev/null
@@ -1,61 +0,0 @@
-package com.selimhorri.app.business.auth.service.impl;
-
-import org.springframework.security.authentication.AuthenticationManager;
-import org.springframework.security.authentication.BadCredentialsException;
-import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
-import org.springframework.security.core.userdetails.UserDetailsService;
-import org.springframework.stereotype.Service;
-
-import com.selimhorri.app.business.auth.model.request.AuthenticationRequest;
-import com.selimhorri.app.business.auth.model.response.AuthenticationResponse;
-import com.selimhorri.app.business.auth.service.AuthenticationService;
-import com.selimhorri.app.exception.wrapper.IllegalAuthenticationCredentialsException;
-import com.selimhorri.app.jwt.service.JwtService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Slf4j
-@RequiredArgsConstructor
-public class AuthenticationServiceImpl implements AuthenticationService {
-
- private final AuthenticationManager authenticationManager;
- private final UserDetailsService userDetailsService;
- private final JwtService jwtService;
-
- @Override
- public AuthenticationResponse authenticate(final AuthenticationRequest authenticationRequest) {
-
- log.info("** AuthenticationResponse, authenticate user service*\n");
-
- try {
- this.authenticationManager.authenticate(new UsernamePasswordAuthenticationToken(
- authenticationRequest.getUsername(), authenticationRequest.getPassword()));
- }
- catch (BadCredentialsException e) {
- throw new IllegalAuthenticationCredentialsException("#### Bad credentials! ####");
- }
-
- return new AuthenticationResponse(this.jwtService.generateToken(this.userDetailsService
- .loadUserByUsername(authenticationRequest.getUsername())));
- }
-
- @Override
- public Boolean authenticate(final String jwt) {
- return null;
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/impl/UserDetailsServiceImpl.java b/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/impl/UserDetailsServiceImpl.java
deleted file mode 100644
index 3dba5f5fa..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/auth/service/impl/UserDetailsServiceImpl.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.selimhorri.app.business.auth.service.impl;
-
-import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.security.core.userdetails.UserDetailsService;
-import org.springframework.security.core.userdetails.UsernameNotFoundException;
-import org.springframework.stereotype.Service;
-import org.springframework.web.client.RestTemplate;
-
-import com.selimhorri.app.business.user.model.CredentialDto;
-import com.selimhorri.app.business.user.model.UserDetailsImpl;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Slf4j
-@RequiredArgsConstructor
-public class UserDetailsServiceImpl implements UserDetailsService {
-
- private static final String API_URL = AppConstant.DiscoveredDomainsApi.USER_SERVICE_HOST + "/api/credentials";
- private final RestTemplate restTemplate;
-
- @Override
- public UserDetails loadUserByUsername(final String username) throws UsernameNotFoundException {
- log.info("**UserDetails, load user by username*\n");
- return new UserDetailsImpl(this.restTemplate.getForObject(API_URL + "/username/" + username, CredentialDto.class));
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/controller/FavouriteController.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/controller/FavouriteController.java
deleted file mode 100644
index 885e2eebe..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/controller/FavouriteController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.selimhorri.app.business.favourite.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.favourite.model.FavouriteDto;
-import com.selimhorri.app.business.favourite.model.FavouriteId;
-import com.selimhorri.app.business.favourite.model.response.FavouriteFavouriteServiceCollectionDtoResponse;
-import com.selimhorri.app.business.favourite.service.FavouriteClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/favourites")
-@RequiredArgsConstructor
-public class FavouriteController {
-
- private final FavouriteClientService favouriteClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.favouriteClientService.findAll().getBody());
- }
-
- @GetMapping("/{userId}/{productId}/{likeDate}")
- public ResponseEntity findById(
- @PathVariable("userId") final String userId,
- @PathVariable("productId") final String productId,
- @PathVariable("likeDate") final String likeDate) {
- return ResponseEntity.ok(this.favouriteClientService.findById(userId, productId, likeDate).getBody());
- }
-
- @GetMapping("/find")
- public ResponseEntity findById(@RequestBody final FavouriteId favouriteId) {
- return ResponseEntity.ok(this.favouriteClientService.findById(favouriteId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final FavouriteDto favouriteDto) {
- return ResponseEntity.ok(this.favouriteClientService.save(favouriteDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final FavouriteDto favouriteDto) {
- return ResponseEntity.ok(this.favouriteClientService.update(favouriteDto).getBody());
- }
-
- @DeleteMapping("/{userId}/{productId}/{likeDate}")
- public ResponseEntity deleteById(
- @PathVariable("userId") final String userId,
- @PathVariable("productId") final String productId,
- @PathVariable("likeDate") final String likeDate) {
- this.favouriteClientService.deleteById(userId, productId, likeDate).getBody();
- return ResponseEntity.ok(true);
- }
-
- @DeleteMapping("/delete")
- public ResponseEntity deleteById(@RequestBody final FavouriteId favouriteId) {
- this.favouriteClientService.deleteById(favouriteId).getBody();
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/FavouriteDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/FavouriteDto.java
deleted file mode 100644
index f42977cdf..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/FavouriteDto.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.business.favourite.model;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import javax.validation.constraints.NotNull;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class FavouriteDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @NotNull(message = "Field must not be NULL")
- private Integer userId;
-
- @NotNull(message = "Field must not be NULL")
- private Integer productId;
-
- @NotNull(message = "Field must not be NULL")
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime likeDate;
-
- @JsonProperty("user")
- @JsonInclude(Include.NON_NULL)
- private UserDto userDto;
-
- @JsonProperty("product")
- @JsonInclude(Include.NON_NULL)
- private ProductDto productDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/FavouriteId.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/FavouriteId.java
deleted file mode 100644
index 60bd71816..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/FavouriteId.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.selimhorri.app.business.favourite.model;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import javax.validation.constraints.NotNull;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-public class FavouriteId implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @NotNull
- private Integer userId;
-
- @NotNull
- private Integer productId;
-
- @NotNull
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime likeDate;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/ProductDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/ProductDto.java
deleted file mode 100644
index 3fc6f80e8..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/ProductDto.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.selimhorri.app.business.favourite.model;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class ProductDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer productId;
- private String productTitle;
- private String imageUrl;
- private String sku;
- private Double priceUnit;
- private Integer quantity;
-
- @JsonInclude(Include.NON_NULL)
- private Set favouriteDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/UserDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/UserDto.java
deleted file mode 100644
index 414ca8f85..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/UserDto.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.selimhorri.app.business.favourite.model;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class UserDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer userId;
- private String firstName;
- private String lastName;
- private String imageUrl;
- private String email;
- private String phone;
-
- @JsonInclude(Include.NON_NULL)
- private Set favouriteDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/response/FavouriteFavouriteServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/response/FavouriteFavouriteServiceCollectionDtoResponse.java
deleted file mode 100644
index bbda91fe3..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/model/response/FavouriteFavouriteServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.favourite.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.favourite.model.FavouriteDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class FavouriteFavouriteServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/service/FavouriteClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/favourite/service/FavouriteClientService.java
deleted file mode 100644
index 866b1d5de..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/favourite/service/FavouriteClientService.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package com.selimhorri.app.business.favourite.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.favourite.model.FavouriteDto;
-import com.selimhorri.app.business.favourite.model.FavouriteId;
-import com.selimhorri.app.business.favourite.model.response.FavouriteFavouriteServiceCollectionDtoResponse;
-
-@FeignClient(name = "FAVOURITE-SERVICE", contextId = "favouriteClientService", path = "/favourite-service/api/favourites")
-public interface FavouriteClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{userId}/{productId}/{likeDate}")
- public ResponseEntity findById(
- @PathVariable("userId") final String userId,
- @PathVariable("productId") final String productId,
- @PathVariable("likeDate") final String likeDate);
-
- @GetMapping("/find")
- public ResponseEntity findById(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteId favouriteId);
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteDto favouriteDto);
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteDto favouriteDto);
-
- @DeleteMapping("/{userId}/{productId}/{likeDate}")
- public ResponseEntity deleteById(
- @PathVariable("userId") final String userId,
- @PathVariable("productId") final String productId,
- @PathVariable("likeDate") final String likeDate);
-
- @DeleteMapping("/delete")
- public ResponseEntity deleteById(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final FavouriteId favouriteId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/controller/CartController.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/controller/CartController.java
deleted file mode 100644
index c95b84df2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/controller/CartController.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package com.selimhorri.app.business.order.controller;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.order.model.CartDto;
-import com.selimhorri.app.business.order.model.response.CartOrderServiceDtoCollectionResponse;
-import com.selimhorri.app.business.order.service.CartClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/carts")
-@RequiredArgsConstructor
-public class CartController {
-
- private final CartClientService cartClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.cartClientService.findAll().getBody());
- }
-
- @GetMapping("/{cartId}")
- public ResponseEntity findById(
- @PathVariable("cartId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String cartId) {
- return ResponseEntity.ok(this.cartClientService.findById(cartId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto) {
- return ResponseEntity.ok(this.cartClientService.save(cartDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto) {
- return ResponseEntity.ok(this.cartClientService.update(cartDto).getBody());
- }
-
- @PutMapping("/{cartId}")
- public ResponseEntity update(
- @PathVariable("cartId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String cartId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto) {
- return ResponseEntity.ok(this.cartClientService.update(cartId, cartDto).getBody());
- }
-
- @DeleteMapping("/{cartId}")
- public ResponseEntity deleteById(@PathVariable("cartId") final String cartId) {
- this.cartClientService.deleteById(cartId).getBody();
- return ResponseEntity.ok(true);
- }
-
-
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/controller/OrderController.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/controller/OrderController.java
deleted file mode 100644
index 18655773b..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/controller/OrderController.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package com.selimhorri.app.business.order.controller;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.order.model.OrderDto;
-import com.selimhorri.app.business.order.model.response.OrderOrderServiceDtoCollectionResponse;
-import com.selimhorri.app.business.order.service.OrderClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/orders")
-@RequiredArgsConstructor
-public class OrderController {
-
- private final OrderClientService orderClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.orderClientService.findAll().getBody());
- }
-
- @GetMapping("/{orderId}")
- public ResponseEntity findById(
- @PathVariable("orderId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String orderId) {
- return ResponseEntity.ok(this.orderClientService.findById(orderId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final OrderDto orderDto) {
- return ResponseEntity.ok(this.orderClientService.save(orderDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final OrderDto orderDto) {
- return ResponseEntity.ok(this.orderClientService.update(orderDto).getBody());
- }
-
- @PutMapping("/{orderId}")
- public ResponseEntity update(
- @PathVariable("orderId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String orderId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final OrderDto orderDto) {
- return ResponseEntity.ok(this.orderClientService.update(orderId, orderDto).getBody());
- }
-
- @DeleteMapping("/{orderId}")
- public ResponseEntity deleteById(@PathVariable("orderId") final String orderId) {
- this.orderClientService.deleteById(orderId).getBody();
- return ResponseEntity.ok(true);
- }
-
-
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/CartDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/model/CartDto.java
deleted file mode 100644
index 9df4aa564..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/CartDto.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.selimhorri.app.business.order.model;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CartDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer cartId;
- private Integer userId;
-
- @JsonInclude(Include.NON_NULL)
- private Set orderDtos;
-
- @JsonProperty("user")
- @JsonInclude(Include.NON_NULL)
- private UserDto userDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/OrderDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/model/OrderDto.java
deleted file mode 100644
index 2a13c4ded..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/OrderDto.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.selimhorri.app.business.order.model;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer orderId;
-
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime orderDate;
- private String orderDesc;
- private Double orderFee;
-
- @JsonProperty("cart")
- @JsonInclude(Include.NON_NULL)
- private CartDto cartDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/UserDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/model/UserDto.java
deleted file mode 100644
index 38c0b14e9..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/UserDto.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.selimhorri.app.business.order.model;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class UserDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer userId;
- private String firstName;
- private String lastName;
- private String imageUrl;
- private String email;
- private String phone;
-
- @JsonProperty("cart")
- @JsonInclude(Include.NON_NULL)
- private CartDto cartDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/response/CartOrderServiceDtoCollectionResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/model/response/CartOrderServiceDtoCollectionResponse.java
deleted file mode 100644
index 9e85d95f0..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/response/CartOrderServiceDtoCollectionResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.order.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.order.model.CartDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CartOrderServiceDtoCollectionResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/response/OrderOrderServiceDtoCollectionResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/model/response/OrderOrderServiceDtoCollectionResponse.java
deleted file mode 100644
index 3d32ddadc..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/model/response/OrderOrderServiceDtoCollectionResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.order.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.order.model.OrderDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderOrderServiceDtoCollectionResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/service/CartClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/service/CartClientService.java
deleted file mode 100644
index a68de06e2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/service/CartClientService.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.business.order.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.order.model.CartDto;
-import com.selimhorri.app.business.order.model.response.CartOrderServiceDtoCollectionResponse;
-
-@FeignClient(name = "ORDER-SERVICE", contextId = "cartClientService", path = "/order-service/api/carts")
-public interface CartClientService {
-
- @GetMapping
- public ResponseEntity findAll();
-
- @GetMapping("/{cartId}")
- public ResponseEntity findById(
- @PathVariable("cartId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String cartId);
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto);
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto);
-
- @PutMapping("/{cartId}")
- public ResponseEntity update(
- @PathVariable("cartId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String cartId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CartDto cartDto);
-
- @DeleteMapping("/{cartId}")
- public ResponseEntity deleteById(@PathVariable("cartId") final String cartId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/order/service/OrderClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/order/service/OrderClientService.java
deleted file mode 100644
index bea489571..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/order/service/OrderClientService.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.business.order.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.order.model.OrderDto;
-import com.selimhorri.app.business.order.model.response.OrderOrderServiceDtoCollectionResponse;
-
-@FeignClient(name = "ORDER-SERVICE", contextId = "orderClientService", path = "/order-service/api/orders")
-public interface OrderClientService {
-
- @GetMapping
- public ResponseEntity findAll();
-
- @GetMapping("/{orderId}")
- public ResponseEntity findById(
- @PathVariable("orderId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String orderId);
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final OrderDto orderDto);
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final OrderDto orderDto);
-
- @PutMapping("/{orderId}")
- public ResponseEntity update(
- @PathVariable("orderId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String orderId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final OrderDto orderDto);
-
- @DeleteMapping("/{orderId}")
- public ResponseEntity deleteById(@PathVariable("orderId") final String orderId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/controller/OrderItemController.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/controller/OrderItemController.java
deleted file mode 100644
index dc7073399..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/controller/OrderItemController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.selimhorri.app.business.orderItem.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.orderItem.model.OrderItemDto;
-import com.selimhorri.app.business.orderItem.model.OrderItemId;
-import com.selimhorri.app.business.orderItem.model.response.OrderItemOrderItemServiceDtoCollectionResponse;
-import com.selimhorri.app.business.orderItem.service.OrderItemClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/shippings")
-@RequiredArgsConstructor
-public class OrderItemController {
-
- private final OrderItemClientService orderItemClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.orderItemClientService.findAll().getBody());
- }
-
- @GetMapping("/{orderId}/{productId}")
- public ResponseEntity findById(
- @PathVariable("orderId") final String orderId,
- @PathVariable("productId") final String productId) {
- return ResponseEntity.ok(this.orderItemClientService.findById(new OrderItemId(Integer.parseInt(productId),
- Integer.parseInt(orderId))).getBody());
- }
-
- @GetMapping("/find")
- public ResponseEntity findById(@RequestBody final OrderItemId orderItemId) {
- return ResponseEntity.ok(this.orderItemClientService.findById(orderItemId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final OrderItemDto orderItemDto) {
- return ResponseEntity.ok(this.orderItemClientService.save(orderItemDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final OrderItemDto orderItemDto) {
- return ResponseEntity.ok(this.orderItemClientService.update(orderItemDto).getBody());
- }
-
- @DeleteMapping("/{orderId}/{productId}")
- public ResponseEntity deleteById(
- @PathVariable("orderId") final String orderId,
- @PathVariable("productId") final String productId) {
- this.orderItemClientService.deleteById(new OrderItemId(Integer.parseInt(orderId),
- Integer.parseInt(productId))).getBody();
- return ResponseEntity.ok(true);
- }
-
- @DeleteMapping("/delete")
- public ResponseEntity deleteById(@RequestBody final OrderItemId orderItemId) {
- this.orderItemClientService.deleteById(orderItemId).getBody();
- return ResponseEntity.ok(true);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderDto.java
deleted file mode 100644
index 754e27e15..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderDto.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package com.selimhorri.app.business.orderItem.model;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-import java.util.Set;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer orderId;
-
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime orderDate;
- private String orderDesc;
- private Double orderFee;
-
- @JsonInclude(Include.NON_NULL)
- private Set orderItemDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderItemDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderItemDto.java
deleted file mode 100644
index 01402bbe9..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderItemDto.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.selimhorri.app.business.orderItem.model;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderItemDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer productId;
- private Integer orderId;
- private Integer orderedQuantity;
-
- @JsonProperty("product")
- @JsonInclude(Include.NON_NULL)
- private ProductDto productDto;
-
- @JsonProperty("order")
- @JsonInclude(Include.NON_NULL)
- private OrderDto orderDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderItemId.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderItemId.java
deleted file mode 100644
index 03dc98556..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/OrderItemId.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.business.orderItem.model;
-
-import java.io.Serializable;
-
-import lombok.AllArgsConstructor;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-public class OrderItemId implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer productId;
- private Integer orderId;
-
-}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/ProductDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/ProductDto.java
deleted file mode 100644
index 1151a0aba..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/ProductDto.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.selimhorri.app.business.orderItem.model;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class ProductDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer productId;
- private String productTitle;
- private String imageUrl;
- private String sku;
- private Double priceUnit;
- private Integer quantity;
-
- @JsonInclude(Include.NON_NULL)
- private Set orderItemDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/response/OrderItemOrderItemServiceDtoCollectionResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/response/OrderItemOrderItemServiceDtoCollectionResponse.java
deleted file mode 100644
index 1223bfeff..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/model/response/OrderItemOrderItemServiceDtoCollectionResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.orderItem.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.orderItem.model.OrderItemDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderItemOrderItemServiceDtoCollectionResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/service/OrderItemClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/service/OrderItemClientService.java
deleted file mode 100644
index 62e269dfe..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/orderItem/service/OrderItemClientService.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package com.selimhorri.app.business.orderItem.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.orderItem.model.OrderItemDto;
-import com.selimhorri.app.business.orderItem.model.OrderItemId;
-import com.selimhorri.app.business.orderItem.model.response.OrderItemOrderItemServiceDtoCollectionResponse;
-
-@FeignClient(name = "SHIPPING-SERVICE", contextId = "shippingClientService", path = "/shipping-service/api/shippings")
-public interface OrderItemClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{orderId}/{productId}")
- ResponseEntity findById(
- @PathVariable("orderId") final String orderId,
- @PathVariable("productId") final String productId);
-
- @GetMapping("/find")
- ResponseEntity findById(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderItemId orderItemId);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderItemDto orderItemDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderItemDto orderItemDto);
-
- @DeleteMapping("/{orderId}/{productId}")
- ResponseEntity deleteById(
- @PathVariable("orderId") final String orderId,
- @PathVariable("productId") final String productId);
-
- @DeleteMapping("/delete")
- ResponseEntity deleteById(
- @RequestBody
- @NotNull(message = "Input must not be NULL")
- @Valid final OrderItemId orderItemId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/payment/controller/PaymentController.java b/proxy-client/src/main/java/com/selimhorri/app/business/payment/controller/PaymentController.java
deleted file mode 100644
index f72ce2df2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/payment/controller/PaymentController.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.selimhorri.app.business.payment.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.payment.model.PaymentDto;
-import com.selimhorri.app.business.payment.model.response.PaymentPaymentServiceDtoCollectionResponse;
-import com.selimhorri.app.business.payment.service.PaymentClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/payments")
-@RequiredArgsConstructor
-public class PaymentController {
-
- private final PaymentClientService paymentClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.paymentClientService.findAll().getBody());
- }
-
- @GetMapping("/{paymentId}")
- public ResponseEntity findById(@PathVariable("paymentId") final String paymentId) {
- return ResponseEntity.ok(this.paymentClientService.findById(paymentId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final PaymentDto paymentDto) {
- return ResponseEntity.ok(this.paymentClientService.save(paymentDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final PaymentDto paymentDto) {
- return ResponseEntity.ok(this.paymentClientService.update(paymentDto).getBody());
- }
-
- @DeleteMapping("/{paymentId}")
- public ResponseEntity deleteById(@PathVariable("paymentId") final String paymentId) {
- return ResponseEntity.ok(this.paymentClientService.deleteById(paymentId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/OrderDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/OrderDto.java
deleted file mode 100644
index f588638bd..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/OrderDto.java
+++ /dev/null
@@ -1,49 +0,0 @@
-package com.selimhorri.app.business.payment.model;
-
-import java.io.Serializable;
-import java.time.LocalDateTime;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
-import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class OrderDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer orderId;
-
- @JsonSerialize(using = LocalDateTimeSerializer.class)
- @JsonDeserialize(using = LocalDateTimeDeserializer.class)
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_TIME_FORMAT)
- private LocalDateTime orderDate;
- private String orderDesc;
- private Double orderFee;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/PaymentDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/PaymentDto.java
deleted file mode 100644
index 93e038816..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/PaymentDto.java
+++ /dev/null
@@ -1,40 +0,0 @@
-package com.selimhorri.app.business.payment.model;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class PaymentDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer paymentId;
- private Boolean isPayed;
- private PaymentStatus paymentStatus;
-
- @JsonProperty("order")
- @JsonInclude(Include.NON_NULL)
- private OrderDto orderDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/PaymentStatus.java b/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/PaymentStatus.java
deleted file mode 100644
index b8b141f24..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/PaymentStatus.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.selimhorri.app.business.payment.model;
-
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@Getter
-public enum PaymentStatus {
-
- NOT_STARTED("not_started"),
- IN_PROGRESS("in_progress"),
- COMPLETED("completed");
-
- private final String status;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/response/PaymentPaymentServiceDtoCollectionResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/response/PaymentPaymentServiceDtoCollectionResponse.java
deleted file mode 100644
index b11d282ef..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/payment/model/response/PaymentPaymentServiceDtoCollectionResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.payment.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.payment.model.PaymentDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class PaymentPaymentServiceDtoCollectionResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/payment/service/PaymentClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/payment/service/PaymentClientService.java
deleted file mode 100644
index 8f76be006..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/payment/service/PaymentClientService.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.selimhorri.app.business.payment.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.payment.model.PaymentDto;
-import com.selimhorri.app.business.payment.model.response.PaymentPaymentServiceDtoCollectionResponse;
-
-@FeignClient(name = "PAYMENT-SERVICE", contextId = "paymentClientService", path = "/payment-service/api/payments")
-public interface PaymentClientService {
-
- @GetMapping
- public ResponseEntity findAll();
-
- @GetMapping("/{paymentId}")
- public ResponseEntity findById(
- @PathVariable("paymentId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String paymentId);
-
- @PostMapping
- public ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final PaymentDto paymentDto);
-
- @PutMapping
- public ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final PaymentDto paymentDto);
-
- @DeleteMapping("/{paymentId}")
- public ResponseEntity deleteById(@PathVariable("paymentId") final String paymentId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/controller/CategoryController.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/controller/CategoryController.java
deleted file mode 100644
index 7ddf8668c..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/controller/CategoryController.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package com.selimhorri.app.business.product.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.product.model.CategoryDto;
-import com.selimhorri.app.business.product.model.response.CategoryProductServiceCollectionDtoResponse;
-import com.selimhorri.app.business.product.service.CategoryClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/categories")
-@RequiredArgsConstructor
-public class CategoryController {
-
- private final CategoryClientService categoryClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.categoryClientService.findAll().getBody());
- }
-
- @GetMapping("/{categoryId}")
- public ResponseEntity findById(@PathVariable("categoryId") final String categoryId) {
- return ResponseEntity.ok(this.categoryClientService.findById(categoryId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final CategoryDto categoryDto) {
- return ResponseEntity.ok(this.categoryClientService.save(categoryDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final CategoryDto categoryDto) {
- return ResponseEntity.ok(this.categoryClientService.update(categoryDto).getBody());
- }
-
- @PutMapping("/{categoryId}")
- public ResponseEntity update(@PathVariable("categoryId") final String categoryId,
- @RequestBody final CategoryDto categoryDto) {
- return ResponseEntity.ok(this.categoryClientService.update(categoryId, categoryDto).getBody());
- }
-
- @DeleteMapping("/{categoryId}")
- public ResponseEntity deleteById(@PathVariable("categoryId") final String categoryId) {
- return ResponseEntity.ok(this.categoryClientService.deleteById(categoryId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/controller/ProductController.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/controller/ProductController.java
deleted file mode 100644
index 9abd38f5d..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/controller/ProductController.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package com.selimhorri.app.business.product.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.product.model.ProductDto;
-import com.selimhorri.app.business.product.model.response.ProductProductServiceCollectionDtoResponse;
-import com.selimhorri.app.business.product.service.ProductClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/products")
-@RequiredArgsConstructor
-public class ProductController {
-
- private final ProductClientService productClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.productClientService.findAll().getBody());
- }
-
- @GetMapping("/{productId}")
- public ResponseEntity findById(@PathVariable("productId") final String productId) {
- return ResponseEntity.ok(this.productClientService.findById(productId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final ProductDto productDto) {
- return ResponseEntity.ok(this.productClientService.save(productDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final ProductDto productDto) {
- return ResponseEntity.ok(this.productClientService.update(productDto).getBody());
- }
-
- @PutMapping("/{productId}")
- public ResponseEntity update(@PathVariable("productId") final String productId,
- @RequestBody final ProductDto productDto) {
- return ResponseEntity.ok(this.productClientService.update(productId, productDto).getBody());
- }
-
- @DeleteMapping("/{productId}")
- public ResponseEntity deleteById(@PathVariable("productId") final String productId) {
- return ResponseEntity.ok(this.productClientService.deleteById(productId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/CategoryDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/model/CategoryDto.java
deleted file mode 100644
index 6c15e5a3a..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/CategoryDto.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package com.selimhorri.app.business.product.model;
-
-import java.io.Serializable;
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CategoryDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer categoryId;
- private String categoryTitle;
- private String imageUrl;
-
- @JsonInclude(Include.NON_NULL)
- private Set subCategoriesDtos;
-
- @JsonProperty("parentCategory")
- @JsonInclude(Include.NON_NULL)
- private CategoryDto parentCategoryDto;
-
- @JsonInclude(Include.NON_NULL)
- private Set productDtos;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/ProductDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/model/ProductDto.java
deleted file mode 100644
index ed83b6d70..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/ProductDto.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.selimhorri.app.business.product.model;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class ProductDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Integer productId;
- private String productTitle;
- private String imageUrl;
- private String sku;
- private Double priceUnit;
- private Integer quantity;
-
- @JsonProperty("category")
- @JsonInclude(Include.NON_NULL)
- private CategoryDto categoryDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/response/CategoryProductServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/model/response/CategoryProductServiceCollectionDtoResponse.java
deleted file mode 100644
index d67c2b51b..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/response/CategoryProductServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.product.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.product.model.CategoryDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CategoryProductServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/response/ProductProductServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/model/response/ProductProductServiceCollectionDtoResponse.java
deleted file mode 100644
index 8505b863d..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/model/response/ProductProductServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.product.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.product.model.ProductDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class ProductProductServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/service/CategoryClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/service/CategoryClientService.java
deleted file mode 100644
index 12fa6a499..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/service/CategoryClientService.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.business.product.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.product.model.CategoryDto;
-import com.selimhorri.app.business.product.model.response.CategoryProductServiceCollectionDtoResponse;
-
-@FeignClient(name = "PRODUCT-SERVICE", contextId = "categoryClientService", path = "/product-service/api/categories")
-public interface CategoryClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{categoryId}")
- ResponseEntity findById(
- @PathVariable("categoryId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String categoryId);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CategoryDto categoryDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CategoryDto categoryDto);
-
- @PutMapping("/{categoryId}")
- ResponseEntity update(
- @PathVariable("categoryId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String categoryId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final CategoryDto categoryDto);
-
- @DeleteMapping("/{categoryId}")
- ResponseEntity deleteById(@PathVariable("categoryId") final String categoryId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/product/service/ProductClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/product/service/ProductClientService.java
deleted file mode 100644
index 7a332daf2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/product/service/ProductClientService.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.business.product.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.product.model.ProductDto;
-import com.selimhorri.app.business.product.model.response.ProductProductServiceCollectionDtoResponse;
-
-@FeignClient(name = "PRODUCT-SERVICE", contextId = "productClientService", path = "/product-service/api/products")
-public interface ProductClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{productId}")
- ResponseEntity findById(
- @PathVariable("productId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String productId);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final ProductDto productDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final ProductDto productDto);
-
- @PutMapping("/{productId}")
- ResponseEntity update(
- @PathVariable("productId")
- @NotBlank(message = "Input must not be blank!")
- @Valid final String productId,
- @RequestBody
- @NotNull(message = "Input must not be NULL!")
- @Valid final ProductDto productDto);
-
- @DeleteMapping("/{productId}")
- ResponseEntity deleteById(@PathVariable("productId") final String productId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/AddressController.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/AddressController.java
deleted file mode 100644
index e18410282..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/AddressController.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package com.selimhorri.app.business.user.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.user.model.AddressDto;
-import com.selimhorri.app.business.user.model.response.AddressUserServiceCollectionDtoResponse;
-import com.selimhorri.app.business.user.service.AddressClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/address")
-@RequiredArgsConstructor
-public class AddressController {
-
- private final AddressClientService addressClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.addressClientService.findAll().getBody());
- }
-
- @GetMapping("/{addressId}")
- public ResponseEntity findById(@PathVariable("addressId") final String addressId) {
- return ResponseEntity.ok(this.addressClientService.findById(addressId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final AddressDto addressDto) {
- return ResponseEntity.ok(this.addressClientService.save(addressDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final AddressDto addressDto) {
- return ResponseEntity.ok(this.addressClientService.update(addressDto).getBody());
- }
-
- @PutMapping("/{addressId}")
- public ResponseEntity update(@PathVariable("addressId") final String addressId, @RequestBody final AddressDto addressDto) {
- return ResponseEntity.ok(this.addressClientService.update(addressDto).getBody());
- }
-
- @DeleteMapping("/{addressId}")
- public ResponseEntity deleteById(@PathVariable("addressId") final String addressId) {
- return ResponseEntity.ok(this.addressClientService.deleteById(addressId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/CredentialController.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/CredentialController.java
deleted file mode 100644
index a5db47603..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/CredentialController.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package com.selimhorri.app.business.user.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.user.model.CredentialDto;
-import com.selimhorri.app.business.user.model.response.CredentialUserServiceCollectionDtoResponse;
-import com.selimhorri.app.business.user.service.CredentialClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/credentials")
-@RequiredArgsConstructor
-public class CredentialController {
-
- private final CredentialClientService credentialClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.credentialClientService.findAll().getBody());
- }
-
- @GetMapping("/{credentialId}")
- public ResponseEntity findById(@PathVariable("credentialId") final String credentialId) {
- return ResponseEntity.ok(this.credentialClientService.findById(credentialId).getBody());
- }
-
- @GetMapping("/username/{username}")
- public ResponseEntity findByCredentialname(@PathVariable("username") final String username) {
- return ResponseEntity.ok(this.credentialClientService.findByUsername(username).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final CredentialDto credentialDto) {
- return ResponseEntity.ok(this.credentialClientService.save(credentialDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final CredentialDto credentialDto) {
- return ResponseEntity.ok(this.credentialClientService.update(credentialDto).getBody());
- }
-
- @PutMapping("/{credentialId}")
- public ResponseEntity update(@PathVariable("credentialId") final String credentialId, @RequestBody final CredentialDto credentialDto) {
- return ResponseEntity.ok(this.credentialClientService.update(credentialDto).getBody());
- }
-
- @DeleteMapping("/{credentialId}")
- public ResponseEntity deleteById(@PathVariable("credentialId") final String credentialId) {
- return ResponseEntity.ok(this.credentialClientService.deleteById(credentialId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/UserController.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/UserController.java
deleted file mode 100644
index 31bf0f032..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/UserController.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package com.selimhorri.app.business.user.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.user.model.UserDto;
-import com.selimhorri.app.business.user.model.response.UserUserServiceCollectionDtoResponse;
-import com.selimhorri.app.business.user.service.UserClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/users")
-@RequiredArgsConstructor
-public class UserController {
-
- private final UserClientService userClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.userClientService.findAll().getBody());
- }
-
- @GetMapping("/{userId}")
- public ResponseEntity findById(@PathVariable("userId") final String userId) {
- return ResponseEntity.ok(this.userClientService.findById(userId).getBody());
- }
-
- @GetMapping("/username/{username}")
- public ResponseEntity findByUsername(@PathVariable("username") final String username) {
- return ResponseEntity.ok(this.userClientService.findByUsername(username).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final UserDto userDto) {
- return ResponseEntity.ok(this.userClientService.save(userDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final UserDto userDto) {
- return ResponseEntity.ok(this.userClientService.update(userDto).getBody());
- }
-
- @PutMapping("/{userId}")
- public ResponseEntity update(@PathVariable("userId") final String userId, @RequestBody final UserDto userDto) {
- return ResponseEntity.ok(this.userClientService.update(userDto).getBody());
- }
-
- @DeleteMapping("/{userId}")
- public ResponseEntity deleteById(@PathVariable("userId") final String userId) {
- return ResponseEntity.ok(this.userClientService.deleteById(userId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/VerificationTokenController.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/VerificationTokenController.java
deleted file mode 100644
index 833f5c84e..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/controller/VerificationTokenController.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package com.selimhorri.app.business.user.controller;
-
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.selimhorri.app.business.user.model.VerificationTokenDto;
-import com.selimhorri.app.business.user.model.response.VerificationUserTokenServiceCollectionDtoResponse;
-import com.selimhorri.app.business.user.service.VerificationTokenClientService;
-
-import lombok.RequiredArgsConstructor;
-
-@RestController
-@RequestMapping("/api/verificationTokens")
-@RequiredArgsConstructor
-public class VerificationTokenController {
-
- private final VerificationTokenClientService verificationTokenClientService;
-
- @GetMapping
- public ResponseEntity findAll() {
- return ResponseEntity.ok(this.verificationTokenClientService.findAll().getBody());
- }
-
- @GetMapping("/{verificationTokenId}")
- public ResponseEntity findById(@PathVariable("verificationTokenId") final String verificationTokenId) {
- return ResponseEntity.ok(this.verificationTokenClientService.findById(verificationTokenId).getBody());
- }
-
- @PostMapping
- public ResponseEntity save(@RequestBody final VerificationTokenDto verificationTokenDto) {
- return ResponseEntity.ok(this.verificationTokenClientService.save(verificationTokenDto).getBody());
- }
-
- @PutMapping
- public ResponseEntity update(@RequestBody final VerificationTokenDto verificationTokenDto) {
- return ResponseEntity.ok(this.verificationTokenClientService.update(verificationTokenDto).getBody());
- }
-
- @PutMapping("/{verificationTokenId}")
- public ResponseEntity update(@PathVariable("verificationTokenId") final String verificationTokenId, @RequestBody final VerificationTokenDto verificationTokenDto) {
- return ResponseEntity.ok(this.verificationTokenClientService.update(verificationTokenDto).getBody());
- }
-
- @DeleteMapping("/{verificationTokenId}")
- public ResponseEntity deleteById(@PathVariable("verificationTokenId") final String verificationTokenId) {
- return ResponseEntity.ok(this.verificationTokenClientService.deleteById(verificationTokenId).getBody());
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/AddressDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/AddressDto.java
deleted file mode 100644
index c62f4637f..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/AddressDto.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.selimhorri.app.business.user.model;
-
-import java.io.Serializable;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class AddressDto implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- private Integer addressId;
-
- private String fullAddress;
-
- private String postalCode;
-
- private String city;
-
- @JsonProperty("user")
- @JsonInclude(value = Include.NON_NULL)
- private UserDto userDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/CredentialDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/CredentialDto.java
deleted file mode 100644
index 579b336a5..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/CredentialDto.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package com.selimhorri.app.business.user.model;
-
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CredentialDto {
-
- private Integer credentialId;
- private String username;
- private String password;
- private RoleBasedAuthority roleBasedAuthority;
- private Boolean isEnabled;
- private Boolean isAccountNonExpired;
- private Boolean isAccountNonLocked;
- private Boolean isCredentialsNonExpired;
-
- @JsonProperty("user")
- @JsonInclude(value = Include.NON_NULL)
- private UserDto userDto;
-
- @JsonInclude(value = Include.NON_NULL)
- private Set verificationTokenDtos;
-
-}
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/RoleBasedAuthority.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/RoleBasedAuthority.java
deleted file mode 100644
index 86a306c0f..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/RoleBasedAuthority.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.selimhorri.app.business.user.model;
-
-import lombok.Getter;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@Getter
-public enum RoleBasedAuthority {
-
- ROLE_USER("USER"),
- ROLE_ADMIN("ADMIN");
-
- private final String role;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/UserDetailsImpl.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/UserDetailsImpl.java
deleted file mode 100644
index 72092e137..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/UserDetailsImpl.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.business.user.model;
-
-import java.util.Collection;
-import java.util.List;
-
-import org.springframework.security.core.GrantedAuthority;
-import org.springframework.security.core.authority.SimpleGrantedAuthority;
-import org.springframework.security.core.userdetails.UserDetails;
-
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-public class UserDetailsImpl implements UserDetails {
-
- private static final long serialVersionUID = 1L;
- private final CredentialDto credential;
-
- @Override
- public Collection extends GrantedAuthority> getAuthorities() {
- return List.of(new SimpleGrantedAuthority(this.credential.getRoleBasedAuthority().name()));
- }
-
- @Override
- public String getUsername() {
- return this.credential.getUsername();
- }
-
- @Override
- public String getPassword() {
- return this.credential.getPassword();
- }
-
- @Override
- public boolean isEnabled() {
- return this.credential.getIsEnabled();
- }
-
- @Override
- public boolean isAccountNonExpired() {
- return this.credential.getIsAccountNonExpired();
- }
-
- @Override
- public boolean isAccountNonLocked() {
- return this.credential.getIsAccountNonLocked();
- }
-
- @Override
- public boolean isCredentialsNonExpired() {
- return this.credential.getIsCredentialsNonExpired();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/UserDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/UserDto.java
deleted file mode 100644
index cb2d0077b..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/UserDto.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package com.selimhorri.app.business.user.model;
-
-import java.util.Set;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class UserDto {
-
- private Integer userId;
- private String firstName;
- private String lastName;
- private String imageUrl;
- private String email;
- private String phone;
-
- @JsonInclude(value = Include.NON_NULL)
- private Set addressDtos;
-
- @JsonProperty("credential")
- @JsonInclude(value = Include.NON_NULL)
- private CredentialDto credentialDto;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/VerificationTokenDto.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/VerificationTokenDto.java
deleted file mode 100644
index 15abe3a10..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/VerificationTokenDto.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package com.selimhorri.app.business.user.model;
-
-import java.time.LocalDate;
-
-import org.springframework.format.annotation.DateTimeFormat;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class VerificationTokenDto {
-
- private Integer verificationTokenId;
- private String token;
-
- @JsonFormat(pattern = AppConstant.LOCAL_DATE_FORMAT, shape = Shape.STRING)
- @DateTimeFormat(pattern = AppConstant.LOCAL_DATE_FORMAT)
- private LocalDate expireDate;
-
- @JsonProperty("credential")
- @JsonInclude(value = Include.NON_NULL)
- private CredentialDto credentialDto;
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/AddressUserServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/AddressUserServiceCollectionDtoResponse.java
deleted file mode 100644
index 5d78c26f2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/AddressUserServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.user.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.user.model.AddressDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class AddressUserServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/CredentialUserServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/CredentialUserServiceCollectionDtoResponse.java
deleted file mode 100644
index 86dd278bc..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/CredentialUserServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.user.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.user.model.CredentialDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class CredentialUserServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/UserUserServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/UserUserServiceCollectionDtoResponse.java
deleted file mode 100644
index 3ae5317c3..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/UserUserServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.user.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.user.model.UserDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class UserUserServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/VerificationUserTokenServiceCollectionDtoResponse.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/VerificationUserTokenServiceCollectionDtoResponse.java
deleted file mode 100644
index 4137c0ff6..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/model/response/VerificationUserTokenServiceCollectionDtoResponse.java
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.selimhorri.app.business.user.model.response;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-import com.selimhorri.app.business.user.model.VerificationTokenDto;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public class VerificationUserTokenServiceCollectionDtoResponse implements Serializable {
-
- private static final long serialVersionUID = 1L;
- private Collection collection;
-
-}
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/AddressClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/service/AddressClientService.java
deleted file mode 100644
index 99fab4efe..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/AddressClientService.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package com.selimhorri.app.business.user.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.user.model.AddressDto;
-import com.selimhorri.app.business.user.model.response.AddressUserServiceCollectionDtoResponse;
-
-@FeignClient(name = "USER-SERVICE", contextId = "addressClientService", path = "/user-service/api/address", decode404 = true)
-public interface AddressClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{addressId}")
- ResponseEntity findById(
- @PathVariable("addressId")
- @NotBlank(message = "*Input must not blank!**")
- @Valid final String addressId);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final AddressDto addressDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final AddressDto addressDto);
-
- @PutMapping("/{addressId}")
- ResponseEntity update(
- @PathVariable("addressId")
- @NotBlank(message = "*Input must not blank!**") final String addressId,
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final AddressDto addressDto);
-
- @DeleteMapping("/{addressId}")
- ResponseEntity deleteById(@PathVariable("addressId") @NotBlank(message = "*Input must not blank!**") @Valid final String addressId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/CredentialClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/service/CredentialClientService.java
deleted file mode 100644
index c1217db95..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/CredentialClientService.java
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.selimhorri.app.business.user.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.user.model.CredentialDto;
-import com.selimhorri.app.business.user.model.response.CredentialUserServiceCollectionDtoResponse;
-
-@FeignClient(name = "USER-SERVICE", contextId = "credentialClientService", path = "/user-service/api/credentials", decode404 = true)
-public interface CredentialClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{credentialId}")
- ResponseEntity findById(
- @PathVariable("credentialId")
- @NotBlank(message = "*Input must not blank!**")
- @Valid final String credentialId);
-
- @GetMapping("/username/{username}")
- ResponseEntity findByUsername(
- @PathVariable("username")
- @NotBlank(message = "*Input must not blank!**")
- @Valid final String username);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final CredentialDto credentialDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final CredentialDto credentialDto);
-
- @PutMapping("/{credentialId}")
- ResponseEntity update(
- @PathVariable("credentialId")
- @NotBlank(message = "*Input must not blank!**") final String credentialId,
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final CredentialDto credentialDto);
-
- @DeleteMapping("/{credentialId}")
- ResponseEntity deleteById(@PathVariable("credentialId") @NotBlank(message = "*Input must not blank!**") @Valid final String credentialId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/UserClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/service/UserClientService.java
deleted file mode 100644
index 17983a120..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/UserClientService.java
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.selimhorri.app.business.user.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.user.model.UserDto;
-import com.selimhorri.app.business.user.model.response.UserUserServiceCollectionDtoResponse;
-
-@FeignClient(name = "USER-SERVICE", contextId = "userClientService", path = "/user-service/api/users", decode404 = true)
-public interface UserClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{userId}")
- ResponseEntity findById(
- @PathVariable("userId")
- @NotBlank(message = "*Input must not blank!**")
- @Valid final String userId);
-
- @GetMapping("/username/{username}")
- ResponseEntity findByUsername(
- @PathVariable("username")
- @NotBlank(message = "*Input must not blank!**")
- @Valid final String username);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final UserDto userDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final UserDto userDto);
-
- @PutMapping("/{userId}")
- ResponseEntity update(
- @PathVariable("userId")
- @NotBlank(message = "*Input must not blank!**") final String userId,
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final UserDto userDto);
-
- @DeleteMapping("/{userId}")
- ResponseEntity deleteById(@PathVariable("userId") @NotBlank(message = "*Input must not blank!**") @Valid final String userId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/VerificationTokenClientService.java b/proxy-client/src/main/java/com/selimhorri/app/business/user/service/VerificationTokenClientService.java
deleted file mode 100644
index 2cc383d19..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/business/user/service/VerificationTokenClientService.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package com.selimhorri.app.business.user.service;
-
-import javax.validation.Valid;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import com.selimhorri.app.business.user.model.VerificationTokenDto;
-import com.selimhorri.app.business.user.model.response.VerificationUserTokenServiceCollectionDtoResponse;
-
-@FeignClient(name = "USER-SERVICE", contextId = "verificationTokenClientService", path = "/user-service/api/verificationTokens", decode404 = true)
-public interface VerificationTokenClientService {
-
- @GetMapping
- ResponseEntity findAll();
-
- @GetMapping("/{verificationTokenId}")
- ResponseEntity findById(
- @PathVariable("verificationTokenId")
- @NotBlank(message = "*Input must not blank!**")
- @Valid final String verificationTokenId);
-
- @PostMapping
- ResponseEntity save(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final VerificationTokenDto verificationTokenDto);
-
- @PutMapping
- ResponseEntity update(
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final VerificationTokenDto verificationTokenDto);
-
- @PutMapping("/{verificationTokenId}")
- ResponseEntity update(
- @PathVariable("verificationTokenId")
- @NotBlank(message = "*Input must not blank!**") final String verificationTokenId,
- @RequestBody
- @NotNull(message = "*Input must not NULL!**")
- @Valid final VerificationTokenDto verificationTokenDto);
-
- @DeleteMapping("/{verificationTokenId}")
- ResponseEntity deleteById(@PathVariable("verificationTokenId") @NotBlank(message = "*Input must not blank!**") @Valid final String verificationTokenId);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/config/encoder/EncoderConfig.java b/proxy-client/src/main/java/com/selimhorri/app/config/encoder/EncoderConfig.java
deleted file mode 100644
index ad600fe42..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/config/encoder/EncoderConfig.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.selimhorri.app.config.encoder;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import org.springframework.security.crypto.password.PasswordEncoder;
-
-@Configuration
-public class EncoderConfig {
-
- @Bean
- public PasswordEncoder getPasswordEncoder() {
- return new BCryptPasswordEncoder();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/config/filter/JwtRequestFilter.java b/proxy-client/src/main/java/com/selimhorri/app/config/filter/JwtRequestFilter.java
deleted file mode 100644
index 06be12562..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/config/filter/JwtRequestFilter.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package com.selimhorri.app.config.filter;
-
-import java.io.IOException;
-
-import javax.servlet.FilterChain;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
-import org.springframework.security.core.context.SecurityContextHolder;
-import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.security.core.userdetails.UserDetailsService;
-import org.springframework.security.web.authentication.WebAuthenticationDetailsSource;
-import org.springframework.stereotype.Component;
-import org.springframework.web.filter.OncePerRequestFilter;
-
-import com.selimhorri.app.jwt.service.JwtService;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Component
-@Slf4j
-@RequiredArgsConstructor
-public class JwtRequestFilter extends OncePerRequestFilter {
-
- private final UserDetailsService userDetailsService;
- private final JwtService jwtService;
-
- @Override
- protected void doFilterInternal(final HttpServletRequest request, final HttpServletResponse response, final FilterChain filterChain)
- throws ServletException, IOException {
-
- log.info("**JwtRequestFilter, once per request, validating and extracting token*\n");
-
- final var authorizationHeader = request.getHeader("Authorization");
-
- String username = null;
- String jwt = null;
-
- if ( authorizationHeader != null && authorizationHeader.startsWith("Bearer ") ) {
- jwt = authorizationHeader.substring(7);
- username = jwtService.extractUsername(jwt);
- }
-
- if (username != null && SecurityContextHolder.getContext().getAuthentication() == null) {
-
- final UserDetails userDetails = this.userDetailsService.loadUserByUsername(username);
-
- if (this.jwtService.validateToken(jwt, userDetails)) {
- final UsernamePasswordAuthenticationToken usernamePasswordAuthenticationToken =
- new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());
- usernamePasswordAuthenticationToken.setDetails(new WebAuthenticationDetailsSource().buildDetails(request));
- SecurityContextHolder.getContext().setAuthentication(usernamePasswordAuthenticationToken);
- }
-
- }
-
- filterChain.doFilter(request, response);
- log.info("**Jwt request filtered!*\n");
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/config/template/TemplateConfig.java b/proxy-client/src/main/java/com/selimhorri/app/config/template/TemplateConfig.java
deleted file mode 100644
index 1ad0ee4a0..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/config/template/TemplateConfig.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.selimhorri.app.config.template;
-
-import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.client.RestTemplate;
-
-@Configuration
-public class TemplateConfig {
-
- @LoadBalanced
- @Bean
- public RestTemplate restTemplateBean() {
- return new RestTemplate();
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/constant/AppConstant.java b/proxy-client/src/main/java/com/selimhorri/app/constant/AppConstant.java
deleted file mode 100644
index 40f49bbc3..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/constant/AppConstant.java
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.selimhorri.app.constant;
-
-import lombok.AccessLevel;
-import lombok.NoArgsConstructor;
-
-@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public abstract class AppConstant {
-
- public static final String LOCAL_DATE_FORMAT = "dd-MM-yyyy";
- public static final String LOCAL_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String ZONED_DATE_TIME_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
- public static final String INSTANT_FORMAT = "dd-MM-yyyy__HH:mm:ss:SSSSSS";
-
- @NoArgsConstructor(access = AccessLevel.PRIVATE)
- public abstract class DiscoveredDomainsApi {
-
- public static final String USER_SERVICE_HOST = "http://USER-SERVICE/user-service";
- public static final String USER_SERVICE_API_URL = "http://USER-SERVICE/user-service/api/users";
-
- public static final String PRODUCT_SERVICE_HOST = "http://PRODUCT-SERVICE/product-service";
- public static final String PRODUCT_SERVICE_API_URL = "http://PRODUCT-SERVICE/product-service/api/products";
-
- public static final String ORDER_SERVICE_HOST = "http://ORDER-SERVICE/order-service";
- public static final String ORDER_SERVICE_API_URL = "http://ORDER-SERVICE/order-service/api/orders";
-
- public static final String FAVOURITE_SERVICE_HOST = "http://FAVOURITE-SERVICE/favourite-service";
- public static final String FAVOURITE_SERVICE_API_URL = "http://FAVOURITE-SERVICE/favourite-service/api/favourites";
-
- public static final String PAYMENT_SERVICE_HOST = "http://PAYMENT-SERVICE/payment-service";
- public static final String PAYMENT_SERVICE_API_URL = "http://PAYMENT-SERVICE/payment-service/api/payments";
-
- public static final String SHIPPING_SERVICE_HOST = "http://SHIPPING-SERVICE/shipping-service";
- public static final String SHIPPING_SERVICE_API_URL = "http://SHIPPING-SERVICE/shipping-service/api/shippings";
-
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java b/proxy-client/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
deleted file mode 100644
index 5bc0cb0a9..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/ApiExceptionHandler.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package com.selimhorri.app.exception;
-
-import java.time.ZoneId;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-import org.springframework.http.converter.HttpMessageNotReadableException;
-import org.springframework.validation.BindException;
-import org.springframework.web.bind.MethodArgumentNotValidException;
-import org.springframework.web.bind.annotation.ControllerAdvice;
-import org.springframework.web.bind.annotation.ExceptionHandler;
-
-import com.selimhorri.app.exception.payload.ExceptionMsg;
-import com.selimhorri.app.exception.wrapper.CredentialNotFoundException;
-import com.selimhorri.app.exception.wrapper.FavouriteNotFoundException;
-import com.selimhorri.app.exception.wrapper.UserObjectNotFoundException;
-import com.selimhorri.app.exception.wrapper.VerificationTokenNotFoundException;
-
-import feign.FeignException;
-import feign.FeignException.FeignClientException;
-import feign.FeignException.FeignServerException;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@ControllerAdvice
-@Slf4j
-@RequiredArgsConstructor
-public class ApiExceptionHandler {
-
- @ExceptionHandler(value = {
- FeignClientException.class,
- FeignServerException.class,
- FeignException.class
- })
- public ResponseEntity handleProxyException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle feign proxy exception*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg(e.contentUTF8())
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
- @ExceptionHandler(value = {
- MethodArgumentNotValidException.class,
- HttpMessageNotReadableException.class
- })
- public ResponseEntity handleValidationException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle validation exception*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg(e.getBindingResult().getFieldError().getDefaultMessage())
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
- @ExceptionHandler(value = {
- UserObjectNotFoundException.class,
- CredentialNotFoundException.class,
- VerificationTokenNotFoundException.class,
- FavouriteNotFoundException.class,
- IllegalStateException.class,
- })
- public ResponseEntity handleApiRequestException(final T e) {
-
- log.info("**ApiExceptionHandler controller, handle API request*\n");
- final var badRequest = HttpStatus.BAD_REQUEST;
-
- return new ResponseEntity<>(
- ExceptionMsg.builder()
- .msg(e.getMessage())
- .httpStatus(badRequest)
- .timestamp(ZonedDateTime
- .now(ZoneId.systemDefault()))
- .build(), badRequest);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java b/proxy-client/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
deleted file mode 100644
index 833c9cc32..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/payload/ExceptionMsg.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package com.selimhorri.app.exception.payload;
-
-import java.io.Serializable;
-import java.time.ZonedDateTime;
-
-import org.springframework.http.HttpStatus;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.annotation.JsonFormat.Shape;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.annotation.JsonInclude.Include;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.datatype.jsr310.ser.ZonedDateTimeSerializer;
-import com.selimhorri.app.constant.AppConstant;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.RequiredArgsConstructor;
-
-@RequiredArgsConstructor
-@AllArgsConstructor
-@Data
-@Builder
-public final class ExceptionMsg implements Serializable {
-
- private static final long serialVersionUID = 1L;
-
- @JsonSerialize(using = ZonedDateTimeSerializer.class)
- @JsonFormat(shape = Shape.STRING, pattern = AppConstant.ZONED_DATE_TIME_FORMAT)
- private final ZonedDateTime timestamp;
-
- @JsonInclude(value = Include.NON_NULL)
- private Throwable throwable;
-
- private final HttpStatus httpStatus;
-
- private final String msg;
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/CredentialNotFoundException.java b/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/CredentialNotFoundException.java
deleted file mode 100644
index 74095fbc2..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/CredentialNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class CredentialNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public CredentialNotFoundException() {
- super();
- }
-
- public CredentialNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public CredentialNotFoundException(String message) {
- super(message);
- }
-
- public CredentialNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/FavouriteNotFoundException.java b/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/FavouriteNotFoundException.java
deleted file mode 100644
index d7f9a6629..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/FavouriteNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class FavouriteNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public FavouriteNotFoundException() {
- super();
- }
-
- public FavouriteNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public FavouriteNotFoundException(String message) {
- super(message);
- }
-
- public FavouriteNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/IllegalAuthenticationCredentialsException.java b/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/IllegalAuthenticationCredentialsException.java
deleted file mode 100644
index 42a41f65a..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/IllegalAuthenticationCredentialsException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class IllegalAuthenticationCredentialsException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public IllegalAuthenticationCredentialsException() {
- super();
- }
-
- public IllegalAuthenticationCredentialsException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public IllegalAuthenticationCredentialsException(String message) {
- super(message);
- }
-
- public IllegalAuthenticationCredentialsException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/UserObjectNotFoundException.java b/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/UserObjectNotFoundException.java
deleted file mode 100644
index 35505a066..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/UserObjectNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class UserObjectNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public UserObjectNotFoundException() {
- super();
- }
-
- public UserObjectNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public UserObjectNotFoundException(String message) {
- super(message);
- }
-
- public UserObjectNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/VerificationTokenNotFoundException.java b/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/VerificationTokenNotFoundException.java
deleted file mode 100644
index 869117fa3..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/exception/wrapper/VerificationTokenNotFoundException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package com.selimhorri.app.exception.wrapper;
-
-public class VerificationTokenNotFoundException extends RuntimeException {
-
- private static final long serialVersionUID = 1L;
-
- public VerificationTokenNotFoundException() {
- super();
- }
-
- public VerificationTokenNotFoundException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public VerificationTokenNotFoundException(String message) {
- super(message);
- }
-
- public VerificationTokenNotFoundException(Throwable cause) {
- super(cause);
- }
-
-
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/jwt/service/JwtService.java b/proxy-client/src/main/java/com/selimhorri/app/jwt/service/JwtService.java
deleted file mode 100644
index 4a64cef3f..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/jwt/service/JwtService.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.selimhorri.app.jwt.service;
-
-import java.util.Date;
-import java.util.function.Function;
-
-import org.springframework.security.core.userdetails.UserDetails;
-
-import io.jsonwebtoken.Claims;
-
-public interface JwtService {
-
- String extractUsername(final String token);
- Date extractExpiration(final String token);
- T extractClaims(final String token, final Function claimsResolver);
- String generateToken(final UserDetails userDetails);
- Boolean validateToken(final String token, final UserDetails userDetails);
-
-}
-
-
-
-
-
-
-
-
-
-
diff --git a/proxy-client/src/main/java/com/selimhorri/app/jwt/service/impl/JwtServiceImpl.java b/proxy-client/src/main/java/com/selimhorri/app/jwt/service/impl/JwtServiceImpl.java
deleted file mode 100644
index e98253c85..000000000
--- a/proxy-client/src/main/java/com/selimhorri/app/jwt/service/impl/JwtServiceImpl.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.selimhorri.app.jwt.service.impl;
-
-import java.util.Date;
-import java.util.function.Function;
-
-import org.springframework.security.core.userdetails.UserDetails;
-import org.springframework.stereotype.Service;
-
-import com.selimhorri.app.jwt.service.JwtService;
-import com.selimhorri.app.jwt.util.JwtUtil;
-
-import io.jsonwebtoken.Claims;
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-
-@Service
-@Slf4j
-@RequiredArgsConstructor
-public class JwtServiceImpl implements JwtService {
-
- private final JwtUtil jwtUtil;
-
- @Override
- public String extractUsername(final String token) {
- log.info("**String, jwt service extract username from given token!*");
- return this.jwtUtil.extractUsername(token);
- }
-
- @Override
- public Date extractExpiration(final String token) {
- log.info("**Date, jwt service extract expiration from given token!*");
- return this.jwtUtil.extractExpiration(token);
- }
-
- @Override
- public