info.magnolia.cms.beans.config
Class RegexpVirtualURIMapping

java.lang.Object
  extended by info.magnolia.cms.beans.config.RegexpVirtualURIMapping
All Implemented Interfaces:
QueryAwareVirtualURIMapping, VirtualURIMapping
Direct Known Subclasses:
RotatingVirtualURIMapping

public class RegexpVirtualURIMapping
extends Object
implements QueryAwareVirtualURIMapping

Query aware virtual uri mapping implementation that uses regular expressions in fromURI/toURI. When using regular expression in fromURI, toURI can contain references to the regexp matches. For example:

 fromURI=/products/([0-9A-Z]+)\.html\?available(true|false)
 toURI=/product/detail.html?productId=$1&available=$2
 

Version:
$Id: DefaultVirtualURIMapping.java 10295 2007-08-02 21:33:58Z fgiust $
Author:
Fabrizio Giustina, philipp

Nested Class Summary
 
Nested classes/interfaces inherited from interface info.magnolia.cms.beans.config.VirtualURIMapping
VirtualURIMapping.MappingResult
 
Constructor Summary
RegexpVirtualURIMapping()
           
 
Method Summary
 String getFromURI()
           
 String getToURI()
           
 VirtualURIMapping.MappingResult mapURI(String uri)
          Maps an incoming URI to a new target URI.
 VirtualURIMapping.MappingResult mapURI(String uri, String queryString)
          Maps an incoming URI and queryString to a new target URI.
 void setFromURI(String fromURI)
           
 void setToURI(String toURI)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RegexpVirtualURIMapping

public RegexpVirtualURIMapping()
Method Detail

mapURI

public VirtualURIMapping.MappingResult mapURI(String uri)
Description copied from interface: VirtualURIMapping
Maps an incoming URI to a new target URI. Returns a VirtualURIMapping.MappingResult describing the new URI and the level of match. The new URI can be prefixed with "redirect:", "permanent:" or "forward:" to trigger either a temporary redirect, a permanent redirect or a forward respectively. For redirects the URI can be absolute or relative within the web application (the context path is added automatically). If the mapping does not apply to the input URI this method returns null.

Specified by:
mapURI in interface VirtualURIMapping
Parameters:
uri - the URI of the current request, decoded and without the context path
Returns:
a VirtualURIMapping.MappingResult with the target URI and level or null if the mapping doesn't apply

mapURI

public VirtualURIMapping.MappingResult mapURI(String uri,
                                              String queryString)
Description copied from interface: QueryAwareVirtualURIMapping
Maps an incoming URI and queryString to a new target URI. Returns a VirtualURIMapping.MappingResult describing the new URI and the level of match. The new URI can be prefixed with "redirect:", "permanent:" or "forward:" to trigger either a temporary redirect, a permanent redirect or a forward respectively. For redirects the URI can be absolute or relative within the web application (the context path is added automatically). If the mapping does not apply to the input URI this method returns null.

Specified by:
mapURI in interface QueryAwareVirtualURIMapping
Parameters:
uri - the URI of the current request, decoded and without the context path
queryString - the Query String of the current request
Returns:
a VirtualURIMapping.MappingResult with the target URI and level or null if the mapping doesn't apply

getFromURI

public String getFromURI()

setFromURI

public void setFromURI(String fromURI)

getToURI

public String getToURI()

setToURI

public void setToURI(String toURI)

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2003-2012 Magnolia International Ltd.. All Rights Reserved.