1 package com.atlassian.plugins.rest.common.expand;
2
3 import com.atlassian.plugins.rest.common.expand.parameter.ExpandParameter;
4
5 /**
6 * The context for expansions.
7 *
8 * @param <T> The type of the entity being expanded.
9 */
10 public interface ExpandContext<T> {
11 /**
12 * @return the expandable annotation on the field that is the entity being expanded.
13 */
14 Expandable getExpandable();
15
16 /**
17 * @return the entity being expanded
18 */
19 T getEntity();
20
21 /**
22 * @return the expand parameter used to match the entity being expanded.
23 */
24 ExpandParameter getEntityExpandParameter();
25 }