001package com.avaje.ebean.annotation; 002 003import java.lang.annotation.ElementType; 004import java.lang.annotation.Retention; 005import java.lang.annotation.RetentionPolicy; 006import java.lang.annotation.Target; 007 008/** 009 * Specify the property is included in the parent document store index. 010 * 011 * <pre>{@code 012 * 013 * 014 * @DocStore 015 * @Entity @Table(name = "o_order") 016 * public class Order { 017 * 018 * ... 019 * // include some customer details including 020 * // nested billingAddress 021 * @DocEmbedded(doc = "id,status,name,billingAddress(*,country(*)") 022 * @ManyToOne 023 * Customer customer; 024 * 025 * 026 * }</pre> 027 */ 028@Target({ ElementType.FIELD }) 029@Retention(RetentionPolicy.RUNTIME) 030public @interface DocEmbedded { 031 032 /** 033 * The properties on the embedded bean to include in the index. 034 */ 035 String doc() default ""; 036 037}