
com.almworks.jira.structure.api2g.StructurePluginHelper Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of structure-api Show documentation
Show all versions of structure-api Show documentation
Public API for the Structure Plugin for JIRA
package com.almworks.jira.structure.api2g;
import com.almworks.integers.*;
import com.almworks.jira.structure.api.StructureConfiguration;
import com.almworks.jira.structure.api.StructureError;
import com.almworks.jira.structure.api2g.structure.Structure;
import com.atlassian.crowd.embedded.api.Group;
import com.atlassian.crowd.embedded.api.User;
import com.atlassian.jira.bc.issue.search.SearchService;
import com.atlassian.jira.bc.issue.worklog.TimeTrackingConfiguration;
import com.atlassian.jira.issue.*;
import com.atlassian.jira.issue.search.SearchException;
import com.atlassian.jira.issue.search.SearchRequestManager;
import com.atlassian.jira.jql.operand.JqlOperandResolver;
import com.atlassian.jira.jql.parser.JqlParseException;
import com.atlassian.jira.jql.parser.JqlQueryParser;
import com.atlassian.jira.jql.util.JqlIssueSupport;
import com.atlassian.jira.jql.util.JqlStringSupport;
import com.atlassian.jira.project.Project;
import com.atlassian.jira.project.ProjectManager;
import com.atlassian.jira.security.*;
import com.atlassian.jira.security.roles.ProjectRole;
import com.atlassian.jira.security.roles.ProjectRoleManager;
import com.atlassian.jira.user.ApplicationUser;
import com.atlassian.jira.user.preferences.UserPreferencesManager;
import com.atlassian.jira.user.util.UserManager;
import com.atlassian.jira.util.I18nHelper;
import com.atlassian.jira.util.MessageSet;
import com.atlassian.jira.web.session.SessionSearchObjectManagerFactory;
import com.atlassian.plugin.PluginAccessor;
import com.atlassian.plugin.event.PluginEventManager;
import com.atlassian.plugin.webresource.WebResourceManager;
import com.atlassian.query.Query;
import org.jetbrains.annotations.*;
import java.text.Collator;
import java.util.*;
//
public interface StructurePluginHelper {
/**
* Retrieves an instance of Issue
.
*
* @param issueId the ID of the issue
* @return the issue, or null if the issue cannot be found or there is an exception getting it
*/
@Nullable
MutableIssue getIssue(long issueId);
/**
* Retrieves an instance of issue by issue key.
*
* @param key issue key
* @return the issue, or null if the issue cannot be found or there is an exception getting it
*/
@Nullable
MutableIssue getIssue(String key);
StructureError getIssueError(Long issue, boolean checkEdit);
StructureError getIssueError(Long issue, boolean checkEdit, User user);
@Contract("null, _ -> !null")
StructureError getIssueError(Issue issue, boolean checkEdit);
@Contract("null, _, _ -> !null")
StructureError getIssueError(Issue issue, boolean checkEdit, User user);
// todo make it replace getIssueError?
@Contract("null, _ -> !null")
StructureError getIssueError2(Issue issue, boolean checkEdit);
@Deprecated
boolean isProjectsStructuredForUser(Project project, User user);
boolean isProjectStructuredForCurrentUser(Project project);
void requireLocalizedResource(String resourceKey);
void requireResource(String resourceKey);
void requireResourceLocalization(String resourceKey);
void requireWidgetResource();
void includeIssueDetailsResources();
void requireQuickEditResources();
void requireResourceIfPresent(String key);
boolean isStructureAvailableToCurrentUser();
@Deprecated
boolean isStructureAvailableToUser(User user);
boolean isStructureAvailableToUser(ApplicationUser user);
boolean isCreateStructureAllowed(ApplicationUser user);
boolean isCreateStructureAllowed(User user);
boolean isSynchronizationAllowed(User user);
boolean isSynchronizationAllowed(ApplicationUser user);
boolean isAutomationAccessAllowed(User user);
boolean isAutomationAccessAllowed(ApplicationUser user);
WebResourceManager getWebResourceManager();
JiraAuthenticationContext getAuthenticationContext();
IssueManager getIssueManager();
PermissionManager getPermissionManager();
PluginAccessor getPluginAccessor();
PluginEventManager getEventManager();
ProjectManager getProjectManager();
ProjectRoleManager getProjectRoleManager();
UserManager getUserManager();
@Deprecated
I18nHelper getI18nHelper();
I18nHelper getI18n();
ApplicationUser getApplicationUser();
@Deprecated
User getUser();
boolean isAuthenticated();
boolean isAdmin();
@Deprecated
boolean isAdmin(User user);
boolean isAdmin(ApplicationUser user);
StructureConfiguration getConfiguration();
Query getConfigurationScopeQuery();
boolean isUserInGroup(User user, Group group);
T instantiate(Class clazz);
List getAvailableGroups(User user);
List getAvailableGroupsForCurrentUser();
List getAvailableRoles();
List getStructureProjectsForCurrentUser();
Query getResolvedQuery();
void filterInvisibleProjects(LongSizedIterable projects, ApplicationUser user, boolean overrideSecurity,
LongCollector invisibleCollector);
LongArray searchQuery(String query, User user) throws SearchException, JqlParseException;
LongArray searchQuery(String query) throws SearchException, JqlParseException;
LongArray searchQuery(Query query) throws SearchException;
LongArray searchAndSortQuery(String query) throws SearchException, JqlParseException;
LongArray searchAndSortQuery(Query query) throws SearchException;
LongArray searchAndSortQuery(Query query, int limit) throws SearchException;
@Deprecated
void matchIssues(
LongList issues, User user, Query query, boolean collectMatching, boolean overrideSecurity,
LongCollector collector) throws SearchException;
void matchIssues(
LongList issues, Query query, boolean collectMatching, LongCollector collector)
throws SearchException;
void matchIssuesSorted(@Nullable LongList issuesSorted, User user, @Nullable Query query,
boolean collectMatching, boolean overrideSecurity, LongCollector collector) throws SearchException;
@Deprecated
void matchIssuesSorted(@Nullable LongList issuesSorted, ApplicationUser user, @Nullable Query query,
boolean collectMatching, boolean overrideSecurity, LongCollector collector) throws SearchException;
void matchIssuesSorted(
@Nullable LongList issuesSorted, @Nullable Query query, boolean collectMatching, LongCollector collector)
throws SearchException;
Comparator getStructureComparator(ApplicationUser user);
Collator getCollator(@Nullable User user);
Collator getCollator(@Nullable ApplicationUser user);
I18nHelper getI18n(@Nullable User user);
I18nHelper getI18n(@Nullable ApplicationUser user);
@Deprecated
Boolean isViewCreationAllowed(User user);
@Deprecated
Boolean isViewSharingAllowed(User user);
Boolean isViewCreationAllowed(ApplicationUser user);
Boolean isViewSharingAllowed(ApplicationUser user);
JqlIssueSupport getJqlIssueSupport();
JqlStringSupport getJqlStringSupport();
JqlQueryParser getJqlQueryParser();
SearchService getSearchService();
MessageSet validateQuery(User user, Query query);
SessionSearchObjectManagerFactory getSessionSearchObjectManagerFactory();
JqlOperandResolver getJqlOperandResolver();
SearchRequestManager getSearchRequestManager();
GlobalPermissionManager getGlobalPermissionManager();
TimeTrackingConfiguration getTimeTrackingConfiguration();
UserPreferencesManager getUserPreferencesManager();
CustomFieldManager getCustomFieldManager();
boolean isIssueEditable(Issue issue, User user);
boolean hasPermission(int permissionsId, User user);
boolean hasPermission(int permissionsId, Issue issue, User user);
boolean hasPermission(int permissionsId, Project project, User user);
Locale getLocale();
void clearAllCachesOnAllNodes();
void clearAllCaches();
void clearCurrentUserCaches();
void clearUserCaches(@NotNull ApplicationUser user);
boolean isStructureLocked();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy