java.lang.Object
org.odpi.openmetadata.viewservices.solutionarchitect.server.spring.SolutionArchitectResource

@RestController @RequestMapping("/servers/{serverName}/api/open-metadata/solution-architect") public class SolutionArchitectResource extends Object
The SolutionArchitectResource provides part of the server-side implementation of the Solution Architect OMVS. =
  • Constructor Details

    • SolutionArchitectResource

      public SolutionArchitectResource()
      Default constructor
  • Method Details

    • createInformationSupplyChain

      @PostMapping(path="/information-supply-chains") public GUIDResponse createInformationSupplyChain(@PathVariable String serverName, @RequestBody NewInformationSupplyChainRequestBody requestBody)
      Create an information supply chain.
      Parameters:
      serverName - name of called server.
      requestBody - properties for the information supply chain.
      Returns:
      unique identifier of the newly created element InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • createInformationSupplyChainFromTemplate

      @PostMapping(path="/information-supply-chains/from-template") public GUIDResponse createInformationSupplyChainFromTemplate(@PathVariable String serverName, @RequestBody(required=false) TemplateRequestBody requestBody)
      Create a new metadata element to represent an information supply chain using an existing metadata element as a template. The template defines additional classifications and relationships that should be added to the new element.
      Parameters:
      serverName - calling user
      requestBody - properties that override the template
      Returns:
      unique identifier of the new metadata element InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • updateInformationSupplyChain

      @PostMapping(path="/information-supply-chains/{informationSupplyChainGUID}/update") public VoidResponse updateInformationSupplyChain(@PathVariable String serverName, @PathVariable String informationSupplyChainGUID, @RequestParam(required=false,defaultValue="false") boolean replaceAllProperties, @RequestBody(required=false) UpdateInformationSupplyChainRequestBody requestBody)
      Update the properties of an information supply chain.
      Parameters:
      serverName - name of called server.
      informationSupplyChainGUID - unique identifier of the information supply chain (returned from create)
      replaceAllProperties - flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.
      requestBody - properties for the new element.
      Returns:
      void or InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • createInformationSupplyChainSegment

      @PostMapping(path="/information-supply-chains/{informationSupplyChainGUID}/segments") public GUIDResponse createInformationSupplyChainSegment(@PathVariable String serverName, @PathVariable String informationSupplyChainGUID, @RequestBody(required=false) InformationSupplyChainSegmentRequestBody requestBody)
      Create an information supply chain segment and link it to its owning information supply chain.
      Parameters:
      serverName - name of called server.
      informationSupplyChainGUID - unique identifier of optional parent information supply chain
      requestBody - properties for the information supply chain.
      Returns:
      unique identifier of the newly created element InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • updateInformationSupplyChainSegment

      @PostMapping(path="/information-supply-chains/segments/{segmentGUID}/update") public VoidResponse updateInformationSupplyChainSegment(@PathVariable String serverName, @PathVariable String segmentGUID, @RequestParam(required=false,defaultValue="false") boolean replaceAllProperties, @RequestBody(required=false) InformationSupplyChainSegmentRequestBody requestBody)
      Update the properties of an information supply chain segment.
      Parameters:
      serverName - name of called server.
      segmentGUID - unique identifier of the information supply chain segment (returned from create)
      replaceAllProperties - flag to indicate whether to completely replace the existing properties with the new properties, or just update the individual properties specified on the request.
      requestBody - properties for the new element.
      Returns:
      void or InvalidParameterException one of the parameters is invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • linkSegments

      @PostMapping(path="/information-supply-chains/segments/{segment1GUID}/link-to/{segment2GUID}/attach") public VoidResponse linkSegments(@PathVariable String serverName, @PathVariable String segment1GUID, @PathVariable String segment2GUID, @RequestBody(required=false) InformationSupplyChainLinkRequestBody requestBody)
      Connect two information supply chain segments.
      Parameters:
      serverName - name of called server
      segment1GUID - unique identifier of the first segment
      segment2GUID - unique identifier of the second segment
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • detachSegments

      @PostMapping(path="/information-supply-chains/segments/{segment1GUID}/link-to/{segment2GUID}/detach") public VoidResponse detachSegments(@PathVariable String serverName, @PathVariable String segment1GUID, @PathVariable String segment2GUID, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Detach two information supply chain segments from one another.
      Parameters:
      serverName - name of called server
      segment1GUID - unique identifier of the first segment
      segment2GUID - unique identifier of the second segment
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • deleteInformationSupplyChainSegment

      @PostMapping(path="/information-supply-chains/segments/{segmentGUID}/delete") public VoidResponse deleteInformationSupplyChainSegment(@PathVariable String serverName, @PathVariable String segmentGUID, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Delete an information supply chain segment.
      Parameters:
      serverName - name of called server
      segmentGUID - unique identifier of the segment
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • deleteInformationSupplyChain

      @PostMapping(path="/information-supply-chains/{informationSupplyChainGUID}/delete") public VoidResponse deleteInformationSupplyChain(@PathVariable String serverName, @PathVariable String informationSupplyChainGUID, @RequestBody(required=false) MetadataSourceRequestBody requestBody)
      Delete an information supply chain.
      Parameters:
      serverName - name of called server
      informationSupplyChainGUID - unique identifier of the element to delete
      requestBody - description of the relationship.
      Returns:
      void or InvalidParameterException one of the parameters is null or invalid. PropertyServerException there is a problem retrieving information from the property server(s). UserNotAuthorizedException the requesting user is not authorized to issue this request.
    • getInformationSupplyChainsByName

      @PostMapping(path="/information-supply-chains/by-name") public InformationSupplyChainsResponse getInformationSupplyChainsByName(@PathVariable String serverName, @RequestParam(required=false,defaultValue="true") boolean addImplementation, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestBody(required=false) FilterRequestBody requestBody)
      Returns the list of information supply chains with a particular name.
      Parameters:
      serverName - name of the service to route the request to
      addImplementation - should details of the implementation of the information supply chain be extracted too?
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • findInformationSupplyChains

      @PostMapping(path="/information-supply-chains/by-search-string") public InformationSupplyChainsResponse findInformationSupplyChains(@PathVariable String serverName, @RequestParam(required=false,defaultValue="true") boolean addImplementation, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestParam(required=false,defaultValue="false") boolean startsWith, @RequestParam(required=false,defaultValue="false") boolean endsWith, @RequestParam(required=false,defaultValue="false") boolean ignoreCase, @RequestBody(required=false) FilterRequestBody requestBody)
      Retrieve the list of information supply chain metadata elements that contain the search string.
      Parameters:
      serverName - name of the service to route the request to
      addImplementation - should details of the implementation of the information supply chain be extracted too?
      startsWith - does the value start with the supplied string?
      endsWith - does the value end with the supplied string?
      ignoreCase - should the search ignore case?
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • getInformationSupplyChainByGUID

      @PostMapping(path="/information-supply-chains/{informationSupplyChainGUID}/retrieve") public InformationSupplyChainResponse getInformationSupplyChainByGUID(@PathVariable String serverName, @PathVariable String informationSupplyChainGUID, @RequestParam(required=false,defaultValue="true") boolean addImplementation, @RequestBody(required=false) AnyTimeRequestBody requestBody)
      Return the properties of a specific information supply chain.
      Parameters:
      serverName - name of the service to route the request to
      informationSupplyChainGUID - unique identifier of the required element
      addImplementation - should details of the implementation of the information supply chain be extracted too?
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • findSolutionBlueprints

      @PostMapping(path="/solution-blueprints/by-search-string") public SolutionBlueprintsResponse findSolutionBlueprints(@PathVariable String serverName, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestParam(required=false,defaultValue="false") boolean startsWith, @RequestParam(required=false,defaultValue="false") boolean endsWith, @RequestParam(required=false,defaultValue="false") boolean ignoreCase, @RequestBody(required=false) FilterRequestBody requestBody)
      Retrieve the list of solution blueprint metadata elements that contain the search string. The returned blueprints include a list of the components that are associated with it.
      Parameters:
      serverName - name of the service to route the request to
      startsWith - does the value start with the supplied string?
      endsWith - does the value end with the supplied string?
      ignoreCase - should the search ignore case?
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • findSolutionRoles

      @PostMapping(path="/solution-roles/by-search-string") public SolutionRolesResponse findSolutionRoles(@PathVariable String serverName, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestParam(required=false,defaultValue="false") boolean startsWith, @RequestParam(required=false,defaultValue="false") boolean endsWith, @RequestParam(required=false,defaultValue="false") boolean ignoreCase, @RequestBody(required=false) FilterRequestBody requestBody)
      Retrieve the list of actor roles metadata elements that contain the search string and show which solution components (if any) are attached to it.
      Parameters:
      serverName - name of the service to route the request to
      startsWith - does the value start with the supplied string?
      endsWith - does the value end with the supplied string?
      ignoreCase - should the search ignore case?
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • findSolutionComponents

      @PostMapping(path="/solution-components/by-search-string") public SolutionComponentsResponse findSolutionComponents(@PathVariable String serverName, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestParam(required=false,defaultValue="false") boolean startsWith, @RequestParam(required=false,defaultValue="false") boolean endsWith, @RequestParam(required=false,defaultValue="false") boolean ignoreCase, @RequestBody(required=false) FilterRequestBody requestBody)
      Retrieve the list of solution component metadata elements that contain the search string. The solutions components returned include information about the consumers, actors and other solution components that are associated with them.
      Parameters:
      serverName - name of the service to route the request to
      startsWith - does the value start with the supplied string?
      endsWith - does the value end with the supplied string?
      ignoreCase - should the search ignore case?
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)
    • getSolutionComponentImplementations

      @PostMapping(path="/solution-components/{solutionComponentGUID}/implementations") public RelatedMetadataElementsResponse getSolutionComponentImplementations(@PathVariable String serverName, @PathVariable String solutionComponentGUID, @RequestParam(required=false,defaultValue="0") int startFrom, @RequestParam(required=false,defaultValue="0") int pageSize, @RequestBody(required=false) ResultsRequestBody requestBody)
      Retrieve the list of metadata elements that are associated with the solution component via the ImplementedBy relationship.
      Parameters:
      serverName - name of the service to route the request to
      solutionComponentGUID - unique identifier of the solution component to query
      startFrom - paging start point
      pageSize - maximum results that can be returned
      requestBody - string to find in the properties
      Returns:
      list of matching metadata elements or InvalidParameterException one of the parameters is invalid UserNotAuthorizedException the user is not authorized to issue this request PropertyServerException there is a problem reported in the open metadata server(s)