public class Autolink
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static interface |
Autolink.LinkAttributeModifier |
static interface |
Autolink.LinkTextModifier |
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
cashtagClass |
protected java.lang.String |
cashtagUrlBase |
static java.lang.String |
DEFAULT_CASHTAG_CLASS
Default CSS class for auto-linked cashtag URLs
|
static java.lang.String |
DEFAULT_CASHTAG_URL_BASE
Default href for cashtag links (the cashtag without the $ will be appended)
|
static java.lang.String |
DEFAULT_HASHTAG_CLASS
Default CSS class for auto-linked hashtag URLs
|
static java.lang.String |
DEFAULT_HASHTAG_URL_BASE
Default href for hashtag links (the hashtag without the # will be appended)
|
static java.lang.String |
DEFAULT_INVISIBLE_TAG_ATTRS
Default attribute for invisible span tag
|
static java.lang.String |
DEFAULT_LIST_CLASS
Default CSS class for auto-linked list URLs
|
static java.lang.String |
DEFAULT_LIST_URL_BASE
Default href for list links (the username/list without the @ will be appended)
|
static java.lang.String |
DEFAULT_USERNAME_CLASS
Default CSS class for auto-linked username URLs
|
static java.lang.String |
DEFAULT_USERNAME_URL_BASE
Default href for username links (the username without the @ will be appended)
|
protected java.lang.String |
hashtagClass |
protected java.lang.String |
hashtagUrlBase |
protected java.lang.String |
invisibleTagAttrs |
protected Autolink.LinkAttributeModifier |
linkAttributeModifier |
protected Autolink.LinkTextModifier |
linkTextModifier |
protected java.lang.String |
listClass |
protected java.lang.String |
listUrlBase |
protected boolean |
noFollow |
protected java.lang.String |
symbolTag |
protected java.lang.String |
textWithSymbolTag |
protected java.lang.String |
urlClass |
protected java.lang.String |
urlTarget |
protected java.lang.String |
usernameClass |
protected boolean |
usernameIncludeSymbol |
protected java.lang.String |
usernameUrlBase |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
autoLink(java.lang.String originalText)
Auto-link hashtags, URLs, usernames and lists.
|
java.lang.String |
autoLinkCashtags(java.lang.String text)
Auto-link $cashtag references in the provided Tweet text.
|
java.lang.String |
autoLinkEntities(java.lang.String text,
java.util.List<Extractor.Entity> entities) |
java.lang.String |
autoLinkHashtags(java.lang.String text)
Auto-link #hashtag references in the provided Tweet text.
|
java.lang.String |
autoLinkURLs(java.lang.String text)
Auto-link URLs in the Tweet text provided.
|
java.lang.String |
autoLinkUsernamesAndLists(java.lang.String text)
Auto-link the @username and @username/list references in the provided text.
|
java.lang.String |
escapeBrackets(java.lang.String text) |
java.lang.String |
getCashtagClass()
Get CSS class for auto-linked cashtag URLs
|
java.lang.String |
getCashtagUrlBase()
Get the href value for cashtag links (to which the cashtag will be appended)
|
java.lang.String |
getHashtagClass()
Get CSS class for auto-linked hashtag URLs
|
java.lang.String |
getHashtagUrlBase()
Get the href value for hashtag links (to which the hashtag will be appended)
|
java.lang.String |
getListClass()
Get CSS class for auto-linked list URLs
|
java.lang.String |
getListUrlBase()
Get the href value for list links (to which the username/list will be appended)
|
java.lang.String |
getUrlClass()
Get CSS class for auto-linked URLs
|
java.lang.String |
getUsernameClass()
Get CSS class for auto-linked username URLs
|
java.lang.String |
getUsernameUrlBase()
Get the href value for username links (to which the username will be appended)
|
boolean |
isNoFollow()
Checks if the current URL links will include rel="nofollow" (true by default)
|
void |
linkToCashtag(Extractor.Entity entity,
java.lang.String text,
java.lang.StringBuilder builder) |
void |
linkToHashtag(Extractor.Entity entity,
java.lang.String text,
java.lang.StringBuilder builder) |
void |
linkToMentionAndList(Extractor.Entity entity,
java.lang.String text,
java.lang.StringBuilder builder) |
void |
linkToText(Extractor.Entity entity,
java.lang.CharSequence originalText,
java.util.Map<java.lang.String,java.lang.String> attributes,
java.lang.StringBuilder builder) |
void |
linkToTextWithSymbol(Extractor.Entity entity,
java.lang.CharSequence symbol,
java.lang.CharSequence originalText,
java.util.Map<java.lang.String,java.lang.String> attributes,
java.lang.StringBuilder builder) |
void |
linkToURL(Extractor.Entity entity,
java.lang.String text,
java.lang.StringBuilder builder) |
void |
setCashtagClass(java.lang.String cashtagClass)
Set the CSS class for auto-linked cashtag URLs
|
void |
setCashtagUrlBase(java.lang.String cashtagUrlBase)
Set the href base for cashtag links.
|
void |
setHashtagClass(java.lang.String hashtagClass)
Set the CSS class for auto-linked hashtag URLs
|
void |
setHashtagUrlBase(java.lang.String hashtagUrlBase)
Set the href base for hashtag links.
|
void |
setLinkAttributeModifier(Autolink.LinkAttributeModifier modifier)
Set a modifier to modify attributes of a link based on an entity
|
void |
setLinkTextModifier(Autolink.LinkTextModifier modifier)
Set a modifier to modify text of a link based on an entity
|
void |
setListClass(java.lang.String listClass)
Set the CSS class for auto-linked list URLs
|
void |
setListUrlBase(java.lang.String listUrlBase)
Set the href base for list links.
|
void |
setNoFollow(boolean noFollow)
Set if the current URL links will include rel="nofollow" (true by default)
|
void |
setSymbolTag(java.lang.String tag)
Set HTML tag to be applied around #/@/# symbols in hashtags/usernames/lists/cashtag
|
void |
setTextWithSymbolTag(java.lang.String tag)
Set HTML tag to be applied around text part of hashtags/usernames/lists/cashtag
|
void |
setUrlClass(java.lang.String urlClass)
Set the CSS class for auto-linked URLs
|
void |
setUrlTarget(java.lang.String target)
Set the value of the target attribute in auto-linked URLs
|
void |
setUsernameClass(java.lang.String usernameClass)
Set the CSS class for auto-linked username URLs
|
void |
setUsernameIncludeSymbol(boolean usernameIncludeSymbol)
Set if the at mark '@' should be included in the link (false by default)
|
void |
setUsernameUrlBase(java.lang.String usernameUrlBase)
Set the href base for username links.
|
public static final java.lang.String DEFAULT_LIST_CLASS
public static final java.lang.String DEFAULT_USERNAME_CLASS
public static final java.lang.String DEFAULT_HASHTAG_CLASS
public static final java.lang.String DEFAULT_CASHTAG_CLASS
public static final java.lang.String DEFAULT_USERNAME_URL_BASE
public static final java.lang.String DEFAULT_LIST_URL_BASE
public static final java.lang.String DEFAULT_HASHTAG_URL_BASE
public static final java.lang.String DEFAULT_CASHTAG_URL_BASE
public static final java.lang.String DEFAULT_INVISIBLE_TAG_ATTRS
protected java.lang.String urlClass
protected java.lang.String listClass
protected java.lang.String usernameClass
protected java.lang.String hashtagClass
protected java.lang.String cashtagClass
protected java.lang.String usernameUrlBase
protected java.lang.String listUrlBase
protected java.lang.String hashtagUrlBase
protected java.lang.String cashtagUrlBase
protected java.lang.String invisibleTagAttrs
protected boolean noFollow
protected boolean usernameIncludeSymbol
protected java.lang.String symbolTag
protected java.lang.String textWithSymbolTag
protected java.lang.String urlTarget
protected Autolink.LinkAttributeModifier linkAttributeModifier
protected Autolink.LinkTextModifier linkTextModifier
public java.lang.String escapeBrackets(java.lang.String text)
public void linkToText(Extractor.Entity entity, java.lang.CharSequence originalText, java.util.Map<java.lang.String,java.lang.String> attributes, java.lang.StringBuilder builder)
public void linkToTextWithSymbol(Extractor.Entity entity, java.lang.CharSequence symbol, java.lang.CharSequence originalText, java.util.Map<java.lang.String,java.lang.String> attributes, java.lang.StringBuilder builder)
public void linkToHashtag(Extractor.Entity entity, java.lang.String text, java.lang.StringBuilder builder)
public void linkToCashtag(Extractor.Entity entity, java.lang.String text, java.lang.StringBuilder builder)
public void linkToMentionAndList(Extractor.Entity entity, java.lang.String text, java.lang.StringBuilder builder)
public void linkToURL(Extractor.Entity entity, java.lang.String text, java.lang.StringBuilder builder)
public java.lang.String autoLinkEntities(java.lang.String text, java.util.List<Extractor.Entity> entities)
public java.lang.String autoLink(java.lang.String originalText)
originalText
- of the Tweet to auto-linkpublic java.lang.String autoLinkUsernamesAndLists(java.lang.String text)
text
- of the Tweet to auto-linkpublic java.lang.String autoLinkHashtags(java.lang.String text)
text
- of the Tweet to auto-linkpublic java.lang.String autoLinkURLs(java.lang.String text)
text
- of the Tweet to auto-linkpublic java.lang.String autoLinkCashtags(java.lang.String text)
text
- of the Tweet to auto-linkpublic java.lang.String getUrlClass()
public void setUrlClass(java.lang.String urlClass)
urlClass
- new CSS value.public java.lang.String getListClass()
public void setListClass(java.lang.String listClass)
listClass
- new CSS value.public java.lang.String getUsernameClass()
public void setUsernameClass(java.lang.String usernameClass)
usernameClass
- new CSS value.public java.lang.String getHashtagClass()
public void setHashtagClass(java.lang.String hashtagClass)
hashtagClass
- new CSS value.public java.lang.String getCashtagClass()
public void setCashtagClass(java.lang.String cashtagClass)
cashtagClass
- new CSS value.public java.lang.String getUsernameUrlBase()
public void setUsernameUrlBase(java.lang.String usernameUrlBase)
usernameUrlBase
- new href base valuepublic java.lang.String getListUrlBase()
public void setListUrlBase(java.lang.String listUrlBase)
listUrlBase
- new href base valuepublic java.lang.String getHashtagUrlBase()
public void setHashtagUrlBase(java.lang.String hashtagUrlBase)
hashtagUrlBase
- new href base valuepublic java.lang.String getCashtagUrlBase()
public void setCashtagUrlBase(java.lang.String cashtagUrlBase)
cashtagUrlBase
- new href base valuepublic boolean isNoFollow()
public void setNoFollow(boolean noFollow)
noFollow
- new noFollow valuepublic void setUsernameIncludeSymbol(boolean usernameIncludeSymbol)
usernameIncludeSymbol
- if username includes symbolpublic void setSymbolTag(java.lang.String tag)
tag
- HTML tag without bracket. e.g., "b" or "s"public void setTextWithSymbolTag(java.lang.String tag)
tag
- HTML tag without bracket. e.g., "b" or "s"public void setUrlTarget(java.lang.String target)
target
- target value e.g., "_blank"public void setLinkAttributeModifier(Autolink.LinkAttributeModifier modifier)
modifier
- LinkAttributeModifier instancepublic void setLinkTextModifier(Autolink.LinkTextModifier modifier)
modifier
- LinkTextModifier instance