View Javadoc

1   /* (c) Copyright 2003 Caleigo AB, All rights reserved. 
2    * 
3    * This library is free software; you can redistribute it and/or
4    * modify it under the terms of the GNU Lesser General Public
5    * License as published by the Free Software Foundation; either
6    * version 2.1 of the License, or (at your option) any later version.
7    * 
8    * This library is distributed in the hope that it will be useful,
9    * but WITHOUT ANY WARRANTY; without even the implied warranty of
10   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11   * Lesser General Public License for more details.
12   * 
13   * You should have received a copy of the GNU Lesser General Public
14   * License along with this library; if not, write to the Free Software
15   * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16   *  
17   */
18  
19  package org.caleigo.core;
20  
21  /*** The IFieldRelation interface defines a link between two different field 
22   * descriptors. An IFieldRelation is allways an agregate of an IEntityRelation
23   * that defines a link between two IEntityRelation objects. The relation 
24   * objects does combined with the descriptor objects form a travesable graph.
25   *
26   * @author  Dennis Zikovic
27   * @version 1.00
28   *
29   *//* 
30   *
31   * WHEN        WHO               WHY & WHAT
32   * -----------------------------------------------------------------------------
33   * 2001-11-13  Dennis Zikovic    Creation
34   */
35  public interface IFieldRelation extends java.io.Serializable
36  {
37      /*** Access method that return the IEntityRelation that the called
38       * IFieldRelation is a part of.
39       */ 
40      public IEntityRelation getEntityRelation();
41      
42      /*** Access method that return the IFieldDescriptor that is the 
43       * source/reference field that addresses another field. In RDB terms the
44       * reference field is or should be defined as a foreign key.  
45       */ 
46      public IFieldDescriptor getReferenceField();
47      
48      /*** Access method that return the IFieldDescriptor that is the 
49       * target field that are addressed by the reference field. In RDB terms the
50       * target field is usually a primary-key field.  
51       */ 
52      public IFieldDescriptor getTargetField();
53  }
54