KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > javax > persistence > FlushModeType


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23 package javax.persistence;
24
25 /**
26  * Flush mode setting.
27  *
28  * <p> When queries are executed within a transaction, if
29  * <code>FlushModeType.AUTO</code> is set on the {@link Query}
30  * object, or if the flush mode setting for the persistence context
31  * is <code>AUTO</code> (the default) and a flush mode setting has
32  * not been specified for the {@link Query} object, the persistence
33  * provider is responsible for ensuring that all updates to the state
34  * of all entities in the persistence context which could potentially
35  * affect the result of the query are visible to the processing
36  * of the query. The persistence provider implementation may achieve
37  * this by flushing those entities to the database or by some other
38  * means. If <code>FlushModeType.COMMIT</code> is set, the effect
39  * of updates made to entities in the persistence context upon
40  * queries is unspecified.
41  *
42  * <p> If there is no transaction active, the persistence provider
43  * must not flush to the database.
44  *
45  * @since Java Persistence 1.0
46  */

47 public enum FlushModeType {
48
49     /** Flushing must occur only at transaction commit */
50     COMMIT,
51
52     /** (Default) Flushing to occur at query execution */
53     AUTO
54 }
55
Popular Tags