Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: ozimov/spring-boot-email-tools
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.6.3
Choose a base ref
...
head repository: ozimov/spring-boot-email-tools
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
  • 10 commits
  • 74 files changed
  • 5 contributors

Commits on Aug 13, 2017

  1. Copy the full SHA
    15bad6c View commit details
  2. Updated pom for examples

    robertotru committed Aug 13, 2017
    Copy the full SHA
    b885d4b View commit details
  3. Copy the full SHA
    90a6948 View commit details

Commits on Nov 8, 2018

  1. fix simple typo

    lpmi-13 committed Nov 8, 2018
    Copy the full SHA
    0999dff View commit details

Commits on Nov 9, 2018

  1. Merge pull request #78 from lpmi-13/typofix

    fix simple typo
    robertotru authored Nov 9, 2018
    Copy the full SHA
    8353834 View commit details

Commits on Nov 25, 2023

  1. Copy the full SHA
    05dd624 View commit details

Commits on Dec 2, 2023

  1. Merge pull request #85 from joanjanku2000/feature/upgrade-to-spring-b…

    …oot-3
    
    Upgrade to spring boot 3
    robertotru authored Dec 2, 2023
    Copy the full SHA
    bb379dc View commit details

Commits on Dec 4, 2023

  1. Code: Preparing release 1.0.0. JDK compatibility set to 17

    Roberto Trunfio authored and Roberto Trunfio committed Dec 4, 2023
    Copy the full SHA
    3d9ca24 View commit details
  2. Code: release 1.0.0

    Roberto Trunfio authored and Roberto Trunfio committed Dec 4, 2023
    Copy the full SHA
    8f6e189 View commit details
  3. Code: preparing dev for 1.0.1

    Roberto Trunfio authored and Roberto Trunfio committed Dec 4, 2023
    Copy the full SHA
    5e8388e View commit details
Showing with 351 additions and 308 deletions.
  1. +88 −0 .github/workflows/maven.yml
  2. +6 −0 CHANGELOG.md
  3. +10 −10 README.md
  4. +3 −3 examples/email-logging-example/pom.xml
  5. +1 −1 examples/email-logging-example/src/main/java/com/test/PlainTextEmailWithPrettyLogsApplication.java
  6. +1 −1 examples/email-logging-example/src/main/java/com/test/TestService.java
  7. +3 −3 examples/email-service-autowiring-example/pom.xml
  8. +4 −4 examples/scheduling-and-persistence-example/pom.xml
  9. +1 −1 ...cheduling-and-persistence-example/src/main/java/com/test/SchedulingAndPersistenceApplication.java
  10. +1 −1 examples/scheduling-and-persistence-example/src/main/java/com/test/TestService.java
  11. +3 −3 examples/scheduling-mime-email-with-freemarker-example/pom.xml
  12. +1 −1 ...-with-freemarker-example/src/main/java/com/test/MimeEmailWithFreemarkerSchedulingApplication.java
  13. +1 −1 examples/scheduling-mime-email-with-freemarker-example/src/main/java/com/test/TestService.java
  14. +3 −3 examples/scheduling-plain-text-email-example/pom.xml
  15. +1 −1 ...heduling-plain-text-email-example/src/main/java/com/test/PlainTextEmailSchedulingApplication.java
  16. +1 −1 examples/scheduling-plain-text-email-example/src/main/java/com/test/TestService.java
  17. +3 −3 examples/sending-mime-email-with-freemarker-example/pom.xml
  18. +1 −1 ...mime-email-with-freemarker-example/src/main/java/com/test/MimeEmailWithFreemarkerApplication.java
  19. +1 −1 examples/sending-mime-email-with-freemarker-example/src/main/java/com/test/TestService.java
  20. +3 −3 examples/sending-mime-email-with-mustache-example/pom.xml
  21. +1 −1 ...ing-mime-email-with-mustache-example/src/main/java/com/test/MimeEmailWithMustacheApplication.java
  22. +1 −1 examples/sending-mime-email-with-mustache-example/src/main/java/com/test/TestService.java
  23. +5 −5 examples/sending-mime-email-with-pebble-example/pom.xml
  24. +1 −1 ...sending-mime-email-with-pebble-example/src/main/java/com/test/MimeEmailWithPebbleApplication.java
  25. +1 −1 examples/sending-mime-email-with-pebble-example/src/main/java/com/test/TestService.java
  26. +3 −3 examples/sending-mime-email-with-thymeleaf-example/pom.xml
  27. +1 −1 ...g-mime-email-with-thymeleaf-example/src/main/java/com/test/MimeEmailWithThymeleafApplication.java
  28. +1 −1 examples/sending-mime-email-with-thymeleaf-example/src/main/java/com/test/TestService.java
  29. +3 −3 examples/sending-plain-text-email-example/pom.xml
  30. +1 −1 examples/sending-plain-text-email-example/src/main/java/com/test/PlainTextEmailApplication.java
  31. +1 −1 examples/sending-plain-text-email-example/src/main/java/com/test/TestService.java
  32. +89 −89 pom.xml
  33. +0 −58 release.sh
  34. +12 −0 settings.xml
  35. +6 −7 spring-boot-email-core/pom.xml
  36. +1 −1 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/configuration/EmailEmbeddedRedis.java
  37. +3 −3 ...l-core/src/main/java/it/ozimov/springboot/mail/configuration/EmailEmbeddedRedisConfiguration.java
  38. +1 −1 ...-email-core/src/main/java/it/ozimov/springboot/mail/configuration/EmailRendererConfiguration.java
  39. +1 −1 ...ot-email-core/src/main/java/it/ozimov/springboot/mail/configuration/EmailSchedulerProperties.java
  40. +1 −1 ...l-core/src/main/java/it/ozimov/springboot/mail/logging/defaultimpl/CustomizableEmailRenderer.java
  41. +1 −1 ...boot-email-core/src/main/java/it/ozimov/springboot/mail/logging/defaultimpl/EmailFieldFormat.java
  42. +1 −1 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/model/Email.java
  43. +1 −1 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/model/defaultimpl/DefaultEmail.java
  44. +1 −1 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/service/EmailService.java
  45. +10 −9 ...t-email-core/src/main/java/it/ozimov/springboot/mail/service/defaultimpl/DefaultEmailService.java
  46. +1 −1 ...c/main/java/it/ozimov/springboot/mail/service/defaultimpl/PriorityQueueEmailSchedulerService.java
  47. +3 −3 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/utils/EmailToMimeMessage.java
  48. +2 −2 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/utils/MimeMessageHelperExt.java
  49. +1 −1 spring-boot-email-core/src/main/java/it/ozimov/springboot/mail/utils/TikaDetector.java
  50. +3 −3 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/BaseRedisTest.java
  51. +1 −2 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/PortUtils.java
  52. +2 −2 ...il-core/src/test/java/it/ozimov/springboot/mail/configuration/EmailRendererConfigurationTest.java
  53. +1 −1 ...re/src/test/java/it/ozimov/springboot/mail/logging/defaultimpl/CustomizableEmailRendererTest.java
  54. +1 −1 ...-email-core/src/test/java/it/ozimov/springboot/mail/logging/defaultimpl/EmailFieldFormatTest.java
  55. +3 −3 ...re/src/test/java/it/ozimov/springboot/mail/logging/defaultimpl/SanitizedEmailLogRendererTest.java
  56. +2 −2 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/model/EmailSchedulingDataTest.java
  57. +1 −1 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/model/EmailTest.java
  58. +1 −1 ...g-boot-email-core/src/test/java/it/ozimov/springboot/mail/model/defaultimpl/DefaultEmailTest.java
  59. +1 −1 ...mail-core/src/test/java/it/ozimov/springboot/mail/model/defaultimpl/DefaultInlinePictureTest.java
  60. +3 −3 .../test/java/it/ozimov/springboot/mail/service/defaultimpl/DefaultEmailServiceContextBasedTest.java
  61. +7 −7 ...ail-core/src/test/java/it/ozimov/springboot/mail/service/defaultimpl/DefaultEmailServiceTest.java
  62. +1 −1 ...mov/springboot/mail/service/defaultimpl/PriorityQueueEmailSchedulerConditionalAutowiringTest.java
  63. +2 −2 ...ozimov/springboot/mail/service/defaultimpl/PriorityQueueEmailSchedulerServicePersistenceTest.java
  64. +2 −2 ...st/java/it/ozimov/springboot/mail/service/defaultimpl/PriorityQueueEmailSchedulerServiceTest.java
  65. +6 −6 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/utils/EmailToMimeMessageTest.java
  66. +6 −6 ...g-boot-email-core/src/test/java/it/ozimov/springboot/mail/utils/EmailToMimeMessageValidators.java
  67. +1 −1 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/utils/MimeMessageHelperExtTest.java
  68. +1 −1 spring-boot-email-core/src/test/java/it/ozimov/springboot/mail/utils/TimeUtilsTest.java
  69. +2 −3 spring-boot-email-template-engines/pom.xml
  70. +3 −4 spring-boot-email-template-engines/spring-boot-freemarker-email/pom.xml
  71. +3 −4 spring-boot-email-template-engines/spring-boot-mustache-email/pom.xml
  72. +3 −4 spring-boot-email-template-engines/spring-boot-pebble-email/pom.xml
  73. +3 −4 spring-boot-email-template-engines/spring-boot-thymeleaf-email/pom.xml
  74. +2 −1 ...af-email/src/main/java/it/ozimov/springboot/mail/templating/service/ThymeleafTemplateService.java
88 changes: 88 additions & 0 deletions .github/workflows/maven.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# This workflow will build a Java project with Maven

name: Java CI with Maven

on:
push:
branches: [ main ]
workflow_dispatch:
inputs:
releaseVersion:
description: "Define the release version"
required: true
default: ""
developmentVersion:
description: "Define the snapshot version"
required: true
default: ""

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Maven Central Repository
uses: actions/setup-java@v3
with:
java-version: 17.0.9
distribution: 'temurin'
java-package: 'jdk'
cache: 'maven'
server-id: ossrh
- name: Configure Git User
run: |
git config user.email "actions@github.com"
git config user.name "GitHub Actions"
echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
- name: Import GPG Key
uses: crazy-max/ghaction-import-gpg@v5.0.0
with:
gpg_private_key: ${{ secrets.MAVEN_GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.MAVEN_GPG_PASSPHRASE }}
- name: Verify Whether a Release is Ready
id: release
shell: bash
run: |
if [ "${{ github.event.inputs.releaseVersion }}" != "" ] && [ "${{ github.event.inputs.developmentVersion }}" != "" ]; then
echo "auto_release=true" >> $GITHUB_ENV
else
echo "auto_release=false" >> $GITHUB_ENV
fi
- name: Release With Maven
run: |
mvn -B -U \
-Pci-cd \
release:prepare \
release:perform \
javadoc:jar \
source:jar \
-s settings.xml \
-Dgpg.passphrase=${{ secrets.MAVEN_GPG_PASSPHRASE }} \
-DreleaseVersion=${{ github.event.inputs.releaseVersion }} \
-DdevelopmentVersion=${{ github.event.inputs.developmentVersion }} \
deploy
env:
MAVEN_USERNAME: ${{ secrets.OSSRH_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.OSSRH_TOKEN }}
AUTO_RELEASE_AFTER_CLOSE: ${{ env.auto_release }}
- name: Artifact Name
shell: bash
run: |
echo "artifact_name=$(mvn org.apache.maven.plugins:maven-help-plugin:3.2.0:evaluate -Dexpression=project.artifactId -q -DforceStdout)" >> "$GITHUB_ENV"
- name: Define Jar Name
shell: bash
run: |
echo "{{ env.artifact_name }}"
ls -al ./target/
mv ./target/*.*:${{ env.artifact_name }}.jar ./target/${{ env.artifact_name }}.jar
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: ${{ env.artifact_name }}-${{ env.sha_short }}
path: ./target/${{ env.artifact_name }}.jar
- name: Workflow Release Notes
uses: peter-evans/repository-dispatch@v2
if: ${{ github.event.inputs.releaseVersion }} != "" && ${{ github.event.inputs.developmentVersion }} != ""
with:
event-type: release-notes
client-payload: '{"auto_release": "${{ env.auto_release }}", "artifact": "${{ env.artifact_name }}-${{ env.sha_short }}"}'
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -10,6 +10,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
## [Unreleased]


## [1.0.0] - 2023-12-02

### Changed
- Using Spring Boot _3.2.0_.
- Compiled for JDK17.

## [0.6.3] - 2017-08-13

### Changed
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@ a template engine to generate dynamic content.

**Source Website:** *[github.com/ozimov/spring-boot-email-tools](http://github.com/ozimov/spring-boot-email-tools/)*<br />

**Latest Release:** *0.6.3* <br />
**Latest Release:** *1.0.0* <br />
**Latest Artifacts:** *it.ozimov:spring-boot-email-core*, *it.ozimov:spring-boot-freemarker-email*,
*it.ozimov:spring-boot-mustache-email*, *it.ozimov:spring-boot-pebble-email*, *it.ozimov:spring-boot-thymeleaf-email* <br />
**Continuous Integration:** <br />
@@ -29,13 +29,13 @@ module that is shipped with the core module. The standard naming for the templat
`it.ozimov:spring-boot-{template_engine_name}-email` (where `{template_engine_name}` is for instance `pebble`).

## Dependency
Latest release is **`0.6.3`**. To use the core module, you can import the following dependency in Maven
Latest release is **`1.0.0`**. To use the core module, you can import the following dependency in Maven

```xml
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-email-core</artifactId>
<version>0.6.3</version>
<version>1.0.0</version>
</dependency>
```

@@ -45,7 +45,7 @@ To embed the module that includes the _Freemarker_ template engine, you can use
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-freemarker-email</artifactId>
<version>0.6.3</version>
<version>1.0.0</version>
</dependency>
```

@@ -55,7 +55,7 @@ for _Mustache_:
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-mustache-email</artifactId>
<version>0.6.3</version>
<version>1.0.0</version>
</dependency>
```

@@ -65,7 +65,7 @@ for _Pebble_:
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-pebble-email</artifactId>
<version>0.6.3</version>
<version>1.0.0</version>
</dependency>
```

@@ -75,7 +75,7 @@ and for _Thymeleaf_:
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-thymeleaf-email</artifactId>
<version>0.6.3</version>
<version>1.0.0</version>
</dependency>
```

@@ -139,7 +139,7 @@ public void sendEmailWithoutTemplating(){

The previous code will send a plain text message. To obtain some more dynamic fancy emails, you have two options:
_i)_ the former and easier-to-use is to use a templatefull module (e.g. based on Freemarker);
_ii)_ the latter (which requires some effort on your side) needs an an implementation of the
_ii)_ the latter (which requires some effort on your side) needs an implementation of the
interface **`it.ozimov.springboot.templating.mail.service.TemplateService`**.

The aforementioned interface requires a component that implements the following method
@@ -256,7 +256,7 @@ This is required to set the a proper content-id.

## Email scheduling

The library supports email scheduling, but since version _0.6.3_ the scheduler is disabled by default. To enable
The library supports email scheduling, but since version _1.0.0_ the scheduler is disabled by default. To enable
email scheduling, the following property has to be provided:

```properties
@@ -334,7 +334,7 @@ public void MyEmailWithTemplateSenderService {
final InlinePicture inlinePicture = DefaultInlinePicture.builder()
.file(imageFile)
.imageType(ImageType.JPG)
.templateName("my_image.jpg").build());
.templateName("my_image.jpg").build();
final OffsetDateTime scheduledDateTime = OffsetDateTime.now().plusDays(1);
final int priorityLevel = 1;

6 changes: 3 additions & 3 deletions examples/email-logging-example/pom.xml
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@

<groupId>it.ozimov</groupId>
<artifactId>email-logging-example</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
<packaging>jar</packaging>

<name>Spring Boot Email - Email Logging Example</name>
@@ -17,7 +17,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<version>3.2.0</version>
</parent>

<dependencies>
@@ -28,7 +28,7 @@
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-email-core</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
</dependency>
</dependencies>

Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.support.AbstractApplicationContext;

import javax.annotation.PostConstruct;
import jakarta.annotation.PostConstruct;
import java.io.UnsupportedEncodingException;
import java.util.Timer;
import java.util.TimerTask;
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import javax.mail.internet.InternetAddress;
import jakarta.mail.internet.InternetAddress;
import java.io.UnsupportedEncodingException;

import static com.google.common.collect.Lists.newArrayList;
6 changes: 3 additions & 3 deletions examples/email-service-autowiring-example/pom.xml
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@

<groupId>it.ozimov</groupId>
<artifactId>email-service-autowiring-example</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
<packaging>jar</packaging>

<name>Spring Boot Email - EmailService Autowiring Example</name>
@@ -16,7 +16,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<version>3.2.0</version>
</parent>

<dependencies>
@@ -27,7 +27,7 @@
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-email-core</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
</dependency>
</dependencies>

8 changes: 4 additions & 4 deletions examples/scheduling-and-persistence-example/pom.xml
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@

<groupId>it.ozimov</groupId>
<artifactId>scheduling-and-persistence-example</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
<packaging>jar</packaging>

<name>Spring Boot Email - Scheduling and Persistence Example</name>
@@ -18,7 +18,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<version>3.2.0</version>
</parent>

<dependencies>
@@ -29,12 +29,12 @@
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-email-core</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-freemarker-email</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
</dependency>
</dependencies>

Original file line number Diff line number Diff line change
@@ -12,7 +12,7 @@
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.EnableAsync;

import javax.annotation.PostConstruct;
import jakarta.annotation.PostConstruct;
import java.io.UnsupportedEncodingException;
import java.util.Timer;
import java.util.TimerTask;
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;

import javax.mail.internet.InternetAddress;
import jakarta.mail.internet.InternetAddress;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.net.URISyntaxException;
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@

<groupId>it.ozimov</groupId>
<artifactId>scheduling-mime-email-with-freemarker-example</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
<packaging>jar</packaging>

<name>Spring Boot Email - Scheduling Mime Email with Freemarker Example</name>
@@ -18,7 +18,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<version>3.2.0</version>
</parent>

<dependencies>
@@ -29,7 +29,7 @@
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-freemarker-email</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
</dependency>
</dependencies>

Original file line number Diff line number Diff line change
@@ -10,7 +10,7 @@
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ConfigurableApplicationContext;

import javax.annotation.PostConstruct;
import jakarta.annotation.PostConstruct;
import java.io.UnsupportedEncodingException;
import java.net.URISyntaxException;
import java.util.Timer;
Original file line number Diff line number Diff line change
@@ -15,7 +15,7 @@
import org.springframework.http.MediaType;
import org.springframework.stereotype.Service;

import javax.mail.internet.InternetAddress;
import jakarta.mail.internet.InternetAddress;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.net.URISyntaxException;
6 changes: 3 additions & 3 deletions examples/scheduling-plain-text-email-example/pom.xml
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@

<groupId>it.ozimov</groupId>
<artifactId>scheduling-plain-text-email-example</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
<packaging>jar</packaging>

<name>Spring Boot Email - Scheduling Plain Text Email Example</name>
@@ -18,7 +18,7 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<version>3.2.0</version>
</parent>

<dependencies>
@@ -29,7 +29,7 @@
<dependency>
<groupId>it.ozimov</groupId>
<artifactId>spring-boot-email-core</artifactId>
<version>0.6.2</version>
<version>1.0.0</version>
</dependency>
</dependencies>

Original file line number Diff line number Diff line change
@@ -9,7 +9,7 @@
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.support.AbstractApplicationContext;

import javax.annotation.PostConstruct;
import jakarta.annotation.PostConstruct;
import java.io.UnsupportedEncodingException;
import java.util.Timer;
import java.util.TimerTask;
Loading