com.atlassian.plugins.rest.common.expand
Class AbstractRecursiveEntityExpander<T>

java.lang.Object
  extended by com.atlassian.plugins.rest.common.expand.AbstractRecursiveEntityExpander<T>
All Implemented Interfaces:
EntityExpander<T>
Direct Known Subclasses:
SelfExpandingExpander

public abstract class AbstractRecursiveEntityExpander<T>
extends java.lang.Object
implements EntityExpander<T>


Constructor Summary
AbstractRecursiveEntityExpander()
           
 
Method Summary
 T expand(ExpandContext<T> context, EntityExpanderResolver expanderResolver, EntityCrawler entityCrawler)
           
protected abstract  T expandInternal(T entity)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractRecursiveEntityExpander

public AbstractRecursiveEntityExpander()
Method Detail

expand

public final T expand(ExpandContext<T> context,
                      EntityExpanderResolver expanderResolver,
                      EntityCrawler entityCrawler)
Specified by:
expand in interface EntityExpander<T>
Parameters:
context - the current entity context
expanderResolver - the resolver for finding further expander when doing recursive expansion.
entityCrawler - the entity crawler to be used for recursive expansion.
Returns:
the expanded entity. This can be a completely different object (of the same type). This MUST NOT be null.

expandInternal

protected abstract T expandInternal(T entity)


Copyright © 2014 Atlassian. All Rights Reserved.