Class SubProcessSearchFilter.Builder

java.lang.Object
ch.ivyteam.ivy.process.call.SubProcessSearchFilter.Builder
Enclosing class:
SubProcessSearchFilter

public static class SubProcessSearchFilter.Builder extends Object
API:
This is a public API.
  • Method Details

    • setLibraryId

      public SubProcessSearchFilter.Builder setLibraryId(String libraryId)
      Sets the identifier of library to search in. If search scope is SubProcessSearchFilter.SearchScope.PROJECT and SubProcessSearchFilter.SearchScope.PROJECT_AND_ALL_REQUIRED instead of the the current project, the project that is deployed to a released PMV of the current application that defines the library with the given id is used to search for process starts.
      Parameters:
      libraryId - the Id of the library in which should be searched
      Returns:
      the current builder
      API:
      This public API is available in Java.
    • setApplication

      public SubProcessSearchFilter.Builder setApplication(IApplication application)
      Sets the application to search in if search scope is SubProcessSearchFilter.SearchScope.APPLICATION, SubProcessSearchFilter.SearchScope.PROJECT, or SubProcessSearchFilter.SearchScope.PROJECT_AND_ALL_REQUIRED. If no application is set the current application is used instead.
      Parameters:
      application -
      Returns:
      the current builder
      Since:
      11.3
      API:
      This public API is available in Java.
    • setProcessPath

      public SubProcessSearchFilter.Builder setProcessPath(String processPath)
      Sets the process path to search in
      Parameters:
      processPath - the path of the process in which should be searched
      Returns:
      the current builder
      API:
      This public API is available in Java.
    • setProcessPathPattern

      public SubProcessSearchFilter.Builder setProcessPathPattern(String processPathPattern)
      Sets the search pattern for the process path
      Parameters:
      processPathPattern - a regex search pattern for the process path
      Returns:
      the current builder
      API:
      This public API is available in Java.
    • setSignature

      public SubProcessSearchFilter.Builder setSignature(String signature)
      Sets the signature after which should be searched
      Parameters:
      signature - the signature to search for e.g. call() or call(String)
      Returns:
      the current builder
      API:
      This public API is available in Java.
    • setSearchInAllProjects

      @Deprecated(since="11.2") public SubProcessSearchFilter.Builder setSearchInAllProjects(boolean searchInAllProjects)
      Deprecated.
      use setSearchScope(SearchScope) with parameter SubProcessSearchFilter.SearchScope.APPLICATION or SubProcessSearchFilter.SearchScope.PROJECT_AND_ALL_REQUIRED
      If set to true the sub process is searched in all projects deployed to released pmv's of the current application. In the Designer this means in all projects opened in the workspace. If set to false the sub process is searched in the current project only.
      Parameters:
      searchInAllProjects -
      Returns:
      the current builder
      API:
      This public API is available in Java.
    • setSearchInDependentProjects

      @Deprecated(since="11.2") public SubProcessSearchFilter.Builder setSearchInDependentProjects(boolean searchInDependentProjects)
      Deprecated.
      use setSearchScope(SearchScope) with parameter SubProcessSearchFilter.SearchScope.PROJECT_AND_ALL_REQUIRED or SubProcessSearchFilter.SearchScope.PROJECT
      If set to true the sub process is searched in the given projects and the dependent projects. Set to true by default
      Parameters:
      searchInDependentProjects -
      Returns:
      the current builder
      API:
      This public API is available in Java.
    • setSearchScope

      Sets the scope of the search.

      Default is SubProcessSearchFilter.SearchScope.PROJECT_AND_ALL_REQUIRED

      For SubProcessSearchFilter.SearchScope.APPLICATION, SubProcessSearchFilter.SearchScope.SECURITY_CONTEXT, or if you use setLibraryId(String) special care must be given to input and output parameters. In those cases, the class loaders of the callee and caller might not be the same. We recommend, that you use in those cases only classes as parameter types that are provided by Java (e.g., String, List, etc.). However, if you want to use Ivy Data Classes as parameter types the equal Ivy Data Class must be available in the callee and caller project. Because a parameter of a type in the callee project is not compatible with the equal type in the caller project we try to automatically convert these parameters using some magic (reflection and deep copy of all attributes). This works for simple data structures that do not have special types like JPA or other third-party library types. If it does not work, you will get ClassCastException errors.

      Parameters:
      searchScope -
      Returns:
      the current builder
      Since:
      11.2
      API:
      This public API is available in Java.
    • toFilter

      public SubProcessSearchFilter toFilter()
      Creates the search filter
      Returns:
      the created search filter
      API:
      This public API is available in Java.