net.sf.mmm.util.pojo.path.base
Class AbstractPojoPathNavigator.PojoPathCache

java.lang.Object
  extended by net.sf.mmm.util.pojo.path.base.AbstractPojoPathNavigator.PojoPathCache
Enclosing class:
AbstractPojoPathNavigator

protected static class AbstractPojoPathNavigator.PojoPathCache
extends Object

This inner class represents the cache for AbstractPojoPathNavigator.CachingPojoPaths based on an initial Pojo.


Field Summary
private  Map<String,AbstractPojoPathNavigator.CachingPojoPath> cache
          The actual cache that maps a PojoPath to the resulting AbstractPojoPathNavigator.CachingPojoPath.
private  int cachedHash
          The cached hash-code of the AbstractPojoPathNavigator.CachingPojoPath.pojo from the rootPath.
private  AbstractPojoPathNavigator.CachingPojoPath rootPath
          The root path.
 
Constructor Summary
AbstractPojoPathNavigator.PojoPathCache(Class<?> initialPojoClass, GenericType<?> initialPojoType)
          The constructor.
AbstractPojoPathNavigator.PojoPathCache(Object initialPojo)
          The constructor.
 
Method Summary
protected  AbstractPojoPathNavigator.PojoPathState createState(PojoPathMode mode, String pojoPath)
          This method creates a new AbstractPojoPathNavigator.PojoPathState instance based on this AbstractPojoPathNavigator.PojoPathCache.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cache

private final Map<String,AbstractPojoPathNavigator.CachingPojoPath> cache
The actual cache that maps a PojoPath to the resulting AbstractPojoPathNavigator.CachingPojoPath.


rootPath

private AbstractPojoPathNavigator.CachingPojoPath rootPath
The root path.


cachedHash

private int cachedHash
The cached hash-code of the AbstractPojoPathNavigator.CachingPojoPath.pojo from the rootPath.

Constructor Detail

AbstractPojoPathNavigator.PojoPathCache

public AbstractPojoPathNavigator.PojoPathCache(Object initialPojo)
The constructor.

Parameters:
initialPojo - is the initial Pojo for this cache.

AbstractPojoPathNavigator.PojoPathCache

public AbstractPojoPathNavigator.PojoPathCache(Class<?> initialPojoClass,
                                               GenericType<?> initialPojoType)
The constructor.

Parameters:
initialPojoClass - is the initial Pojo-class for this cache.
initialPojoType - is the initial Pojo-type for this cache.
Method Detail

createState

protected AbstractPojoPathNavigator.PojoPathState createState(PojoPathMode mode,
                                                              String pojoPath)
This method creates a new AbstractPojoPathNavigator.PojoPathState instance based on this AbstractPojoPathNavigator.PojoPathCache.

Parameters:
mode - is the mode that determines how to deal null values.
pojoPath - is the initial pojo-path.
Returns:
the new AbstractPojoPathNavigator.PojoPathState instance.


Copyright © 2001-2010 mmm-Team. All Rights Reserved.