Client integration#

The Strongbox common library provides everything necessary to integrate a Strongbox client into a user facing application or service.

Requirements#

  • Java 11
  • skp-common >= 4.2

Integration#

To integrate the common library, it must be included in pom.xml:

    <repositories>
        <repository>
            <id>gitlab-maven</id>
            <url>https://gitlab.skalio.net/api/v4/groups/39/-/packages/maven</url>
        </repository>
    </repositories>

    <dependencies>
        <dependency>
            <groupId>com.skalio.strongbox</groupId>
            <artifactId>common</artifactId>
            <version>${strongbox.common.version}</version>
        </dependency>
    </dependencies>

The HttpClientBinder must be registered into the root-level ServiceLocator:

        ServiceLocatorUtilities.bind(applicationLocator, new HttpClientBinder());

A service must implement the IStrongboxClientConfiguration:

public interface IStrongboxClientConfiguration {
    public static final String SERVICE_QUALIFIER = "strongbox";

    public boolean isStrongboxEnabled();
    public URI getStrongboxSeedUrl();
    public Optional<String> getTenantUid();
}

The strongboxSeedUrl points to the root of any of the Strongbox stores. Ideally this is a DNS-round-robin entry. From here, the client will fetch the complete ring environment.

Operations#

give examples for upload/download operations