Skip to content

cthing/cthing-jasypt

Repository files navigation

C Thing Software cthing-jasypt

CI Maven Central Version javadoc

Provides preconfigured Jasypt encryptors.

Usage

The library is available from Maven Central using the following Maven dependency:

<dependency>
  <groupId>org.cthing</groupId>
  <artifactId>cthing-jasypt</artifactId>
  <version>1.0.0</version>
</dependency>

or the following Gradle dependency:

implementation("org.cthing:cthing-jasypt:1.0.0")

Standalone Usage

The CthingStringEncryptor provides a preconfigured Jasypt encryptor that can be used to encrypt and descrypt strings. An instance of the encryptor can be reused.

CthingStringEncryptor encryptor = new CthingStringEncryptor();
encryptor.setPassword("abcdef");
String encrypted = encryptor.encrypt("Hello World!");

Building

The library is compiled for Java 17. If a Java 17 toolchain is not available, one will be downloaded.

Gradle is used to build the library:

./gradlew build

The Javadoc for the library can be generated by running:

./gradlew javadoc

Releasing

This project is released on the Maven Central repository. Perform the following steps to create a release.

  • Commit all changes for the release
  • In the build.gradle.kts file, edit the ProjectVersion object
    • Set the version for the release. The project follows semantic versioning.
    • Set the build type to BuildType.release
  • Commit the changes
  • Wait until CI builds the release candidate
  • Run the command mkrelease cthing-jasypt <version>
  • In a browser go to the Maven Central Repository
  • Log in
  • Select Publish from the menubar
  • Press Publish Component
  • Enter a name for the deployment
  • Choose the file cthing-jasypt-bundle-<version>.zip
  • Press Publish Component
  • Refresh the page until the deployment has been validated
  • Press Publish
  • Refresh the page until the status is Published
  • Log out
  • Delete the file cthing-jasypt-bundle-<version>.zip
  • In a browser, go to the project on GitHub
  • Generate a release with the tag <version>
  • In the build.gradle.kts file, edit the ProjectVersion object
    • Increment the version patch number
    • Set the build type to BuildType.snapshot
  • Update the CHANGELOG.md with the changes in the release and prepare for next release changes
  • Update the Usage section in the README.md with the latest artifact release version
  • Commit these changes