@Immutable @ExperimentalApi public interface HelpUrlsParser
HelpUrls
from name-value pairs.
Consider the following properties file:
url-prefix=https:///DOCS/docs-${docs.version}/ url-prefix.ondemand=https://CAC/display/AOD/ jira101.url=JIRA+101 jira101.url.ondemand=JIRA+OnDemand jira101.title=JIRA 101 jira101.title.ondemand=JIRA OnDemand default.url = Index default.title = JIRA HelpIt OnDemand it produces a
HelpUrls
where:
urls.getDefault() == HelpUrl{url: https://CAC/display/AOD/Index, title: "JIRA Help"}
urls.get(default) == HelpUrl{url: https://CAC/display/AOD/Index, title: "JIRA Help"}
urls.get(jira101) == HelpUrl{url: https://CAC/display/AOD/JIRA+OnDemand, title: "JIRA OnDemand"}
urls.get(anyOtherKey) == HelpUrl{url: https://CAC/display/AOD/Index, title: "JIRA Help"}
urls.getDefault() == HelpUrl{url: https:///DOCS/docs-062/Index, title: "JIRA Help"}
urls.get(default) == HelpUrl{url: https:///DOCS/docs-062/Index, title: "JIRA Help"}
urls.get(jira101) == HelpUrl{url: https:///DOCS/docs-062/JIRA+101, title: "JIRA 101"}
urls.get(anyOtherKey) == HelpUrl{url: https:///DOCS/docs-062/Index, title: "JIRA Help"}
defaultUrl(String, String)
is used when a default URL is not configured
in the passed properties.
An injected instance is configured with the default url being null (i.e. defaultUrl(null, null)
) and
with the correct OnDemand status (i.e. onDemand(inOnDemand)
). The object is immutable, however, you can
easily create new instances of HelpUrlParser
with different settings using onDemand(boolean)
or
defaultUrl(String, String)
.Modifier and Type | Method and Description |
---|---|
HelpUrlsParser |
defaultUrl(String url,
String title)
Returns a new parser that will use the passed URL (title) in URLs that don't have a URL (title) set.
|
HelpUrlsParser |
onDemand(boolean onDemand)
Returns a new parser that will either use or ignore
.ondemand properties. |
HelpUrls |
parse(Map<String,String> properties)
Parse the passed properties and return an equivalent
HelpUrls instance. |
HelpUrls |
parse(Properties properties)
Parse the passed properties and return an equivalent
HelpUrls instance. |
HelpUrls |
parse(Properties externalProperties,
Properties internalProperties)
Parse the passed properties and return an equivalent
HelpUrls instance. |
@Nonnull HelpUrlsParser onDemand(boolean onDemand)
.ondemand
properties.onDemand
- true
if the parser should use .ondemand
properties, or false
if they
should be ignored..ondemand
properties@Nonnull HelpUrlsParser defaultUrl(String url, String title)
url
- the default URL.title
- the default title of the URL.HelpUrl
configured.@Nonnull HelpUrls parse(@Nonnull Properties properties)
HelpUrls
instance.properties
- the properties to parse.HelpUrls
representation of the passed properties.@Internal @Nonnull HelpUrls parse(@Nonnull Properties externalProperties, @Nonnull Properties internalProperties)
HelpUrls
instance.
This method should not be called by plugins as the format of internalProperties
is not documented
and is subject to change.
externalProperties
- the properties to parse.internalProperties
- the internal properties to parse. These properties follow a different format to the
that documented on this interface and should only be used by JIRA internally.HelpUrls
representation of the passed properties.Copyright © 2002-2015 Atlassian. All Rights Reserved.