You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2013/02/24 12:53:38 UTC
svn commit: r1449462 [2/3] - in
/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src:
main/java/org/apache/cayenne/access/
main/java/org/apache/cayenne/access/jdbc/
main/java/org/apache/cayenne/access/trans/
main/java/org/apache/cayenne/dba/ ma...
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBAdapter.java Sun Feb 24 11:53:37 2013
@@ -31,7 +31,6 @@ import org.apache.cayenne.access.types.E
import org.apache.cayenne.configuration.Constants;
import org.apache.cayenne.configuration.RuntimeProperties;
import org.apache.cayenne.dba.JdbcAdapter;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.di.Inject;
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.map.DbEntity;
@@ -69,8 +68,7 @@ public class HSQLDBAdapter extends JdbcA
* @since 1.2
*/
protected String getTableName(DbEntity entity) {
- QuotingStrategy context = getQuotingStrategy(entity.getDataMap().isQuotingSQLIdentifiers());
- return context.quotedFullyQualifiedName(entity);
+ return quotingStrategy.quotedFullyQualifiedName(entity);
}
/**
@@ -100,13 +98,7 @@ public class HSQLDBAdapter extends JdbcA
*/
@Override
public String createUniqueConstraint(DbEntity source, Collection<DbAttribute> columns) {
- boolean status;
- if (source.getDataMap() != null && source.getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- } else {
- status = false;
- }
- QuotingStrategy context = getQuotingStrategy(status);
+
if (columns == null || columns.isEmpty()) {
throw new CayenneRuntimeException("Can't create UNIQUE constraint - no columns specified.");
}
@@ -119,17 +111,17 @@ public class HSQLDBAdapter extends JdbcA
buf.append(" ADD CONSTRAINT ");
String name = "U_" + source.getName() + "_" + (long) (System.currentTimeMillis() / (Math.random() * 100000));
- buf.append(context.quotedIdentifier(source.getSchema(), name));
+ buf.append(quotingStrategy.quotedIdentifier(source, source.getSchema(), name));
buf.append(" UNIQUE (");
Iterator<DbAttribute> it = columns.iterator();
DbAttribute first = it.next();
- buf.append(context.quotedIdentifier(first.getName()));
+ buf.append(quotingStrategy.quotedName(first));
while (it.hasNext()) {
DbAttribute next = it.next();
buf.append(", ");
- buf.append(context.quotedIdentifier(next.getName()));
+ buf.append(quotingStrategy.quotedName(next));
}
buf.append(")");
@@ -144,14 +136,7 @@ public class HSQLDBAdapter extends JdbcA
*/
@Override
public String createFkConstraint(DbRelationship rel) {
- boolean status;
- if ((rel.getSourceEntity().getDataMap() != null)
- && rel.getSourceEntity().getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- } else {
- status = false;
- }
- QuotingStrategy context = getQuotingStrategy(status);
+
StringBuilder buf = new StringBuilder();
StringBuilder refBuf = new StringBuilder();
@@ -169,7 +154,7 @@ public class HSQLDBAdapter extends JdbcA
DbEntity sourceEntity = (DbEntity) rel.getSourceEntity();
- buf.append(context.quotedIdentifier(sourceEntity.getSchema(), name));
+ buf.append(quotingStrategy.quotedIdentifier(sourceEntity, sourceEntity.getSchema(), name));
buf.append(" FOREIGN KEY (");
boolean first = true;
@@ -180,8 +165,8 @@ public class HSQLDBAdapter extends JdbcA
} else
first = false;
- buf.append(context.quotedIdentifier(join.getSourceName()));
- refBuf.append(context.quotedIdentifier(join.getTargetName()));
+ buf.append(quotingStrategy.quotedSourceName(join));
+ refBuf.append(quotingStrategy.quotedTargetName(join));
}
buf.append(") REFERENCES ");
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBNoSchemaAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBNoSchemaAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBNoSchemaAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLDBNoSchemaAdapter.java Sun Feb 24 11:53:37 2013
@@ -27,7 +27,6 @@ import org.apache.cayenne.access.types.E
import org.apache.cayenne.access.types.ExtendedTypeFactory;
import org.apache.cayenne.configuration.Constants;
import org.apache.cayenne.configuration.RuntimeProperties;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.di.Inject;
import org.apache.cayenne.map.DbEntity;
@@ -52,8 +51,7 @@ public class HSQLDBNoSchemaAdapter exten
*/
@Override
protected String getTableName(DbEntity entity) {
- QuotingStrategy context = getQuotingStrategy(entity.getDataMap().isQuotingSQLIdentifiers());
- return context.quotedIdentifier(entity.getName());
+ return quotingStrategy.quotedIdentifier(entity, entity.getName());
}
/**
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/hsqldb/HSQLMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -35,9 +35,7 @@ import org.apache.cayenne.merge.SetPrima
public class HSQLMergerFactory extends MergerFactory {
@Override
- public MergerToken createSetColumnTypeToDb(
- final DbEntity entity,
- DbAttribute columnOriginal,
+ public MergerToken createSetColumnTypeToDb(final DbEntity entity, DbAttribute columnOriginal,
final DbAttribute columnNew) {
return new SetColumnTypeToDb(entity, columnOriginal, columnNew) {
@@ -47,7 +45,7 @@ public class HSQLMergerFactory extends M
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" ALTER ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" ");
}
};
@@ -60,13 +58,11 @@ public class HSQLMergerFactory extends M
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder sqlBuffer = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" NULL");
return Collections.singletonList(sqlBuffer.toString());
@@ -76,24 +72,13 @@ public class HSQLMergerFactory extends M
}
@Override
- public MergerToken createSetPrimaryKeyToDb(
- DbEntity entity,
- Collection<DbAttribute> primaryKeyOriginal,
- Collection<DbAttribute> primaryKeyNew,
- String detectedPrimaryKeyName) {
- return new SetPrimaryKeyToDb(
- entity,
- primaryKeyOriginal,
- primaryKeyNew,
- detectedPrimaryKeyName) {
+ public MergerToken createSetPrimaryKeyToDb(DbEntity entity, Collection<DbAttribute> primaryKeyOriginal,
+ Collection<DbAttribute> primaryKeyNew, String detectedPrimaryKeyName) {
+ return new SetPrimaryKeyToDb(entity, primaryKeyOriginal, primaryKeyNew, detectedPrimaryKeyName) {
@Override
- protected void appendDropOriginalPrimaryKeySQL(
- DbAdapter adapter,
- List<String> sqls) {
- sqls.add("ALTER TABLE "
- + getQuotingStrategy(adapter)
- .quotedFullyQualifiedName(getEntity())
+ protected void appendDropOriginalPrimaryKeySQL(DbAdapter adapter, List<String> sqls) {
+ sqls.add("ALTER TABLE " + adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity())
+ " DROP PRIMARY KEY");
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresAdapter.java Sun Feb 24 11:53:37 2013
@@ -36,7 +36,6 @@ import org.apache.cayenne.configuration.
import org.apache.cayenne.configuration.RuntimeProperties;
import org.apache.cayenne.dba.JdbcAdapter;
import org.apache.cayenne.dba.PkGenerator;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.dba.TypesMapping;
import org.apache.cayenne.di.Inject;
import org.apache.cayenne.map.DbAttribute;
@@ -47,8 +46,8 @@ import org.apache.cayenne.query.SQLActio
/**
* DbAdapter implementation for <a
- * href="http://opensource.ca.com/projects/ingres/">Ingres</a>. Sample connection settings
- * to use with Ingres are shown below:
+ * href="http://opensource.ca.com/projects/ingres/">Ingres</a>. Sample
+ * connection settings to use with Ingres are shown below:
*
* <pre>
* ingres.jdbc.username = test
@@ -61,31 +60,23 @@ public class IngresAdapter extends JdbcA
public static final String TRIM_FUNCTION = "TRIM";
- public IngresAdapter(
- @Inject RuntimeProperties runtimeProperties,
+ public IngresAdapter(@Inject RuntimeProperties runtimeProperties,
@Inject(Constants.SERVER_DEFAULT_TYPES_LIST) List<ExtendedType> defaultExtendedTypes,
@Inject(Constants.SERVER_USER_TYPES_LIST) List<ExtendedType> userExtendedTypes,
@Inject(Constants.SERVER_TYPE_FACTORIES_LIST) List<ExtendedTypeFactory> extendedTypeFactories) {
- super(
- runtimeProperties,
- defaultExtendedTypes,
- userExtendedTypes,
- extendedTypeFactories);
+ super(runtimeProperties, defaultExtendedTypes, userExtendedTypes, extendedTypeFactories);
setSupportsUniqueConstraints(true);
setSupportsGeneratedKeys(true);
}
@Override
public QualifierTranslator getQualifierTranslator(QueryAssembler queryAssembler) {
- return new TrimmingQualifierTranslator(
- queryAssembler,
- IngresAdapter.TRIM_FUNCTION);
+ return new TrimmingQualifierTranslator(queryAssembler, IngresAdapter.TRIM_FUNCTION);
}
@Override
public SQLAction getAction(Query query, DataNode node) {
- return query.createSQLAction(new IngresActionBuilder(this, node
- .getEntityResolver()));
+ return query.createSQLAction(new IngresActionBuilder(this, node.getEntityResolver()));
}
@Override
@@ -106,17 +97,12 @@ public class IngresAdapter extends JdbcA
}
@Override
- public void bindParameter(
- PreparedStatement statement,
- Object object,
- int pos,
- int sqlType,
- int scale) throws SQLException, Exception {
+ public void bindParameter(PreparedStatement statement, Object object, int pos, int sqlType, int scale)
+ throws SQLException, Exception {
if (object == null && (sqlType == Types.BOOLEAN || sqlType == Types.BIT)) {
statement.setNull(pos, Types.VARCHAR);
- }
- else {
+ } else {
super.bindParameter(statement, object, pos, sqlType, scale);
}
}
@@ -128,21 +114,15 @@ public class IngresAdapter extends JdbcA
@Override
public void createTableAppendColumn(StringBuffer buf, DbAttribute at) {
- boolean status = (at.getEntity().getDataMap() != null)
- && at.getEntity().getDataMap().isQuotingSQLIdentifiers();
- QuotingStrategy context = getQuotingStrategy(status);
+
String[] types = externalTypesForJdbcType(at.getType());
if (types == null || types.length == 0) {
throw new CayenneRuntimeException("Undefined type for attribute '"
- + ((DbEntity) at.getEntity()).getFullyQualifiedName()
- + "."
- + at.getName()
- + "': "
- + at.getType());
+ + ((DbEntity) at.getEntity()).getFullyQualifiedName() + "." + at.getName() + "': " + at.getType());
}
String type = types[0];
- buf.append(context.quotedIdentifier(at.getName())).append(' ').append(type);
+ buf.append(quotingStrategy.quotedName(at)).append(' ').append(type);
// append size and precision (if applicable)
if (TypesMapping.supportsLength(at.getType())) {
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/ingres/IngresMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -37,13 +37,10 @@ import org.apache.cayenne.merge.SetAllow
import org.apache.cayenne.merge.SetColumnTypeToDb;
import org.apache.cayenne.merge.SetNotNullToDb;
-
public class IngresMergerFactory extends MergerFactory {
-
+
@Override
- public MergerToken createSetColumnTypeToDb(
- final DbEntity entity,
- DbAttribute columnOriginal,
+ public MergerToken createSetColumnTypeToDb(final DbEntity entity, DbAttribute columnOriginal,
final DbAttribute columnNew) {
return new SetColumnTypeToDb(entity, columnOriginal, columnNew) {
@@ -53,9 +50,9 @@ public class IngresMergerFactory extends
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" ");
- }
+ }
};
}
@@ -66,13 +63,11 @@ public class IngresMergerFactory extends
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder buf = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
buf.append("ALTER TABLE ");
buf.append(context.quotedFullyQualifiedName(getEntity()));
buf.append(" DROP COLUMN ");
- buf.append(context.quotedIdentifier(getColumn().getName()));
+ buf.append(context.quotedName(getColumn()));
buf.append(" RESTRICT ");
return Collections.singletonList(buf.toString());
@@ -80,98 +75,93 @@ public class IngresMergerFactory extends
};
}
-
+
@Override
public MergerToken createAddRelationshipToDb(DbEntity entity, final DbRelationship rel) {
return new AddRelationshipToDb(entity, rel) {
@Override
public List<String> createSql(DbAdapter adapter) {
- if (!rel.isToMany() && rel.isToPK() && !rel.isToDependentPK()) {
-
- DbEntity source = (DbEntity) rel.getSourceEntity();
- boolean status = (source.getDataMap() != null && source.getDataMap().isQuotingSQLIdentifiers());
- QuotingStrategy context = adapter.getQuotingStrategy(status);
- StringBuilder buf = new StringBuilder();
- StringBuilder refBuf = new StringBuilder();
-
- buf.append("ALTER TABLE ");
- buf.append(context.quotedFullyQualifiedName(source));
-
- // requires the ADD CONSTRAINT statement
- buf.append(" ADD CONSTRAINT ");
- String name = "U_"
- + rel.getSourceEntity().getName()
- + "_"
- + (long) (System.currentTimeMillis() / (Math.random() * 100000));
-
- buf.append(context.quotedIdentifier(name));
- buf.append(" FOREIGN KEY (");
-
- boolean first = true;
- for (DbJoin join : rel.getJoins()) {
- if (!first) {
- buf.append(", ");
- refBuf.append(", ");
+ if (!rel.isToMany() && rel.isToPK() && !rel.isToDependentPK()) {
+
+ DbEntity source = (DbEntity) rel.getSourceEntity();
+ QuotingStrategy context = adapter.getQuotingStrategy();
+ StringBuilder buf = new StringBuilder();
+ StringBuilder refBuf = new StringBuilder();
+
+ buf.append("ALTER TABLE ");
+ buf.append(context.quotedFullyQualifiedName(source));
+
+ // requires the ADD CONSTRAINT statement
+ buf.append(" ADD CONSTRAINT ");
+ String name = "U_" + rel.getSourceEntity().getName() + "_"
+ + (long) (System.currentTimeMillis() / (Math.random() * 100000));
+
+ buf.append(context.quotedIdentifier(rel.getSourceEntity(), name));
+ buf.append(" FOREIGN KEY (");
+
+ boolean first = true;
+ for (DbJoin join : rel.getJoins()) {
+ if (!first) {
+ buf.append(", ");
+ refBuf.append(", ");
+ } else
+ first = false;
+
+ buf.append(context.quotedSourceName(join));
+ refBuf.append(context.quotedTargetName(join));
+ }
+
+ buf.append(") REFERENCES ");
+ buf.append(context.quotedFullyQualifiedName((DbEntity) rel.getTargetEntity()));
+ buf.append(" (");
+ buf.append(refBuf.toString());
+ buf.append(')');
+
+ // also make sure we delete dependent FKs
+ buf.append(" ON DELETE CASCADE");
+
+ String fksql = buf.toString();
+
+ if (fksql != null) {
+ return Collections.singletonList(fksql);
}
- else
- first = false;
-
- buf.append(context.quotedIdentifier(join.getSourceName()));
- refBuf.append(context.quotedIdentifier(join.getTargetName()));
}
-
- buf.append(") REFERENCES ");
- buf.append(context.quotedFullyQualifiedName((DbEntity) rel.getTargetEntity()));
- buf.append(" (");
- buf.append(refBuf.toString());
- buf.append(')');
-
- // also make sure we delete dependent FKs
- buf.append(" ON DELETE CASCADE");
-
- String fksql = buf.toString();
-
- if (fksql != null) {
- return Collections.singletonList(fksql);
- }
- }
-
- return Collections.emptyList();
-
+
+ return Collections.emptyList();
+
}
};
}
-
+
@Override
public MergerToken createSetNotNullToDb(DbEntity entity, DbAttribute column) {
return new SetNotNullToDb(entity, column) {
@Override
public List<String> createSql(DbAdapter adapter) {
-
- /*
- * TODO: we generate this query as in ingres db documentation, but unfortunately ingres don't support it
- *
+
+ /*
+ * TODO: we generate this query as in ingres db documentation,
+ * but unfortunately ingres don't support it
*/
-
+
StringBuilder sqlBuffer = new StringBuilder();
-
- boolean status = (getEntity().getDataMap() != null) && getEntity().getDataMap().isQuotingSQLIdentifiers();
- QuotingStrategy context = adapter.getQuotingStrategy(status);
+
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(getEntity().getFullyQualifiedName());
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" ");
sqlBuffer.append(adapter.externalTypesForJdbcType(getColumn().getType())[0]);
-
+
if (TypesMapping.supportsLength(getColumn().getType()) && getColumn().getMaxLength() > 0) {
sqlBuffer.append("(");
sqlBuffer.append(getColumn().getMaxLength());
sqlBuffer.append(")");
}
-
+
sqlBuffer.append(" NOT NULL");
return Collections.singletonList(sqlBuffer.toString());
@@ -179,7 +169,7 @@ public class IngresMergerFactory extends
};
}
-
+
@Override
public MergerToken createSetAllowNullToDb(DbEntity entity, DbAttribute column) {
return new SetAllowNullToDb(entity, column) {
@@ -187,22 +177,20 @@ public class IngresMergerFactory extends
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder sqlBuffer = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" ");
sqlBuffer.append(adapter.externalTypesForJdbcType(getColumn().getType())[0]);
-
+
if (TypesMapping.supportsLength(getColumn().getType()) && getColumn().getMaxLength() > 0) {
sqlBuffer.append("(");
sqlBuffer.append(getColumn().getMaxLength());
sqlBuffer.append(")");
}
-
+
sqlBuffer.append(" WITH NULL");
return Collections.singletonList(sqlBuffer.toString());
@@ -210,27 +198,23 @@ public class IngresMergerFactory extends
};
}
-
+
@Override
- public MergerToken createDropRelationshipToDb(
- final DbEntity entity,
- DbRelationship rel) {
+ public MergerToken createDropRelationshipToDb(final DbEntity entity, DbRelationship rel) {
return new DropRelationshipToDb(entity, rel) {
@Override
public List<String> createSql(DbAdapter adapter) {
String fkName = getFkName();
-
+
if (fkName == null) {
return Collections.emptyList();
}
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+
StringBuilder buf = new StringBuilder();
buf.append("ALTER TABLE ");
- buf.append(context.quotedFullyQualifiedName(getEntity()));
+ buf.append(adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity()));
buf.append(" DROP CONSTRAINT ");
buf.append(fkName);
buf.append(" CASCADE ");
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLAdapter.java Sun Feb 24 11:53:37 2013
@@ -135,7 +135,7 @@ public class MySQLAdapter extends JdbcAd
// checks
// statement
StringBuffer buf = new StringBuffer();
- QuotingStrategy context = getQuotingStrategy(table.getDataMap().isQuotingSQLIdentifiers());
+ QuotingStrategy context = getQuotingStrategy();
buf.append(context.quotedFullyQualifiedName(table));
return Arrays.asList("SET FOREIGN_KEY_CHECKS=0", "DROP TABLE IF EXISTS " + buf.toString() + " CASCADE",
@@ -249,13 +249,7 @@ public class MySQLAdapter extends JdbcAd
// See CAY-358 for details of the InnoDB problem
@Override
protected void createTableAppendPKClause(StringBuffer sqlBuffer, DbEntity entity) {
- boolean status;
- if (entity.getDataMap() != null && entity.getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- } else {
- status = false;
- }
- QuotingStrategy context = getQuotingStrategy(status);
+
// must move generated to the front...
List<DbAttribute> pkList = new ArrayList<DbAttribute>(entity.getPrimaryKeys());
Collections.sort(pkList, new PKComparator());
@@ -272,7 +266,7 @@ public class MySQLAdapter extends JdbcAd
sqlBuffer.append(", ");
DbAttribute at = pkit.next();
- sqlBuffer.append(context.quotedIdentifier(at.getName()));
+ sqlBuffer.append(quotingStrategy.quotedName(at));
}
sqlBuffer.append(')');
}
@@ -290,11 +284,11 @@ public class MySQLAdapter extends JdbcAd
Iterator<DbAttribute> columns = relationship.getSourceAttributes().iterator();
DbAttribute column = columns.next();
- sqlBuffer.append(context.quotedIdentifier(column.getName()));
+ sqlBuffer.append(quotingStrategy.quotedName(column));
while (columns.hasNext()) {
column = columns.next();
- sqlBuffer.append(", ").append(context.quotedIdentifier(column.getName()));
+ sqlBuffer.append(", ").append(quotingStrategy.quotedName(column));
}
sqlBuffer.append(")");
@@ -309,13 +303,7 @@ public class MySQLAdapter extends JdbcAd
*/
@Override
public void createTableAppendColumn(StringBuffer sqlBuffer, DbAttribute column) {
- boolean status;
- if ((column.getEntity().getDataMap() != null) && column.getEntity().getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- } else {
- status = false;
- }
- QuotingStrategy context = getQuotingStrategy(status);
+
String[] types = externalTypesForJdbcType(column.getType());
if (types == null || types.length == 0) {
String entityName = column.getEntity() != null ? ((DbEntity) column.getEntity()).getFullyQualifiedName()
@@ -325,7 +313,7 @@ public class MySQLAdapter extends JdbcAd
}
String type = types[0];
- sqlBuffer.append(context.quotedIdentifier(column.getName()));
+ sqlBuffer.append(quotingStrategy.quotedName(column));
sqlBuffer.append(' ').append(type);
// append size and precision (if applicable)s
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/mysql/MySQLMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -47,14 +47,12 @@ public class MySQLMergerFactory extends
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" CHANGE ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" ");
adapter.createTableAppendColumn(sqlBuffer, column);
@@ -74,14 +72,12 @@ public class MySQLMergerFactory extends
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" CHANGE ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" ");
adapter.createTableAppendColumn(sqlBuffer, column);
@@ -105,7 +101,7 @@ public class MySQLMergerFactory extends
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" MODIFY ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" ");
}
@@ -126,9 +122,7 @@ public class MySQLMergerFactory extends
if (fkName == null) {
return Collections.emptyList();
}
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
StringBuilder buf = new StringBuilder();
// http://dev.mysql.com/tech-resources/articles/mysql-cluster-50.html
buf.append("ALTER TABLE ");
@@ -158,7 +152,7 @@ public class MySQLMergerFactory extends
DbAdapter adapter,
List<String> sqls) {
sqls.add("ALTER TABLE "
- + getQuotingStrategy(adapter)
+ + adapter.getQuotingStrategy()
.quotedFullyQualifiedName(getEntity())
+ " DROP PRIMARY KEY");
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBaseAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBaseAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBaseAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBaseAdapter.java Sun Feb 24 11:53:37 2013
@@ -39,7 +39,6 @@ import org.apache.cayenne.configuration.
import org.apache.cayenne.configuration.RuntimeProperties;
import org.apache.cayenne.dba.JdbcAdapter;
import org.apache.cayenne.dba.PkGenerator;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.dba.TypesMapping;
import org.apache.cayenne.di.Inject;
import org.apache.cayenne.map.DbAttribute;
@@ -161,13 +160,11 @@ public class OpenBaseAdapter extends Jdb
*/
@Override
public String createTable(DbEntity ent) {
- QuotingStrategy context = getQuotingStrategy(ent
- .getDataMap()
- .isQuotingSQLIdentifiers());
+
StringBuilder buf = new StringBuilder();
buf.append("CREATE TABLE ");
- buf.append(context.quotedFullyQualifiedName(ent));
+ buf.append(quotingStrategy.quotedFullyQualifiedName(ent));
buf.append(" (");
// columns
@@ -203,7 +200,7 @@ public class OpenBaseAdapter extends Jdb
}
String type = types[0];
- buf.append(context.quotedIdentifier(at.getName())).append(' ').append(type);
+ buf.append(quotingStrategy.quotedName(at)).append(' ').append(type);
// append size and precision (if applicable)
if (TypesMapping.supportsLength(at.getType())) {
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBasePkGenerator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBasePkGenerator.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBasePkGenerator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/openbase/OpenBasePkGenerator.java Sun Feb 24 11:53:37 2013
@@ -223,16 +223,10 @@ public class OpenBasePkGenerator extends
StringBuilder buffer = new StringBuilder();
buffer.append("CREATE PRIMARY KEY ");
- boolean status;
- if (entity.getDataMap() != null && entity.getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- }
- else {
- status = false;
- }
- QuotingStrategy context = getAdapter().getQuotingStrategy(status);
+
+ QuotingStrategy context = getAdapter().getQuotingStrategy();
- buffer.append(context.quotedIdentifier(entity.getName()));
+ buffer.append(context.quotedIdentifier(entity, entity.getName()));
buffer.append(" (");
@@ -240,12 +234,12 @@ public class OpenBasePkGenerator extends
// at this point we know that there is at least on PK column
DbAttribute firstColumn = it.next();
- buffer.append(context.quotedIdentifier(firstColumn.getName()));
+ buffer.append(context.quotedName(firstColumn));
while (it.hasNext()) {
DbAttribute column = it.next();
buffer.append(", ");
- buffer.append(context.quotedIdentifier(column.getName()));
+ buffer.append(context.quotedName(column));
}
buffer.append(")");
@@ -258,14 +252,8 @@ public class OpenBasePkGenerator extends
*/
protected String createUniquePKIndexString(DbEntity entity) {
Collection<DbAttribute> pk = entity.getPrimaryKeys();
- boolean status;
- if (entity.getDataMap() != null && entity.getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- }
- else {
- status = false;
- }
- QuotingStrategy context = getAdapter().getQuotingStrategy(status);
+
+ QuotingStrategy context = getAdapter().getQuotingStrategy();
if (pk == null || pk.size() == 0) {
throw new CayenneRuntimeException("Entity '"
+ entity.getName()
@@ -278,19 +266,19 @@ public class OpenBasePkGenerator extends
// create a regular one in this case
buffer.append(pk.size() == 1 ? "CREATE UNIQUE INDEX " : "CREATE INDEX ");
- buffer.append(context.quotedIdentifier(entity.getName()));
+ buffer.append(context.quotedIdentifier(entity, entity.getName()));
buffer.append(" (");
Iterator<DbAttribute> it = pk.iterator();
// at this point we know that there is at least on PK column
DbAttribute firstColumn = it.next();
- buffer.append(context.quotedIdentifier(firstColumn.getName()));
+ buffer.append(context.quotedName(firstColumn));
while (it.hasNext()) {
DbAttribute column = it.next();
buffer.append(", ");
- buffer.append(context.quotedIdentifier(column.getName()));
+ buffer.append(context.quotedName(column));
}
buffer.append(")");
return buffer.toString();
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleAdapter.java Sun Feb 24 11:53:37 2013
@@ -217,9 +217,7 @@ public class OracleAdapter extends JdbcA
*/
@Override
public Collection<String> dropTableStatements(DbEntity table) {
- QuotingStrategy context = getQuotingStrategy(table
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = getQuotingStrategy();
StringBuffer buf = new StringBuffer("DROP TABLE ");
buf.append(context.quotedFullyQualifiedName(table));
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OracleMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -44,7 +44,7 @@ public class OracleMergerFactory extends
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" ADD ");
- sqlBuffer.append(context.quotedIdentifier(column.getName()));
+ sqlBuffer.append(context.quotedName(column));
sqlBuffer.append(" ");
}
};
@@ -63,7 +63,7 @@ public class OracleMergerFactory extends
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" MODIFY ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" ");
}
};
@@ -77,12 +77,8 @@ public class OracleMergerFactory extends
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
-
sqlBuffer.append("ALTER TABLE ");
- sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
+ sqlBuffer.append(adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" MODIFY ");
adapter.createTableAppendColumn(sqlBuffer, column);
@@ -101,11 +97,9 @@ public class OracleMergerFactory extends
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+
sqlBuffer.append("ALTER TABLE ");
- sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
+ sqlBuffer.append(adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" MODIFY ");
adapter.createTableAppendColumn(sqlBuffer, column);
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OraclePkGenerator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OraclePkGenerator.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OraclePkGenerator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/oracle/OraclePkGenerator.java Sun Feb 24 11:53:37 2013
@@ -32,7 +32,6 @@ import org.apache.cayenne.CayenneRuntime
import org.apache.cayenne.access.DataNode;
import org.apache.cayenne.dba.JdbcAdapter;
import org.apache.cayenne.dba.JdbcPkGenerator;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.map.DataMap;
import org.apache.cayenne.map.DbEntity;
import org.apache.cayenne.map.DbKeyGenerator;
@@ -203,13 +202,6 @@ public class OraclePkGenerator extends J
/** Returns expected primary key sequence name for a DbEntity. */
protected String sequenceName(DbEntity entity) {
- boolean status;
- if (entity.getDataMap() != null && entity.getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- } else {
- status = false;
- }
- QuotingStrategy context = getAdapter().getQuotingStrategy(status);
// use custom generator if possible
DbKeyGenerator keyGenerator = entity.getPrimaryKeyGenerator();
@@ -221,7 +213,8 @@ public class OraclePkGenerator extends J
String entName = entity.getName();
String seqName = _SEQUENCE_PREFIX + entName.toLowerCase();
- return context.quotedIdentifier(entity.getCatalog(), entity.getSchema(), seqName);
+ return adapter.getQuotingStrategy().quotedIdentifier(entity, entity.getCatalog(), entity.getSchema(),
+ seqName);
}
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresAdapter.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresAdapter.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresAdapter.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresAdapter.java Sun Feb 24 11:53:37 2013
@@ -47,8 +47,9 @@ import org.apache.cayenne.query.Query;
import org.apache.cayenne.query.SQLAction;
/**
- * DbAdapter implementation for <a href="http://www.postgresql.org">PostgreSQL RDBMS </a>.
- * Sample connection settings to use with PostgreSQL are shown below:
+ * DbAdapter implementation for <a href="http://www.postgresql.org">PostgreSQL
+ * RDBMS </a>. Sample connection settings to use with PostgreSQL are shown
+ * below:
*
* <pre>
* postgres.jdbc.username = test
@@ -59,16 +60,11 @@ import org.apache.cayenne.query.SQLActio
*/
public class PostgresAdapter extends JdbcAdapter {
- public PostgresAdapter(
- @Inject RuntimeProperties runtimeProperties,
+ public PostgresAdapter(@Inject RuntimeProperties runtimeProperties,
@Inject(Constants.SERVER_DEFAULT_TYPES_LIST) List<ExtendedType> defaultExtendedTypes,
@Inject(Constants.SERVER_USER_TYPES_LIST) List<ExtendedType> userExtendedTypes,
@Inject(Constants.SERVER_TYPE_FACTORIES_LIST) List<ExtendedTypeFactory> extendedTypeFactories) {
- super(
- runtimeProperties,
- defaultExtendedTypes,
- userExtendedTypes,
- extendedTypeFactories);
+ super(runtimeProperties, defaultExtendedTypes, userExtendedTypes, extendedTypeFactories);
setSupportsBatchUpdates(true);
}
@@ -79,13 +75,12 @@ public class PostgresAdapter extends Jdb
*/
@Override
public SQLAction getAction(Query query, DataNode node) {
- return query.createSQLAction(new PostgresActionBuilder(this, node
- .getEntityResolver()));
+ return query.createSQLAction(new PostgresActionBuilder(this, node.getEntityResolver()));
}
/**
- * Installs appropriate ExtendedTypes as converters for passing values between JDBC
- * and Java layers.
+ * Installs appropriate ExtendedTypes as converters for passing values
+ * between JDBC and Java layers.
*/
@Override
protected void configureExtendedTypes(ExtendedTypeMap map) {
@@ -97,13 +92,7 @@ public class PostgresAdapter extends Jdb
}
@Override
- public DbAttribute buildAttribute(
- String name,
- String typeName,
- int type,
- int size,
- int scale,
- boolean allowNulls) {
+ public DbAttribute buildAttribute(String name, String typeName, int type, int size, int scale, boolean allowNulls) {
// "bytea" maps to pretty much any binary type, so
// it is up to us to select the most sensible default.
@@ -124,22 +113,16 @@ public class PostgresAdapter extends Jdb
}
/**
- * Customizes table creating procedure for PostgreSQL. One difference with generic
- * implementation is that "bytea" type has no explicit length unlike similar binary
- * types in other databases.
+ * Customizes table creating procedure for PostgreSQL. One difference with
+ * generic implementation is that "bytea" type has no explicit length unlike
+ * similar binary types in other databases.
*
* @since 1.0.2
*/
@Override
public String createTable(DbEntity ent) {
- boolean status;
- if (ent.getDataMap() != null && ent.getDataMap().isQuotingSQLIdentifiers()) {
- status = true;
- }
- else {
- status = false;
- }
- QuotingStrategy context = getQuotingStrategy(status);
+
+ QuotingStrategy context = getQuotingStrategy();
StringBuilder buf = new StringBuilder();
buf.append("CREATE TABLE ");
@@ -160,37 +143,25 @@ public class PostgresAdapter extends Jdb
// attribute may not be fully valid, do a simple check
if (at.getType() == TypesMapping.NOT_DEFINED) {
- throw new CayenneRuntimeException("Undefined type for attribute '"
- + ent.getFullyQualifiedName()
- + "."
- + at.getName()
- + "'.");
+ throw new CayenneRuntimeException("Undefined type for attribute '" + ent.getFullyQualifiedName() + "."
+ + at.getName() + "'.");
}
String[] types = externalTypesForJdbcType(at.getType());
if (types == null || types.length == 0) {
- throw new CayenneRuntimeException("Undefined type for attribute '"
- + ent.getFullyQualifiedName()
- + "."
- + at.getName()
- + "': "
- + at.getType());
+ throw new CayenneRuntimeException("Undefined type for attribute '" + ent.getFullyQualifiedName() + "."
+ + at.getName() + "': " + at.getType());
}
String type = types[0];
- buf.append(context.quotedIdentifier(at.getName())).append(' ').append(type);
+ buf.append(context.quotedName(at)).append(' ').append(type);
// append size and precision (if applicable)
if (typeSupportsLength(at.getType())) {
+
int len = at.getMaxLength();
- int scale = (TypesMapping.isDecimal(at.getType()) && at.getType() != Types.FLOAT) // Postgress
- // don't
- // support
- // notations
- // float(a,
- // b)
- ? at.getScale()
- : -1;
+ // Postgres does not support notation float(a, b)
+ int scale = (TypesMapping.isDecimal(at.getType()) && at.getType() != Types.FLOAT) ? at.getScale() : -1;
// sanity check
if (scale > len) {
@@ -210,8 +181,7 @@ public class PostgresAdapter extends Jdb
if (at.isMandatory()) {
buf.append(" NOT NULL");
- }
- else {
+ } else {
buf.append(" NULL");
}
}
@@ -233,7 +203,7 @@ public class PostgresAdapter extends Jdb
buf.append(", ");
DbAttribute at = pkit.next();
- buf.append(context.quotedIdentifier(at.getName()));
+ buf.append(context.quotedName(at));
}
buf.append(')');
}
@@ -260,9 +230,7 @@ public class PostgresAdapter extends Jdb
*/
@Override
public Collection<String> dropTableStatements(DbEntity table) {
- QuotingStrategy context = getQuotingStrategy(table
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = getQuotingStrategy();
StringBuffer buf = new StringBuffer("DROP TABLE ");
buf.append(context.quotedFullyQualifiedName(table));
buf.append(" CASCADE");
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -36,12 +36,12 @@ public class PostgresMergerFactory exten
return new SetColumnTypeToDb(entity, columnOriginal, columnNew) {
@Override
- protected void appendPrefix(StringBuffer sqlBuffer, QuotingStrategy context) {
+ protected void appendPrefix(StringBuffer sqlBuffer, QuotingStrategy quotingStrategy) {
// http://www.postgresql.org/docs/8.2/static/sql-altertable.html
sqlBuffer.append("ALTER TABLE ");
- sqlBuffer.append(context.quotedFullyQualifiedName(entity));
+ sqlBuffer.append(quotingStrategy.quotedFullyQualifiedName(entity));
sqlBuffer.append(" ALTER ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(quotingStrategy.quotedName(columnNew));
sqlBuffer.append(" TYPE ");
}
};
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresPkGenerator.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresPkGenerator.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresPkGenerator.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/postgres/PostgresPkGenerator.java Sun Feb 24 11:53:37 2013
@@ -30,7 +30,6 @@ import java.util.List;
import org.apache.cayenne.CayenneRuntimeException;
import org.apache.cayenne.access.DataNode;
import org.apache.cayenne.dba.JdbcAdapter;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.dba.oracle.OraclePkGenerator;
import org.apache.cayenne.map.DbEntity;
import org.apache.cayenne.map.DbKeyGenerator;
@@ -46,15 +45,13 @@ public class PostgresPkGenerator extends
@Override
protected String createSequenceString(DbEntity ent) {
- // note that PostgreSQL 7.4 and newer supports INCREMENT BY and START WITH
- // however 7.3 doesn't like BY and WITH, so using older more neutral syntax
+ // note that PostgreSQL 7.4 and newer supports INCREMENT BY and START
+ // WITH
+ // however 7.3 doesn't like BY and WITH, so using older more neutral
+ // syntax
// that works with all tested versions.
StringBuilder buf = new StringBuilder();
- buf
- .append("CREATE SEQUENCE ")
- .append(sequenceName(ent))
- .append(" INCREMENT ")
- .append(pkCacheSize(ent))
+ buf.append("CREATE SEQUENCE ").append(sequenceName(ent)).append(" INCREMENT ").append(pkCacheSize(ent))
.append(" START 200");
return buf.toString();
}
@@ -67,8 +64,7 @@ public class PostgresPkGenerator extends
DbKeyGenerator pkGenerator = entity.getPrimaryKeyGenerator();
String pkGeneratingSequenceName;
- if (pkGenerator != null
- && DbKeyGenerator.ORACLE_TYPE.equals(pkGenerator.getGeneratorType())
+ if (pkGenerator != null && DbKeyGenerator.ORACLE_TYPE.equals(pkGenerator.getGeneratorType())
&& pkGenerator.getGeneratorName() != null)
pkGeneratingSequenceName = pkGenerator.getGeneratorName();
else
@@ -84,41 +80,28 @@ public class PostgresPkGenerator extends
try {
// Object pk = null;
if (!rs.next()) {
- throw new CayenneRuntimeException(
- "Error generating pk for DbEntity " + entity.getName());
+ throw new CayenneRuntimeException("Error generating pk for DbEntity " + entity.getName());
}
return rs.getLong(1);
- }
- finally {
+ } finally {
rs.close();
}
- }
- finally {
+ } finally {
st.close();
}
- }
- finally {
+ } finally {
con.close();
}
}
/**
- * Fetches a list of existing sequences that might match Cayenne generated ones.
+ * Fetches a list of existing sequences that might match Cayenne generated
+ * ones.
*/
@Override
protected List<String> getExistingSequences(DataNode node) throws SQLException {
- boolean status;
- if (node.getDataMap(node.getName()) != null
- && node.getDataMap(node.getName()).isQuotingSQLIdentifiers()) {
- status = true;
- }
- else {
- status = false;
- }
- QuotingStrategy context = getAdapter().getQuotingStrategy(status);
-
// check existing sequences
Connection con = node.getDataSource().getConnection();
@@ -131,19 +114,16 @@ public class PostgresPkGenerator extends
try {
List<String> sequenceList = new ArrayList<String>();
while (rs.next()) {
- sequenceList.add(context.quotedIdentifier(rs.getString(1)));
+ sequenceList.add(rs.getString(1));
}
return sequenceList;
- }
- finally {
+ } finally {
rs.close();
}
- }
- finally {
+ } finally {
sel.close();
}
- }
- finally {
+ } finally {
con.close();
}
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sqlserver/SQLServerMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sqlserver/SQLServerMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sqlserver/SQLServerMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sqlserver/SQLServerMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -48,7 +48,7 @@ public class SQLServerMergerFactory exte
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" ");
}
};
@@ -64,7 +64,7 @@ public class SQLServerMergerFactory exte
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" ADD ");
- sqlBuffer.append(context.quotedIdentifier(column.getName()));
+ sqlBuffer.append(context.quotedName(column));
sqlBuffer.append(" ");
}
};
@@ -78,12 +78,8 @@ public class SQLServerMergerFactory exte
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
-
sqlBuffer.append("ALTER TABLE ");
- sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
+ sqlBuffer.append(adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER COLUMN ");
adapter.createTableAppendColumn(sqlBuffer, column);
@@ -102,11 +98,9 @@ public class SQLServerMergerFactory exte
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+
sqlBuffer.append("ALTER TABLE ");
- sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
+ sqlBuffer.append(adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER COLUMN ");
adapter.createTableAppendColumn(sqlBuffer, column);
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sybase/SybaseMergerFactory.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sybase/SybaseMergerFactory.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sybase/SybaseMergerFactory.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/dba/sybase/SybaseMergerFactory.java Sun Feb 24 11:53:37 2013
@@ -49,9 +49,7 @@ public class SybaseMergerFactory extends
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ADD ");
@@ -77,13 +75,11 @@ public class SybaseMergerFactory extends
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder sqlBuffer = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" DROP ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
return Collections.singletonList(sqlBuffer.toString());
}
@@ -147,7 +143,7 @@ public class SybaseMergerFactory extends
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" MODIFY ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" ");
}
@@ -159,9 +155,7 @@ public class SybaseMergerFactory extends
DbEntity entity,
DbAttribute column) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(entity
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(entity));
sqlBuffer.append(" MODIFY ");
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AbstractToDbToken.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AbstractToDbToken.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AbstractToDbToken.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AbstractToDbToken.java Sun Feb 24 11:53:37 2013
@@ -24,7 +24,6 @@ import java.sql.Statement;
import java.util.List;
import org.apache.cayenne.dba.DbAdapter;
-import org.apache.cayenne.dba.QuotingStrategy;
import org.apache.cayenne.log.JdbcEventLogger;
import org.apache.cayenne.map.DbAttribute;
import org.apache.cayenne.map.DbEntity;
@@ -108,12 +107,6 @@ public abstract class AbstractToDbToken
return getEntity().getName();
}
- protected QuotingStrategy getQuotingStrategy(DbAdapter adapter) {
- return adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
- }
-
public int compareTo(MergerToken o) {
// default order as tokens are created
return 0;
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AddColumnToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AddColumnToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AddColumnToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/AddColumnToDb.java Sun Feb 24 11:53:37 2013
@@ -42,16 +42,14 @@ public class AddColumnToDb extends Abstr
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ADD COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" ");
}
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
appendPrefix(sqlBuffer, context);
// copied from JdbcAdapter.createTableAppendColumn
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropColumnToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropColumnToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropColumnToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropColumnToDb.java Sun Feb 24 11:53:37 2013
@@ -35,13 +35,11 @@ public class DropColumnToDb extends Abst
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder sqlBuffer = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" DROP COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
return Collections.singletonList(sqlBuffer.toString());
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropRelationshipToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropRelationshipToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropRelationshipToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/DropRelationshipToDb.java Sun Feb 24 11:53:37 2013
@@ -50,9 +50,7 @@ public class DropRelationshipToDb extend
if (fkName == null) {
return Collections.emptyList();
}
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
StringBuilder buf = new StringBuilder();
buf.append("ALTER TABLE ");
buf.append(context.quotedFullyQualifiedName(getEntity()));
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetAllowNullToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetAllowNullToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetAllowNullToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetAllowNullToDb.java Sun Feb 24 11:53:37 2013
@@ -39,13 +39,11 @@ public class SetAllowNullToDb extends Ab
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder sqlBuffer = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" DROP NOT NULL");
return Collections.singletonList(sqlBuffer.toString());
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetColumnTypeToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetColumnTypeToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetColumnTypeToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetColumnTypeToDb.java Sun Feb 24 11:53:37 2013
@@ -50,17 +50,15 @@ public class SetColumnTypeToDb extends A
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER ");
- sqlBuffer.append(context.quotedIdentifier(columnNew.getName()));
+ sqlBuffer.append(context.quotedName(columnNew));
sqlBuffer.append(" TYPE ");
}
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuffer sqlBuffer = new StringBuffer();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
- appendPrefix(sqlBuffer, context);
+
+ appendPrefix(sqlBuffer, adapter.getQuotingStrategy());
// copied from JdbcAdapter.createTableAppendColumn
String[] types = adapter.externalTypesForJdbcType(columnNew.getType());
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetNotNullToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetNotNullToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetNotNullToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetNotNullToDb.java Sun Feb 24 11:53:37 2013
@@ -38,13 +38,11 @@ public class SetNotNullToDb extends Abst
@Override
public List<String> createSql(DbAdapter adapter) {
StringBuilder sqlBuffer = new StringBuilder();
- QuotingStrategy context = adapter.getQuotingStrategy(getEntity()
- .getDataMap()
- .isQuotingSQLIdentifiers());
+ QuotingStrategy context = adapter.getQuotingStrategy();
sqlBuffer.append("ALTER TABLE ");
sqlBuffer.append(context.quotedFullyQualifiedName(getEntity()));
sqlBuffer.append(" ALTER COLUMN ");
- sqlBuffer.append(context.quotedIdentifier(getColumn().getName()));
+ sqlBuffer.append(context.quotedName(getColumn()));
sqlBuffer.append(" SET NOT NULL");
return Collections.singletonList(sqlBuffer.toString());
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetPrimaryKeyToDb.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetPrimaryKeyToDb.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetPrimaryKeyToDb.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/main/java/org/apache/cayenne/merge/SetPrimaryKeyToDb.java Sun Feb 24 11:53:37 2013
@@ -57,19 +57,19 @@ public class SetPrimaryKeyToDb extends A
if (detectedPrimaryKeyName == null) {
return;
}
- sqls.add("ALTER TABLE " + getQuotingStrategy(adapter).quotedFullyQualifiedName(getEntity())
+ sqls.add("ALTER TABLE " + adapter.getQuotingStrategy().quotedFullyQualifiedName(getEntity())
+ " DROP CONSTRAINT " + detectedPrimaryKeyName);
}
protected void appendAddNewPrimaryKeySQL(DbAdapter adapter, List<String> sqls) {
- QuotingStrategy quotingStrategy = getQuotingStrategy(adapter);
+ QuotingStrategy quotingStrategy = adapter.getQuotingStrategy();
StringBuilder sql = new StringBuilder();
sql.append("ALTER TABLE ");
sql.append(quotingStrategy.quotedFullyQualifiedName(getEntity()));
sql.append(" ADD PRIMARY KEY (");
for (Iterator<DbAttribute> it = primaryKeyNew.iterator(); it.hasNext();) {
- sql.append(quotingStrategy.quotedIdentifier(it.next().getName()));
+ sql.append(quotingStrategy.quotedName(it.next()));
if (it.hasNext()) {
sql.append(", ");
}
Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java?rev=1449462&r1=1449461&r2=1449462&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/dba/DefaultQuotingStrategyTest.java Sun Feb 24 11:53:37 2013
@@ -20,12 +20,34 @@ package org.apache.cayenne.dba;
import junit.framework.TestCase;
+import org.apache.cayenne.map.DataMap;
+import org.apache.cayenne.map.DbEntity;
+
public class DefaultQuotingStrategyTest extends TestCase {
public void testQuotedIdentifer() {
+
+ DataMap dm = new DataMap();
+ dm.setQuotingSQLIdentifiers(true);
+ DbEntity de = new DbEntity();
+ de.setDataMap(dm);
+
+ DefaultQuotingStrategy strategy = new DefaultQuotingStrategy("[", "]");
+ assertEquals("[a]", strategy.quotedIdentifier(de, "a"));
+ assertEquals("[a]", strategy.quotedIdentifier(de, null, null, "a"));
+ assertEquals("[c].[b].[a]", strategy.quotedIdentifier(de, "c", "b", "a"));
+ }
+
+ public void testUnQuotedIdentifer() {
+
+ DataMap dm = new DataMap();
+ dm.setQuotingSQLIdentifiers(false);
+ DbEntity de = new DbEntity();
+ de.setDataMap(dm);
+
DefaultQuotingStrategy strategy = new DefaultQuotingStrategy("[", "]");
- assertEquals("[a]", strategy.quotedIdentifier("a"));
- assertEquals("[a]", strategy.quotedIdentifier(null, null, "a"));
- assertEquals("[c].[b].[a]", strategy.quotedIdentifier("c", "b", "a"));
+ assertEquals("a", strategy.quotedIdentifier(de, "a"));
+ assertEquals("a", strategy.quotedIdentifier(de, null, null, "a"));
+ assertEquals("c.b.a", strategy.quotedIdentifier(de, "c", "b", "a"));
}
}