2
* $Id: PgView.java 84 2007-09-09 16:18:16Z fordfrog $
4
package cz.startnet.utils.pgdiff.schema;
6
import cz.startnet.utils.pgdiff.PgDiffUtils;
10
* Stores view information.
13
* @version $Id: PgView.java 84 2007-09-09 16:18:16Z fordfrog $
17
* String specifying column names.
19
private String columnNames;
24
private final String name;
27
* SQL query of the view.
32
* Creates a new PgView object.
34
* @param name {@link #name}
36
public PgView(final String name) {
42
* Setter for {@link #columnNames}.
44
* @param columnNames {@link #columnNames}
46
public void setColumnNames(final String columnNames) {
47
this.columnNames = columnNames;
51
* Getter for {@link #columnNames}.
53
* @return {@link #columnNames}
55
public String getColumnNames() {
60
* Creates and returns SQL for creation of the view.
62
* @param quoteNames whether names should be quoted
64
* @return created SQL command
66
public String getCreationSQL(final boolean quoteNames) {
67
final StringBuilder sbSQL = new StringBuilder();
68
sbSQL.append("CREATE VIEW ");
69
sbSQL.append(PgDiffUtils.getQuotedName(name, quoteNames));
71
if ((columnNames != null) && (columnNames.length() > 0)) {
73
sbSQL.append(columnNames);
77
sbSQL.append(" AS\n\t");
81
return sbSQL.toString();
85
* Creates and returns SQL command for dropping the view.
87
* @param quoteNames whether names should be quoted
89
* @return created SQL command
91
public String getDropSQL(final boolean quoteNames) {
92
return "DROP VIEW " + PgDiffUtils.getQuotedName(getName(), quoteNames)
97
* Getter for {@link #name}.
99
* @return {@link #name}
101
public String getName() {
106
* Setter for {@link #query}.
108
* @param query {@link #query}
110
public void setQuery(final String query) {
115
* Getter for {@link #query}.
117
* @return {@link #query}
119
public String getQuery() {