Modifier and Type | Field and Description |
---|---|
static long |
TIMEOUT |
Constructor and Description |
---|
JiraAppLinksHostApplication(com.atlassian.plugin.PluginAccessor pluginAccessor,
ApplicationProperties applicationProperties,
JiraLicenseService jiraLicenseService,
VelocityRequestContextFactory velocityRequestContextFactory,
ProjectManager projectManager,
JiraAuthenticationContext jiraAuthenticationContext,
com.atlassian.applinks.host.OsgiServiceProxyFactory osgiServiceProxyFactory,
PermissionManager permissionManager)
Creates a new JiraAppLinksHostApplication instance.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canManageEntityLinksFor(com.atlassian.applinks.host.spi.EntityReference entityReference) |
void |
clearSkipPermissionCheck() |
boolean |
doesEntityExist(String key,
Class<? extends com.atlassian.applinks.api.EntityType> type) |
boolean |
doesEntityExistNoPermissionCheck(String key,
Class<? extends com.atlassian.applinks.api.EntityType> type) |
URI |
getBaseUrl()
Returns the base URL that is configured for this JIRA instance.
|
URI |
getDocumentationBaseUrl() |
com.atlassian.applinks.api.ApplicationId |
getId() |
Iterable<com.atlassian.applinks.host.spi.EntityReference> |
getLocalEntities() |
String |
getName() |
com.atlassian.applinks.api.ApplicationType |
getType() |
boolean |
hasPublicSignup() |
void |
setSkipPermissionCheck(boolean skip) |
void |
start()
The OsgiServiceProxyFactory creates a proxy to the TypeAccessor which is a component of the applinks-plugin.
|
com.atlassian.applinks.host.spi.EntityReference |
toEntityReference(Object domainObject) |
com.atlassian.applinks.host.spi.EntityReference |
toEntityReference(String key,
Class<? extends com.atlassian.applinks.api.EntityType> type) |
public static final long TIMEOUT
public JiraAppLinksHostApplication(com.atlassian.plugin.PluginAccessor pluginAccessor, ApplicationProperties applicationProperties, JiraLicenseService jiraLicenseService, VelocityRequestContextFactory velocityRequestContextFactory, ProjectManager projectManager, JiraAuthenticationContext jiraAuthenticationContext, com.atlassian.applinks.host.OsgiServiceProxyFactory osgiServiceProxyFactory, PermissionManager permissionManager)
public URI getDocumentationBaseUrl()
getDocumentationBaseUrl
in interface com.atlassian.applinks.host.spi.InternalHostApplication
URI
used as the base for constructing links to help pages. e.g. http://docs.atlassian.com/fisheye/docs-023
or http://confluence.atlassian.com/display/APPLINKS
.
The returned URI
should not have a trailing slash.public String getName()
getName
in interface com.atlassian.applinks.host.spi.InternalHostApplication
com.atlassian.applinks.host.util.InstanceNameGenerator
to generate a name from the application's base
URL.public com.atlassian.applinks.api.ApplicationType getType()
getType
in interface com.atlassian.applinks.host.spi.InternalHostApplication
ApplicationType
for this application instance. Implementations
should delegate to the TypeAccessor
to resolve an instance of the
desired type.public Iterable<com.atlassian.applinks.host.spi.EntityReference> getLocalEntities()
getLocalEntities
in interface com.atlassian.applinks.host.spi.InternalHostApplication
Iterable
containing an EntityReference
for every
entity in the local instance visible to the currently logged in user. Note, the implementation
must perform a permission check and return only entities visible the context user (who
may be anonymous).
User requires to have either the BROWSE project, JIRA Administrator or PROJECT ADMIN permission.public boolean doesEntityExist(String key, Class<? extends com.atlassian.applinks.api.EntityType> type)
doesEntityExist
in interface com.atlassian.applinks.host.spi.InternalHostApplication
key
- the key of an entity local to this application (e.g. JRA, CONF)type
- the class of the EntityType
of the entity (e.g. JiraProjectEntityType
)public boolean doesEntityExistNoPermissionCheck(String key, Class<? extends com.atlassian.applinks.api.EntityType> type)
doesEntityExistNoPermissionCheck
in interface com.atlassian.applinks.host.spi.InternalHostApplication
key
- the key of an entity local to this application (e.g. JRA, CONF)type
- the class of the EntityType
of the entity (e.g. JiraProjectEntityType
)doesEntityExist(String, Class)
.public com.atlassian.applinks.host.spi.EntityReference toEntityReference(Object domainObject)
toEntityReference
in interface com.atlassian.applinks.host.spi.InternalHostApplication
domainObject
- an entity domain object from the application's API (e.g. com.atlassian.jira.project.Project,
com.atlassian.confluence.spaces.Space). Implementations are free to choose which objects supported by this class,
but the complete list should be maintained on the EntityLinkService
javadoc.EntityReference
initialised with the key and type of the
supplied domain object. This method need not perform any permission checking. Implementations should
delegate to the TypeAccessor
to resolve an instance of the
desired EntityType
.public com.atlassian.applinks.host.spi.EntityReference toEntityReference(String key, Class<? extends com.atlassian.applinks.api.EntityType> type)
toEntityReference
in interface com.atlassian.applinks.host.spi.InternalHostApplication
key
- the key of a local entity (e.g. "JRA", "FECRUDEV", "CR-BAM")type
- the class of the EntityType
of the entity (e.g. JiraProjectEntityType
)EntityReference
initialised with the key and type of the
supplied domain object. This method need not perform any permission checking. Implementations should
delegate to the TypeAccessor
to resolve an instance of the
specified EntityType
.IllegalArgumentException
- if the specified type is not assignable to JiraProjectEntityType
or
if no project with the specified key can be foundpublic boolean canManageEntityLinksFor(com.atlassian.applinks.host.spi.EntityReference entityReference)
canManageEntityLinksFor
in interface com.atlassian.applinks.host.spi.InternalHostApplication
entityReference
- an EntityReference
representing an entity
contained in the local application instance.true
if the current user has permission to link or unlink the specified EntityReference
to other entities, false
otherwise.
User requires to have either the JIRA Administrator or PROJECT ADMIN permission.public void setSkipPermissionCheck(boolean skip)
public void clearSkipPermissionCheck()
public boolean hasPublicSignup()
hasPublicSignup
in interface com.atlassian.applinks.host.spi.InternalHostApplication
true
if the host application allows public signup, false
otherwise.public com.atlassian.applinks.api.ApplicationId getId()
getId
in interface com.atlassian.applinks.host.spi.HostApplication
public URI getBaseUrl()
getBaseUrl
in interface com.atlassian.applinks.host.spi.HostApplication
public void start() throws Exception
Copyright © 2002-2015 Atlassian. All Rights Reserved.