Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: ojb/broker/PersistentObject.java


1   package ojb.broker;
2   
3   import java.util.Vector;
4   /**
5    * The PersistenceBroker allows to make objects of arbitrary classes persistent.
6    * They don't have to be derived from PersistentObject.
7    * But when Business-objects are not to be derived from a special class it may be a
8    * good idea to use PersistentObject as the base class.
9    * Persistent Objects manages the persistence brokers functionalities with
10   * convenient wrapper methods
11   * @see ojb.examples.broker.PersistentArticle as an example
12   *
13   * @author <a href="mailto:thomas.mahler@itellium.com">Thomas Mahler<a>
14   */
15  public class PersistentObject implements Persistent {
16  
17    /** The PersistenceBroker */
18    private static PersistenceBroker _TheBroker = null;
19  
20  
21  
22    /**
23     * Make an object persistent. generates and execute either UPDATE or INSERT
24     * Statement.
25     */
26    public void store() {
27    _TheBroker.store(this);
28    }        
29  
30    /**
31     * generates and executes a DELETE Statement that remove the objects
32     * representation from the underlying database.
33     */
34    public void delete() {
35    _TheBroker.delete(this);
36    }        
37  
38  
39  
40  /**
41     * return reference to PersistenceBroker
42     */
43  private static PersistenceBroker getBroker()
44  {
45    if (_TheBroker == null)
46      _TheBroker = PersistenceBrokerFactory.createPersistenceBroker();
47    return _TheBroker;
48  }/**
49     * The Object Factory for persistent objects. the Vector pkValues must contain
50     * Values for all Primary key fields of the Objects underlying database table
51     */
52  public static PersistentObject getObjectByIdentity(Identity oid)
53  {
54    return (PersistentObject) getBroker().getObjectByIdentity(oid);
55  }}