Class RexViewRESTResource


  • @RestController
    @RequestMapping("/servers/{viewServerName}/open-metadata/view-services/rex/users/{userId}")
    public class RexViewRESTResource
    extends Object
    The RexViewRESTResource provides the Spring API endpoints of the Repository Explorer Open Metadata View Service (OMVS). This interface provides an interfaces for enterprise architects.
    • Constructor Detail

      • RexViewRESTResource

        public RexViewRESTResource()
        Default constructor
    • Method Detail

      • getResourceEndpoints

        @GetMapping("/resource-endpoints")
        public RexResourceEndpointListResponse getResourceEndpoints​(@PathVariable
                                                                    String viewServerName,
                                                                    @PathVariable
                                                                    String userId)
        Get the configured resource endpoints
        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        Returns:
        response object containing the list of resource endpoints or exception information
      • getTypeExplorer

        @PostMapping("/types")
        public TypeExplorerResponse getTypeExplorer​(@PathVariable
                                                    String viewServerName,
                                                    @PathVariable
                                                    String userId,
                                                    @RequestBody
                                                    RexTypesRequestBody body)
        Load type information

        Load type information from the repository server. This is used to populate filters.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the repository's type information or exception information
      • getEntity

        @PostMapping("/instances/entity")
        public RexEntityDetailResponse getEntity​(@PathVariable
                                                 String viewServerName,
                                                 @PathVariable
                                                 String userId,
                                                 @RequestBody
                                                 RexEntityRequestBody body)
        This method gets an entity detail.

        When retrieving a single entity we return the whole EntityDetail object. This is because the entity is being used as the user focus object and will be displayed in the details pane.

        The method used is POST because the parameters supplied by the UI to the VS are conveyed in the request body.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the repository's type information or exception information
      • getRelationship

        @PostMapping("/instances/relationship")
        public RexRelationshipResponse getRelationship​(@PathVariable
                                                       String viewServerName,
                                                       @PathVariable
                                                       String userId,
                                                       @RequestBody
                                                       RexRelationshipRequestBody body)
        This method gets a relationship.

        When retrieving a single relationship we return the whole Relationship object. This is because the relationship is being used as the user focus object and will be displayed in the details pane.

        The method used is POST because the parameters supplied by the UI to the VS are conveyed in the request body.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the repository's type information or exception information
      • findEntities

        @PostMapping("/instances/entities/by-property-value")
        public RexSearchResponse findEntities​(@PathVariable
                                              String viewServerName,
                                              @PathVariable
                                              String userId,
                                              @RequestBody
                                              RexSearchBody body)
        This method searches for entities based on property value.

        When searching for entities, we return a list of EntityDigest objects. This is because the digests are used to display a list of search hits to the user from which they can select which entities they would like to add to the graph.

        The method used is POST because the parameters supplied by the UI to the VS are conveyed in the request body.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the repository's type information or exception information
      • findRelationships

        @PostMapping("/instances/relationships/by-property-value")
        public RexSearchResponse findRelationships​(@PathVariable
                                                   String viewServerName,
                                                   @PathVariable
                                                   String userId,
                                                   @RequestBody
                                                   RexSearchBody body)
        This method searches for relationships based on property value.

        When searching for relationships, we return a list of RelationshipDigest objects. This is because the digests are used to display a list of search hits to the user from which they can select which relationships they would like to add to the graph.

        The method used is POST because the parameters supplied by the UI to the VS are conveyed in the request body.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the repository's type information or exception information
      • rexPreTraversal

        @PostMapping("/instances/pre-traversal")
        public RexPreTraversalResponse rexPreTraversal​(@PathVariable
                                                       String viewServerName,
                                                       @PathVariable
                                                       String userId,
                                                       @RequestBody
                                                       RexTraversalRequestBody body)
        This method retrieves the neighborhood around a starting entity for pre-traversal

        When exploring an entity neighborhood we return an InstanceGraph which contains the entities and relationships that were traversed.

        The method used is POST because the parameters supplied by the UI to the VS are conveyed in the request body.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the InstanceGraph for the traversal or exception information
      • rexTraversal

        @PostMapping("/instances/traversal")
        public RexTraversalResponse rexTraversal​(@PathVariable
                                                 String viewServerName,
                                                 @PathVariable
                                                 String userId,
                                                 @RequestBody
                                                 RexTraversalRequestBody body)
        This method retrieves the neighborhood around a starting entity.

        When exploring an entity neighborhood we return an InstanceGraph which contains the entities and relationships that were traversed.

        The method used is POST because the parameters supplied by the UI to the VS are conveyed in the request body.

        Parameters:
        viewServerName - name of the server running the view-service.
        userId - user account under which to conduct operation.
        body - request body containing parameters to formulate repository request
        Returns:
        response object containing the InstanceGraph for the traversal or exception information