Class DefensicsApiV2Client
- java.lang.Object
-
- com.synopsys.defensics.apiserver.client.DefensicsApiV2Client
-
- All Implemented Interfaces:
DefensicsApiClient
public class DefensicsApiV2Client extends Object implements DefensicsApiClient
Defensics API v2 client. Client is configured to use token in all requests so new client has to be created if token is to be changed. Server-provided pagination and other root-level information is stripped away and methods return bare plain object and list of objects.Now most of the exceptions (e.g. InterruptedExceptions, IOExceptions) are collected as a cause in the DefensicsClientException but the exception handling is subject to change when client code evolves.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.synopsys.defensics.apiserver.client.DefensicsApiClient
DefensicsApiClient.DefensicsClientException
-
-
Field Summary
Fields Modifier and Type Field Description static String
CONTENT_TEXT_PLAIN
static String
CONTENT_TYPE_JSON
static String
CONTENT_TYPE_ZIP
static String
RUNS
API path segment for runs.static String
SUITE_INSTANCES
API path segment for suite instances.
-
Constructor Summary
Constructors Constructor Description DefensicsApiV2Client(URI apiBaseUri, String token)
Default constructor.DefensicsApiV2Client(URI apiBaseUri, String token, Consumer<HttpClient.Builder> clientConfigurator)
Constructor for configuring HttpClient further - allows to e.g.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Run
createTestRun()
Creates new test run.void
deleteRun(String runId)
Removes the Run.InputStream
downloadReport(String resultId, String reportType)
Downloads Defensics report of given type for given result IDs.InputStream
downloadResultPackage(String resultId)
Downloads Defensics result package for given result ID.Map<String,HealthCheckResult>
getHealthChecks()
Get detailed healthcheck information.Optional<Run>
getRun(String runId)
Gets run for given ID.Optional<Run>
getRun(String runId, boolean includeFailureSummary)
Get run with optional failureSummary embedded.Optional<SuiteInstance>
getRunSuiteInstance(String runId)
Get suite instance currently assigned to run configuration.Optional<VersionInformation>
getServerVersion()
Fetches API server version information.Optional<Suite>
getSuite(String suiteFeature, String suiteVersion)
Get single suite by the it's feature and version.List<SuiteInstance>
getSuiteInstances()
void
setTestConfigurationSettings(String runId, SettingCliArgs settings)
Adds additional configuration settings for suite and monitor.void
setUserAgent(String userAgentString)
void
startRun(String runId)
Starts Defensics run.void
stopRun(String runId)
Stops given Defensics run.void
uploadTestPlan(String configurationId, InputStream testplanStream)
Uploads and assigns a Defensics testplan to the test configuration of run with given ID.
-
-
-
Field Detail
-
RUNS
public static final String RUNS
API path segment for runs.- See Also:
- Constant Field Values
-
SUITE_INSTANCES
public static final String SUITE_INSTANCES
API path segment for suite instances.- See Also:
- Constant Field Values
-
CONTENT_TYPE_ZIP
public static final String CONTENT_TYPE_ZIP
- See Also:
- Constant Field Values
-
CONTENT_TYPE_JSON
public static final String CONTENT_TYPE_JSON
- See Also:
- Constant Field Values
-
CONTENT_TEXT_PLAIN
public static final String CONTENT_TEXT_PLAIN
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DefensicsApiV2Client
public DefensicsApiV2Client(URI apiBaseUri, String token)
Default constructor.- Parameters:
apiBaseUri
- Defensics API Server addresstoken
- Token used to authenticate
-
DefensicsApiV2Client
public DefensicsApiV2Client(URI apiBaseUri, String token, Consumer<HttpClient.Builder> clientConfigurator)
Constructor for configuring HttpClient further - allows to e.g. customize timeouts or to modify TLS configuration.- Parameters:
apiBaseUri
- Defensics API server addresstoken
- Token used to authenticateclientConfigurator
- HttpClientBuilder consumer. Do not call builder.build() in this method.
-
-
Method Detail
-
uploadTestPlan
public void uploadTestPlan(String configurationId, InputStream testplanStream)
Description copied from interface:DefensicsApiClient
Uploads and assigns a Defensics testplan to the test configuration of run with given ID.- Specified by:
uploadTestPlan
in interfaceDefensicsApiClient
- Parameters:
configurationId
- Test configuration IDtestplanStream
- Defensics testplan file as a stream. Caller has to close the stream.
-
setTestConfigurationSettings
public void setTestConfigurationSettings(String runId, SettingCliArgs settings)
Description copied from interface:DefensicsApiClient
Adds additional configuration settings for suite and monitor. The format is same as in the Defensics command line (e.g. '--uri http://127.0.0.1:7000' for changing URI in HTTP server suite).- Specified by:
setTestConfigurationSettings
in interfaceDefensicsApiClient
- Parameters:
runId
- Run ID whose configuration is changedsettings
- Settings to add
-
createTestRun
public Run createTestRun()
Description copied from interface:DefensicsApiClient
Creates new test run.- Specified by:
createTestRun
in interfaceDefensicsApiClient
- Returns:
- new test run
-
getRun
public Optional<Run> getRun(String runId)
Description copied from interface:DefensicsApiClient
Gets run for given ID.- Specified by:
getRun
in interfaceDefensicsApiClient
- Parameters:
runId
- Run ID- Returns:
- Run object
-
getRun
public Optional<Run> getRun(String runId, boolean includeFailureSummary)
Get run with optional failureSummary embedded.- Parameters:
runId
- Run IDincludeFailureSummary
- If true, includes failureSummary information.- Returns:
- Run, if present.
-
deleteRun
public void deleteRun(String runId)
Description copied from interface:DefensicsApiClient
Removes the Run. Also removes related RunTestConfiguration and unloads any assigned suites- Specified by:
deleteRun
in interfaceDefensicsApiClient
- Parameters:
runId
- Run ID
-
getHealthChecks
public Map<String,HealthCheckResult> getHealthChecks()
Description copied from interface:DefensicsApiClient
Get detailed healthcheck information.- Specified by:
getHealthChecks
in interfaceDefensicsApiClient
- Returns:
- Healthcheck information as a map
-
getServerVersion
public Optional<VersionInformation> getServerVersion()
Description copied from interface:DefensicsApiClient
Fetches API server version information. In future may contain some other component version information as well.- Specified by:
getServerVersion
in interfaceDefensicsApiClient
- Returns:
- VersionInformation containing server version.
-
downloadReport
public InputStream downloadReport(String resultId, String reportType)
Description copied from interface:DefensicsApiClient
Downloads Defensics report of given type for given result IDs. Caller has to close the stream.- Specified by:
downloadReport
in interfaceDefensicsApiClient
- Parameters:
resultId
- Run IDs for which to generate reportreportType
- Report type- Returns:
- Report as a stream
-
downloadResultPackage
public InputStream downloadResultPackage(String resultId)
Description copied from interface:DefensicsApiClient
Downloads Defensics result package for given result ID. Result package contains Defensics result files in ZIP archive. Caller has to close the stream.- Specified by:
downloadResultPackage
in interfaceDefensicsApiClient
- Parameters:
resultId
- Result ID to include in the result package- Returns:
- Result package as an inputstream. Contains Zip-package
-
getRunSuiteInstance
public Optional<SuiteInstance> getRunSuiteInstance(String runId)
Description copied from interface:DefensicsApiClient
Get suite instance currently assigned to run configuration.- Specified by:
getRunSuiteInstance
in interfaceDefensicsApiClient
- Parameters:
runId
- Run id- Returns:
- Suite instance assigned to configuration
-
getSuiteInstances
public List<SuiteInstance> getSuiteInstances()
- Specified by:
getSuiteInstances
in interfaceDefensicsApiClient
-
startRun
public void startRun(String runId)
Description copied from interface:DefensicsApiClient
Starts Defensics run.- Specified by:
startRun
in interfaceDefensicsApiClient
- Parameters:
runId
- Run ID
-
stopRun
public void stopRun(String runId)
Description copied from interface:DefensicsApiClient
Stops given Defensics run.- Specified by:
stopRun
in interfaceDefensicsApiClient
- Parameters:
runId
- Run ID
-
getSuite
public Optional<Suite> getSuite(String suiteFeature, String suiteVersion)
Description copied from interface:DefensicsApiClient
Get single suite by the it's feature and version.- Specified by:
getSuite
in interfaceDefensicsApiClient
- Parameters:
suiteFeature
- the feature of suite to getsuiteVersion
- the version of suite to get- Returns:
- Suite
-
setUserAgent
public void setUserAgent(String userAgentString)
-
-