1 /*
2 QueryJ
3
4 Copyright (C) 2002 Jose San Leandro Armend?riz
5 jsanleandro@yahoo.es
6 chousz@yahoo.com
7
8 This library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU General Public
10 License as published by the Free Software Foundation; either
11 version 2.1 of the License, or (at your option) any later version.
12
13 This library is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 General Public License for more details.
17
18 You should have received a copy of the GNU General Public
19 License along with this library; if not, write to the Free Software
20 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21
22 Thanks to ACM S.L. for distributing this library under the GPL license.
23 Contact info: jsanleandro@yahoo.es
24 Postal Address: c/Playa de Lagoa, 1
25 Urb. Valdecaba?as
26 Boadilla del monte
27 28660 Madrid
28 Spain
29
30 ******************************************************************************
31 *
32 * Filename: $RCSfile: Table.java,v $
33 *
34 * Author: Jose San Leandro Armend?riz
35 *
36 * Description: Represents relational tables.
37 *
38 * Last modified by: $Author: chous $ at $Date: 2003/08/29 08:15:00 $
39 *
40 * File version: $Revision: 1.1 $
41 *
42 * Project version: $Name: $
43 *
44 * $Id: Table.java,v 1.1 2003/08/29 08:15:00 chous Exp $
45 *
46 */
47 package org.acmsl.queryj;
48
49 /*
50 * Importing ACM-SL classes.
51 */
52 import org.acmsl.queryj.Field;
53 import org.acmsl.queryj.TableAlias;
54
55 /***
56 * Represents relational tables.
57 * @author <a href="mailto:jsanleandro@yahoo.es">Jose San Leandro</a>
58 * @version $Revision: 1.1 $
59 */
60 public abstract class Table
61 {
62 /***
63 * The table name.
64 */
65 public String m__strName;
66
67 /***
68 * Builds a table using given information.
69 * @param name the name.
70 */
71 protected Table(String name)
72 {
73 unmodifiableSetName(name);
74 }
75
76 /***
77 * Retrieves <code>all</code> fields. It's equivalent to a star in
78 * a query.
79 * @return such fields.
80 */
81 public abstract Field[] getAll();
82
83 /***
84 * Specifies the table name.
85 * @param name the name.
86 */
87 private void unmodifiableSetName(String name)
88 {
89 m__strName = name;
90 }
91
92 /***
93 * Specifies the table name.
94 * @param name the name.
95 */
96 protected void setName(String name)
97 {
98 unmodifiableSetName(name);
99 }
100
101 /***
102 * Retrieves the table name.
103 * @return such reference.
104 */
105 public String getName()
106 {
107 return m__strName;
108 }
109
110 /***
111 * Outputs a text version of the table.
112 * @return the table.
113 */
114 public String toString()
115 {
116 return getName();
117 }
118 }
This page was automatically generated by Maven