Package jadex.extension.rs.publish
Class PathManager<T>
- java.lang.Object
 - 
- jadex.extension.rs.publish.PathManager<T>
 
 
- 
public class PathManager<T> extends java.lang.ObjectThe path manager helps resolving elements (handlers) for path with variables, e.g. a/{varb}/c. Using getBindings() one can get the concrete variable bindings for a given path/handler. 
- 
- 
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<T,java.lang.String>addedpathsThe exactly added paths of elements.protected java.util.List<java.util.Map<java.lang.String,java.util.Collection<T>>>pathpartsThe list with maps per level. 
- 
Constructor Summary
Constructors Constructor Description PathManager()Create a new info. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddPathElement(java.lang.String path, T elem)Adds a new info.java.util.Map<java.lang.String,java.lang.String>getBindingsForPath(java.lang.String path)Get the variable bindings for path variables.TgetElementForPath(java.lang.String path)Get the element for a path.java.util.Collection<T>getElements()Get the added elements.java.util.Collection<T>getElementsForPath(java.lang.String path)Get the element for a path.intgetPathDepth(java.lang.String path)Get the path depth of an element.intgetPathDepth(T elem)Get the path depth of an element.java.lang.StringgetPathForElement(T elem)Get the path for an element.protected java.util.Map<java.lang.String,java.util.Collection<T>>getPathPartMap(int level, boolean add)Get a path part map for a level.static voidmain(java.lang.String[] args)Main for testing.voidremoveElementForPath(java.lang.String path)intsize()Get the number of added paths. 
 - 
 
- 
- 
Field Detail
- 
pathparts
protected java.util.List<java.util.Map<java.lang.String,java.util.Collection<T>>> pathparts
The list with maps per level. Each level has a map for looking up suitable elements. The results must be cut set. 
- 
addedpaths
protected java.util.Map<T,java.lang.String> addedpaths
The exactly added paths of elements. 
 - 
 
- 
Method Detail
- 
addPathElement
public void addPathElement(java.lang.String path, T elem)Adds a new info.- Parameters:
 path- The path.elem- The element.
 
- 
getElementForPath
public T getElementForPath(java.lang.String path)
Get the element for a path.- Parameters:
 path- The path.- Returns:
 - The element.
 
 
- 
getElementsForPath
public java.util.Collection<T> getElementsForPath(java.lang.String path)
Get the element for a path.- Parameters:
 path- The path.- Returns:
 - The element.
 
 
- 
removeElementForPath
public void removeElementForPath(java.lang.String path)
- Parameters:
 vhost- Virtual host specification.path- Path being handled.
 
- 
getBindingsForPath
public java.util.Map<java.lang.String,java.lang.String> getBindingsForPath(java.lang.String path)
Get the variable bindings for path variables.- Parameters:
 path- The path.- Returns:
 - The variables for the path.
 
 
- 
getPathPartMap
protected java.util.Map<java.lang.String,java.util.Collection<T>> getPathPartMap(int level, boolean add)
Get a path part map for a level.- Parameters:
 level- The level.- Returns:
 - The map or null.
 
 
- 
getPathDepth
public int getPathDepth(java.lang.String path)
Get the path depth of an element.- Parameters:
 path- The path.- Returns:
 - The path depth.
 
 
- 
getPathDepth
public int getPathDepth(T elem)
Get the path depth of an element.- Parameters:
 elem- The element.- Returns:
 - The path depth.
 
 
- 
getPathForElement
public java.lang.String getPathForElement(T elem)
Get the path for an element.- Parameters:
 elem- The element.- Returns:
 - The added path.
 
 
- 
size
public int size()
Get the number of added paths.- Returns:
 - The number of added paths.
 
 
- 
getElements
public java.util.Collection<T> getElements()
Get the added elements. 
- 
main
public static void main(java.lang.String[] args)
Main for testing. 
 - 
 
 -