View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *  http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  
20  //
21  // This source code implements specifications defined by the Java
22  // Community Process. In order to remain compliant with the specification
23  // DO NOT add / change / or delete method signatures!
24  //
25  package javax.persistence;
26  
27  /**
28   * @version $Rev: 467742 $ $Date: 2006-10-25 12:30:38 -0700 (Wed, 25 Oct 2006) $
29   */
30  public interface EntityManager {
31  
32  	public void persist(Object entity);
33  
34  	public <T> T merge(T entity);
35  
36  	public void remove(Object entity);
37  
38  	public <T> T find(Class<T> entityClass, Object primaryKey);
39  
40  	public <T> T getReference(Class<T> entityClass, Object primaryKey);
41  
42  	public void flush();
43  
44  	public void setFlushMode(FlushModeType flushMode);
45  
46  	public FlushModeType getFlushMode();
47  
48      public void lock(Object entity, LockModeType lockMode);
49  
50  	public void refresh(Object entity);
51  
52  	public void clear();
53  
54  	public boolean contains(Object entity);
55  
56  	public Query createQuery(String ejbqlString);
57  
58  	public Query createNamedQuery(String name);
59  
60  	public Query createNativeQuery(String sqlString);
61  
62  	public Query createNativeQuery(String sqlString, Class resultClass);
63  
64  	public Query createNativeQuery(String sqlString, String resultSetMapping);
65  
66  	public void close();
67  
68  	public boolean isOpen();
69  
70  	public EntityTransaction getTransaction();
71  
72  	public void joinTransaction();
73  
74  	public Object getDelegate();
75  }