Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/master-2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
strategy:
fail-fast: false
matrix:
java: ['11', '17', '21', '25']
java: ['17', '21', '25']
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
strategy:
fail-fast: false
matrix:
java: ['11', '17', '21', '25']
java: ['17', '21', '25']
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}

Expand Down Expand Up @@ -47,7 +47,7 @@ jobs:
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '11'
java-version: '17'
server-id: central
server-username: CENTRAL_USERNAME
server-password: CENTRAL_TOKEN
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ A Java SDK for Switcher API
<div align="center">

[![Master CI](https://github.com/switcherapi/switcher-client-java/actions/workflows/master-2.yml/badge.svg)](https://github.com/switcherapi/switcher-client-java/actions/workflows/master-2.yml)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=switcherapi_switcher-client&metric=alert_status)](https://sonarcloud.io/dashboard?id=switcherapi_switcher-client)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=switcherapi_switcher-client&branch=master-2&&metric=alert_status)](https://sonarcloud.io/summary/overall?id=switcherapi_switcher-client&branch=master-2)
[![Known Vulnerabilities](https://snyk.io/test/github/switcherapi/switcher-client-java/badge.svg?targetFile=pom.xml)](https://snyk.io/test/github/switcherapi/switcher-client-java?targetFile=pom.xml)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Maven Central](https://img.shields.io/maven-central/v/com.switcherapi/switcher-client.svg?label=Maven%20Central)](https://central.sonatype.com/artifact/com.switcherapi/switcher-client)
Expand Down Expand Up @@ -44,9 +44,9 @@ https://github.com/switcherapi/switcher-api
</dependency>
```

### Compatibility with Jakarta EE 9
Use SDK v1.x for applications not using Jakarta EE 9.<br>
Use SDK v2.x for Jakarta EE 9 based applications.
### Compatibility with Jakarta EE 9 and Java versions
Use SDK v1.x for applications not using Jakarta EE 9 (requires Java 8+).<br>
Use SDK v2.x for Jakarta EE 9+ based applications (requires Java 17+).

## Client Context Properties - SwitcherContext

Expand Down
14 changes: 10 additions & 4 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>11</java.version>
<java.version>17</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<argLine />
Expand All @@ -58,10 +58,10 @@
<slf4j-api.version>2.0.17</slf4j-api.version>

<!-- test -->
<okhttp.version>5.1.0</okhttp.version>
<junit-jupiter.version>5.14.0</junit-jupiter.version>
<okhttp.version>5.2.0</okhttp.version>
<junit-jupiter.version>6.0.0</junit-jupiter.version>
<junit-pioneer.version>2.3.0</junit-pioneer.version>
<junit-platform-launcher.version>1.14.0</junit-platform-launcher.version>
<junit-platform-launcher.version>6.0.0</junit-platform-launcher.version>

<!-- Plugins -->
<maven-compiler-plugin.version>3.14.1</maven-compiler-plugin.version>
Expand Down Expand Up @@ -227,6 +227,12 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<configuration>
<doclint>all,-missing</doclint>
<additionalJOptions>
<additionalJOption>-Xdoclint:all,-missing</additionalJOption>
</additionalJOptions>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@

import com.switcherapi.client.model.SwitcherResult;
import org.apache.commons.lang3.ArrayUtils;
import org.jspecify.annotations.NullMarked;
import org.junit.jupiter.api.extension.*;
import org.junit.jupiter.api.extension.ExtensionContext.Namespace;
import org.junit.jupiter.api.extension.ExtensionContext.Store;

import java.util.Arrays;
import java.util.Optional;
import java.util.stream.Stream;

/**
Expand All @@ -29,6 +31,7 @@ public boolean supportsTestTemplate(ExtensionContext context) {
}

@Override
@NullMarked
public Stream<TestTemplateInvocationContext> provideTestTemplateInvocationContexts(ExtensionContext context) {
SwitcherTest switcherTest = context.getRequiredTestMethod().getAnnotation(SwitcherTest.class);

Expand Down Expand Up @@ -58,9 +61,10 @@ public void beforeTestExecution(ExtensionContext context) {
}

@Override
@NullMarked
public void afterTestExecution(ExtensionContext context) {
Store store = getStore(context);
String[] keys = store.remove(STORE_KEYS, String[].class);
String[] keys = Optional.ofNullable(store.remove(STORE_KEYS, String[].class)).orElse(new String[0]);

if (ArrayUtils.isNotEmpty(keys)) {
for (String keyStored : keys) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.switcherapi.client.test;

import org.apache.commons.lang3.ArrayUtils;
import org.jspecify.annotations.NullMarked;
import org.junit.jupiter.api.extension.TestTemplateInvocationContext;

import java.util.Arrays;
Expand All @@ -25,6 +26,7 @@ class SwitcherTestTemplate implements TestTemplateInvocationContext {
}

@Override
@NullMarked
public String getDisplayName(int invocationIndex) {
SwitcherTestValue[] switcherTestValues = switcherTest.switchers();

Expand Down