001package io.ebean.meta;
002
003import io.ebean.bean.ObjectGraphNode;
004
005/**
006 * Holds a query 'origin' point and count for the number of queries executed for
007 * this 'origin'.
008 * <p>
009 * This basically points to the bit of original code and query that results in
010 * this query directly or via lazy loading.
011 * </p>
012 */
013public interface MetaOrmQueryOrigin {
014
015  /**
016   * The 'origin' and path which this query belongs to.
017   * <p>
018   * For lazy loading queries this points to the original query and associated
019   * navigation path that resulted in this query being executed.
020   * </p>
021   */
022  ObjectGraphNode getObjectGraphNode();
023
024  /**
025   * The number of times a query was fired for this node since the counter was
026   * last reset.
027   */
028  long getCount();
029
030}