public RemotePermissionScheme[] getPermissionSchemes(JiraConfiguration config) { JiraSession session = getJiraSession(config); JiraClient client = new JiraClient(session); RemotePermissionScheme[] schemes; schemes = client.getPermissionSchemes(); session.close(); return schemes; }
@JavaScriptMethod public RemoteUser[] getExistingUsers(String jiraConfigName, String query) { JiraSession session = getJiraSession(getJiraConfig(jiraConfigName)); JiraClient client = new JiraClient(session); RemoteUser[] users = client.searchUser(query); session.close(); return users; }
@JavaScriptMethod public RemoteGroupSummary[] getExistingGroups(String jiraConfigName, String query) { JiraSession session = getJiraSession(getJiraConfig(jiraConfigName)); JiraClient client = new JiraClient(session); RemoteGroupSummary[] groups; groups = client.searchGroups(query); session.close(); return groups; }
@JavaScriptMethod public String[] validateUserInput( String jiraConfigName, String username, String fullName, String email, String password) { JiraSession session = getJiraSession(getJiraConfig(jiraConfigName)); JiraClient client = new JiraClient(session); String[] result = new String[] { validateNewUsername(client, username), validateNewFullName(client, fullName), validateNewEmail(client, email), validateNewPassword(client, password) }; session.close(); return result; }
@JavaScriptMethod public String isValidJIRAProjectKey(String jiraConfigName, String key) { if (GenericValidator.isBlankOrNull(key)) { return "Please provide a key"; } else if (!KEY_PATTERN.matcher(key).matches()) { return "The project key is not in the required format (^[A-Z]+$)."; } try { JiraSession session = getJiraSession(getJiraConfig(jiraConfigName)); JiraClient client = new JiraClient(session); client.getProject(key); session.close(); return "Project key already used."; } catch (AtlassianException ex) { if (ex.getMessage().contains("No project could be found")) { return null; } throw ex; } }