Class ResourceReference
- java.lang.Object
-
- org.xwiki.rendering.listener.reference.ResourceReference
-
- All Implemented Interfaces:
Cloneable
- Direct Known Subclasses:
AttachmentResourceReference,DocumentResourceReference,InterWikiResourceReference,PageAttachmentResourceReference,PageResourceReference,SpaceResourceReference,UserResourceReference
public class ResourceReference extends Object implements Cloneable
Represents a reference to a Resource (document, image, attachment, mail, etc). Note that this representation is independent of any wiki syntax.- Since:
- 2.5RC1
- Version:
- $Id: 49e36a630db30c6c7f7a76f7106c84fa78bc3509 $
-
-
Constructor Summary
Constructors Constructor Description ResourceReference(String reference, ResourceType type)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddBaseReference(String baseReference)voidaddBaseReferences(List<String> baseReferences)ResourceReferenceclone()booleanequals(Object object)List<String>getBaseReferences()StringgetParameter(String name)In order for Resource references to be extensible we allow for extra parameters in addition to the Resource reference.Map<String,String>getParameters()StringgetReference()ResourceTypegetType()inthashCode()booleanisTyped()voidremoveParameter(String name)voidsetParameter(String name, String value)voidsetParameters(Map<String,String> parameters)voidsetReference(String reference)voidsetType(ResourceType type)voidsetTyped(boolean typed)StringtoString()
-
-
-
Constructor Detail
-
ResourceReference
public ResourceReference(String reference, ResourceType type)
- Parameters:
reference- seegetReference()type- seegetType()
-
-
Method Detail
-
setTyped
public void setTyped(boolean typed)
- Parameters:
typed- seeisTyped()
-
isTyped
public boolean isTyped()
- Returns:
- true if the resource type has been explicitly provided (eg in XWiki Syntax 2.1 if the reference is prefixed with the resource type followed by ":" and then the rest of the reference)
-
setReference
public void setReference(String reference)
- Parameters:
reference- seegetReference()
-
getReference
public String getReference()
- Returns:
- the reference pointed to by this resource. For example a reference can be a document's name (which depends on the wiki, for example for XWiki the format is "wiki:space.page"), a URI (for example: mailto:john@doe.com), a URL, an Inter Wiki reference, etc
- See Also:
getType()
-
addBaseReference
public void addBaseReference(String baseReference)
- Parameters:
baseReference- seegetBaseReferences()
-
addBaseReferences
public void addBaseReferences(List<String> baseReferences)
- Parameters:
baseReferences- seegetBaseReferences()
-
getBaseReferences
public List<String> getBaseReferences()
- Returns:
- the base references to use when we need to compute an absolute reference and
getReference()returns a non absolute reference, can benull. When resolving references the list should be evaluated from first to last (the last entries qualifying the entries earlier in the list)
-
getType
public ResourceType getType()
- Returns:
- the type of the resource
- See Also:
ResourceType
-
setType
public void setType(ResourceType type)
- Parameters:
type- the type of the resource- See Also:
ResourceType
-
setParameter
public void setParameter(String name, String value)
- Parameters:
name- seegetParameter(String)value- seegetParameter(String)
-
setParameters
public void setParameters(Map<String,String> parameters)
- Parameters:
parameters- seegetParameters()
-
removeParameter
public void removeParameter(String name)
- Parameters:
name- seegetParameter(String)
-
getParameter
public String getParameter(String name)
In order for Resource references to be extensible we allow for extra parameters in addition to the Resource reference. For example this is used in Document Resource References for storing the query string and anchor information, and in InterWiki Resource References to store the InterWiki Alias. Note that supported parameters depend on the Renderer that will be used (i.e. it depends on the target Syntax). For example the XWiki Syntax 2.1 only supports "queryString" and "anchor".- Parameters:
name- the name of the parameter to get- Returns:
- the parameter value or null if no such parameter exist
-
getParameters
public Map<String,String> getParameters()
- Returns:
- the collections of parameters, see
getParameter(String). Returns parameters in the same order they were added.
-
toString
public String toString()
The output is syntax independent since this class is used for all syntaxes. Specific syntaxes should extend this class and override this method to perform syntax-dependent formatting.
- Overrides:
toStringin classObject- See Also:
Object.toString()
-
clone
public ResourceReference clone()
-
-