JiraSetupService Encapsulates Stash-JIRA interaction for:
  1. creating a reciprocated (2-way) Application Link;
  2. authenticating that link with Trusted Applications; and
  3. (optionally) creating a user directory from the selected JIRA server. 


IncorrectStashBaseUrlException This exception is thrown when the Stash baseUrl supplied to JIRA to create a reciprocal application link was not accessible from the JIRA server. 
JiraSetupException Used to indicate something has gone wrong with the creation of the JIRA Application Link and/or creation of the JIRA Crowd configuration. 
JiraUserCredentialsException This exception is thrown when the user-supplied JIRA admin username and/or password was incorrect, or the user authenticated successfully but they are not an administrator. 
NotAJiraServerException This exception is thrown when the setup service can not retrieve the remote JIRA server's UAL manifest (usually available at /rest/applinks/1.0/manifest). 
StashApplicationTypeNotInstalledException This exception is thrown when the Stash UAL ApplicationType has not been installed in the remote JIRA server.