Class ConformanceSuiteResource

java.lang.Object
org.odpi.openmetadata.conformance.server.spring.ConformanceSuiteResource

@RestController @RequestMapping("/servers/{serverName}/open-metadata/conformance-suite/users/{userId}") public class ConformanceSuiteResource extends Object
ConformanceSuiteResource provides the REST API for running the Open Metadata Conformance Suite.
  • Constructor Details

    • ConformanceSuiteResource

      public ConformanceSuiteResource()
  • Method Details

    • getTestCaseIds

      @GetMapping(path="/report/test-cases") public TestCaseListResponse getTestCaseIds(@PathVariable String userId, @PathVariable String serverName)
      Requests the list of test case IDs that are available. (Response is likely to weigh in at around 250KB.)
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      Returns:
      TestCaseListResponse or InvalidParameterException the serverName is not known or UserNotAuthorizedException the supplied userId is not known.
    • getTestCaseReport

      @GetMapping(path="/report/test-cases/{testCaseId}") public TestCaseReportResponse getTestCaseReport(@PathVariable String userId, @PathVariable String serverName, @PathVariable String testCaseId)
      Requests detailed information on the execution of a specific test case. (Response size will vary, but could be 50-100KB each for the larger test cases.)
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      testCaseId - of the test case for which to retrieve a detailed report.
      Returns:
      TestCaseReportResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.
    • getProfileNames

      @GetMapping(path="/report/profiles") public ProfileNameListResponse getProfileNames(@PathVariable String userId, @PathVariable String serverName)
      Requests the list of profile (names) that are available.
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      Returns:
      TestCaseListResponse or InvalidParameterException the serverName is not known or UserNotAuthorizedException the supplied userId is not known.
    • getProfileReport

      @GetMapping(path="/report/profiles/{profileName}") public ProfileReportResponse getProfileReport(@PathVariable String userId, @PathVariable String serverName, @PathVariable String profileName)
      Requests detailed information on the execution of a specific profile. (Response size will vary, but could be ~25MB for the largest profile ("Metadata sharing").)
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      profileName - name of the profile for which to obtain a detailed report.
      Returns:
      ProfileReportResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.
    • getFailedTestCaseReport

      @GetMapping(path="/report/test-cases/failed") public TestCaseListReportResponse getFailedTestCaseReport(@PathVariable String userId, @PathVariable String serverName)
      Requests detailed information on the execution of all of the failed test cases.
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      Returns:
      TestCaseListReportResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.
    • getWorkbenchReport

      @GetMapping(path="/report/workbenches/{workbenchId}") public WorkbenchReportResponse getWorkbenchReport(@PathVariable String userId, @PathVariable String serverName, @PathVariable String workbenchId)
      Requests information on the level of conformance discovered by a specific workbench
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      workbenchId - identifier of the workbench.
      Returns:
      WorkbenchReportResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.
    • getConformanceReport

      @GetMapping(path="/report") public TestLabReportResponse getConformanceReport(@PathVariable String userId, @PathVariable String serverName)
      Request a full report on the conformance of the technology under test. Note: this can be 100's of MB, and aside from being un-loadable by just about any JSON editor also runs the risk of over-running the server-side JVM's heap: just serializing the response can use around 1GB of heap. It remains for backwards compatibility reasons, but it is suggested to instead use a combination of the other (more granular) endpoints to retrieve the information of interest, and make iterative calls if still necessary to retrieve all details of every profile and test case that was executed.
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      Returns:
      TestLabReportResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.
    • getConformanceSummaryReport

      @GetMapping(path="/report/summary") public TestLabSummaryResponse getConformanceSummaryReport(@PathVariable String userId, @PathVariable String serverName)
      Request a summary report on the conformance of the technology under test.
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      Returns:
      TestLabSummaryResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.
    • getWorkbenchStatus

      @GetMapping(path="/status/workbenches/{workbenchId}") public WorkbenchStatusResponse getWorkbenchStatus(@PathVariable String userId, @PathVariable String serverName, @PathVariable String workbenchId)
      Interrogate a workbench to find out if it has completed (its synchronous tests)
      Parameters:
      userId - calling user.
      serverName - the name of the conformance service.
      workbenchId - which workbench?
      Returns:
      TestLabReportResponse or InvalidParameterException the serverName or workbenchId is not known or UserNotAuthorizedException the supplied userId is not known.