[cvs]
expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc
JoinedDataObject.java
JCorporate Ltd
jcorp at jcorp2.servlets.net
Mon Sep 20 13:04:27 PDT 2004
Update of /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc
In directory jcorp2.servlets.net:/tmp/cvs-serv4391
Modified Files:
JoinedDataObject.java
Log Message:
<Aucun commentaire entré>
Index: JoinedDataObject.java
===================================================================
RCS file: /home/javacorp/.cvs/expresso/expresso/expresso-web/WEB-INF/src/com/jcorporate/expresso/core/dataobjects/jdbc/JoinedDataObject.java,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -d -r1.33 -r1.34
*** JoinedDataObject.java 20 Sep 2004 19:22:29 -0000 1.33
--- JoinedDataObject.java 20 Sep 2004 20:04:25 -0000 1.34
***************
*** 88,91 ****
--- 88,92 ----
import com.jcorporate.expresso.services.dbobj.Setup;
import org.apache.log4j.Logger;
+ import org.apache.oro.text.regex.Pattern;
import java.util.ArrayList;
***************
*** 117,120 ****
--- 118,124 ----
* @author Michael Rimov
* @version $Revision$ on $Date$
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
public class JoinedDataObject implements DataObject, Defineable, Securable, NestableDataObject {
***************
*** 1156,1161 ****
myStatement.append("SELECT ");
myStatement.append(getDistinct(myPool));
! myStatement.append("COUNT( " + primaryObject.getJDBCMetaData().getTargetTable() + "."
! + keymetadata.getName() +") FROM ");
}
--- 1160,1165 ----
myStatement.append("SELECT ");
myStatement.append(getDistinct(myPool));
! myStatement.append("COUNT( " + primaryObject.getJDBCMetaData().getTargetSQLTable(primaryObject.getDataContext()) + "."
! + keymetadata.getName() +") FROM ");
}
***************
*** 1351,1354 ****
--- 1355,1361 ----
* @return ArrayList of JoinedDataObjects
* @throws DBException upon database access error
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
public ArrayList searchAndRetrieveList(String sortOrder)
***************
*** 1398,1405 ****
JDBCObjectMetaData metadata = oneObj.getJDBCMetaData();
! ArrayList retrievedFieldList = (ArrayList) rtrvListByTable.get(metadata.getTargetTable());
if (retrievedFieldList == null) {
retrievedFieldList = new ArrayList();
! rtrvListByTable.put(metadata.getTargetTable(), retrievedFieldList);
}
--- 1405,1412 ----
JDBCObjectMetaData metadata = oneObj.getJDBCMetaData();
! ArrayList retrievedFieldList = (ArrayList) rtrvListByTable.get(metadata.getTargetSQLTable(oneObj.getDataContext()));
if (retrievedFieldList == null) {
retrievedFieldList = new ArrayList();
! rtrvListByTable.put(metadata.getTargetSQLTable(oneObj.getDataContext()), retrievedFieldList);
}
***************
*** 1538,1542 ****
JDBCObjectMetaData objectMetadata = oneObj.getJDBCMetaData();
! ArrayList retrievedFieldList = (ArrayList) rtrvListByTable.get(objectMetadata.getTargetTable());
--- 1545,1549 ----
JDBCObjectMetaData objectMetadata = oneObj.getJDBCMetaData();
! ArrayList retrievedFieldList = (ArrayList) rtrvListByTable.get(objectMetadata.getTargetSQLTable(oneObj.getDataContext()));
***************
*** 1551,1559 ****
} catch (DBException de) {
String myName = (thisClass + "searchAndRetrieve()");
! throw new DBException(myName +
! ":Error retrieving field '" +
! objectMetadata.getTargetTable() +
! "." + fieldName + "'",
! de);
}
--- 1558,1566 ----
} catch (DBException de) {
String myName = (thisClass + "searchAndRetrieve()");
! throw new DBException(myName +
! ":Error retrieving field '" +
! objectMetadata.getTargetSQLTable(oneObj.getDataContext()) +
! "." + fieldName + "'",
! de);
}
***************
*** 1621,1624 ****
--- 1628,1634 ----
*
* @throws DBException upon data access error
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
protected String selectFieldString(JDBCDataObject oneObj, String fieldName)
***************
*** 1626,1630 ****
checkInitialized();
return StringUtil.replaceStringOnce(oneObj.selectFieldString(fieldName),
! fieldName, oneObj.getJDBCMetaData().getTargetTable() + "." + fieldName);
}
/* selectFieldString(String) */
--- 1636,1640 ----
checkInitialized();
return StringUtil.replaceStringOnce(oneObj.selectFieldString(fieldName),
! fieldName, oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()) + "." + fieldName);
}
/* selectFieldString(String) */
***************
*** 1766,1769 ****
--- 1776,1782 ----
*
* @throws DBException
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
private String buildJoin(String leftShortName, String leftColumn,
***************
*** 1806,1811 ****
}
! buffer.append(rightDBObj.getJDBCMetaData().getTargetTable());
! buffer.append(" ON (");
boolean addAnd = false;
--- 1819,1832 ----
}
! buffer.append(rightDBObj.getJDBCMetaData().getTargetSQLTable(rightDBObj.getDataContext()));
! buffer.append(" ON ");
! buffer.append(leftDBObj.getJDBCMetaData().getTargetSQLTable(leftDBObj.getDataContext()));
! buffer.append(".");
! buffer.append(leftColumn);
! buffer.append(" = ");
! buffer.append(rightDBObj.getJDBCMetaData().getTargetSQLTable(rightDBObj.getDataContext()));
! buffer.append(".");
! buffer.append(rightColumn);
! buffer.append(" ");
boolean addAnd = false;
***************
*** 1941,1944 ****
--- 1962,1968 ----
* @return java.lang.String
* @throws DataException upon construction error
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
protected String buildFromClause() throws DataException {
***************
*** 2033,2037 ****
definedSet.add(leftAlias);
JDBCDataObject oneObj = (JDBCDataObject)this.myDataObjects.get(leftAlias);
! fsb.append(oneObj.getJDBCMetaData().getTargetTable());
needComma = true;
--- 2057,2061 ----
definedSet.add(leftAlias);
JDBCDataObject oneObj = (JDBCDataObject)this.myDataObjects.get(leftAlias);
! fsb.append(oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()));
needComma = true;
***************
*** 2064,2068 ****
if (firstJoin) {
JDBCDataObject oneObj = (JDBCDataObject)this.myDataObjects.get(relation.getLocalAlias());
! fsb.append(oneObj.getJDBCMetaData().getTargetTable());
firstJoin = false;
}
--- 2088,2092 ----
if (firstJoin) {
JDBCDataObject oneObj = (JDBCDataObject)this.myDataObjects.get(relation.getLocalAlias());
! fsb.append(oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()));
firstJoin = false;
}
***************
*** 2089,2092 ****
--- 2113,2119 ----
* @return java.lang.String
* @throws DBException if there's an error creating the string.
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
protected String buildSelectFieldsString() throws DBException {
***************
*** 2109,2113 ****
! fsb.append(obj.getJDBCMetaData().getTargetTable());
fsb.append(".");
fsb.append(location[1]);
--- 2136,2140 ----
! fsb.append(obj.getJDBCMetaData().getTargetSQLTable(obj.getDataContext()));
fsb.append(".");
fsb.append(location[1]);
***************
*** 2129,2132 ****
--- 2156,2162 ----
* @return java.lang.String
* @throws DataException upon error
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
protected String buildUpdateFieldString() throws DataException {
***************
*** 2158,2162 ****
}
String location[] = metadata.getObjectAndField(oneFieldName);
! sqlCommand.append( ((JDBCDataObject)this.myDataObjects.get(location[0])).getJDBCMetaData().getTargetTable());
sqlCommand.append(".");
sqlCommand.append(oneField.getName());
--- 2188,2192 ----
}
String location[] = metadata.getObjectAndField(oneFieldName);
! sqlCommand.append( ((JDBCDataObject)this.myDataObjects.get(location[0])).getJDBCMetaData().getTargetSQLTable(((JDBCDataObject)this.myDataObjects.get(location[0])).getDataContext()));
sqlCommand.append(".");
sqlCommand.append(oneField.getName());
***************
*** 2179,2182 ****
--- 2209,2215 ----
* @return the order by string to append to the select statement.
* @throws DBException
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
protected String buildOrderByString(String sortKeys) throws DBException {
***************
*** 2205,2209 ****
}
! fsb.append(obj.getJDBCMetaData().getTargetTable());
fsb.append(".");
fsb.append(location[1]);
--- 2238,2242 ----
}
! fsb.append(obj.getJDBCMetaData().getTargetSQLTable(obj.getDataContext()));
fsb.append(".");
fsb.append(location[1]);
***************
*** 2227,2230 ****
--- 2260,2266 ----
* @throws DBException upon error
* @return java.lang.String.
+ *
+ * Modify by Yves Henri AMAIZO <amy_amaizo at compuserve.com>
+ * @since $DatabaseSchema $Date$
*/
protected String buildWhereClauseBuffer(boolean useAllFields, FastStringBuffer myStatement)
***************
*** 2245,2249 ****
oneObj = (JDBCDataObject)this.myDataObjects.get(oneAlias);
! byTableName.put(oneObj.getJDBCMetaData().getTargetTable(), oneObj);
for (Iterator i = oneObj.getMetaData().getFieldListArray().iterator(); i.hasNext();) {
--- 2281,2285 ----
oneObj = (JDBCDataObject)this.myDataObjects.get(oneAlias);
! byTableName.put(oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()), oneObj);
for (Iterator i = oneObj.getMetaData().getFieldListArray().iterator(); i.hasNext();) {
***************
*** 2252,2257 ****
DataFieldMetaData fieldMetaData = oneObj.getFieldMetaData(fieldName);
if (!fieldMetaData.isVirtual() && !fieldMetaData.isLongObjectType()) {
! fields.add(oneObj.getJDBCMetaData().getTargetTable() + "." +
! fieldName);
}
} /* for each field */
--- 2288,2293 ----
DataFieldMetaData fieldMetaData = oneObj.getFieldMetaData(fieldName);
if (!fieldMetaData.isVirtual() && !fieldMetaData.isLongObjectType()) {
! fields.add(oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()) + "." +
! fieldName);
}
} /* for each field */
***************
*** 2262,2266 ****
String oneAlias = (String)eachAlias.next();
oneObj = (JDBCDataObject)this.myDataObjects.get(oneAlias);
! byTableName.put(oneObj.getJDBCMetaData().getTargetTable(), oneObj);
for (Iterator i = oneObj.getMetaData().getKeyFieldListArray().iterator();
--- 2298,2302 ----
String oneAlias = (String)eachAlias.next();
oneObj = (JDBCDataObject)this.myDataObjects.get(oneAlias);
! byTableName.put(oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()), oneObj);
for (Iterator i = oneObj.getMetaData().getKeyFieldListArray().iterator();
***************
*** 2270,2275 ****
DataFieldMetaData fieldMetaData = oneObj.getFieldMetaData(fieldName);
if (!fieldMetaData.isVirtual() && !fieldMetaData.isBinaryObjectType()) {
! fields.add(oneObj.getJDBCMetaData().getTargetTable() + "." +
! fieldName);
}
} /* for each field */
--- 2306,2311 ----
DataFieldMetaData fieldMetaData = oneObj.getFieldMetaData(fieldName);
if (!fieldMetaData.isVirtual() && !fieldMetaData.isBinaryObjectType()) {
! fields.add(oneObj.getJDBCMetaData().getTargetSQLTable(oneObj.getDataContext()) + "." +
! fieldName);
}
} /* for each field */
***************
*** 2378,2423 ****
if (sJdbcUtil.containsWildCards(oneObj,oneFieldValue)) {
if (caseSensitiveQuery) {
! myStatement.append(objMetadata.getTargetTable() + "." +
! oneFieldName);
myStatement.append(" LIKE ");
myStatement.append(oneFieldValue);
} else {
myStatement.append("UPPER(");
! myStatement.append(objMetadata.getTargetTable() + "." +
! oneFieldName);
myStatement.append(") LIKE ");
myStatement.append(oneFieldValue.toUpperCase());
}
} else if (rangeString != null) {
! myStatement.append(objMetadata.getTargetTable() + "." +
! oneFieldName);
! myStatement.append(" " + rangeString + " ");
! myStatement.append(oneFieldValue);
! } else if ((oneFieldValue.trim().equalsIgnoreCase("is null")) ||
! (oneFieldValue.trim().equalsIgnoreCase(
! "is not null"))) {
! myStatement.append(objMetadata.getTargetTable() + "." +
! oneFieldName);
! myStatement.append(" ");
! myStatement.append(oneFieldValue.trim());
} else {
! if (caseSensitiveQuery) {
! myStatement.append(objMetadata.getTargetTable() + "." +
oneFieldName);
myStatement.append(" = ");
myStatement.append(oneFieldValue);
} else {
! DataFieldMetaData dfmd = oneDataField.getFieldMetaData();
! if (dfmd.isQuotedTextType()) {
! myStatement.append("UPPER(");
! myStatement.append(objMetadata.getTargetTable() + "." +
! oneFieldName);
! myStatement.append(") = ");
! myStatement.append(oneFieldValue.toUpperCase());
! } else {
! myStatement.append(objMetadata.getTargetTable() + "." +
! oneFieldName);
myStatement.append(" = ");
myStatement.append(oneFieldValue);
}
}
--- 2414,2460 ----
if (sJdbcUtil.containsWildCards(oneObj,oneFieldValue)) {
if (caseSensitiveQuery) {
! myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
! oneFieldName);
myStatement.append(" LIKE ");
myStatement.append(oneFieldValue);
} else {
myStatement.append("UPPER(");
! myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
! oneFieldName);
myStatement.append(") LIKE ");
myStatement.append(oneFieldValue.toUpperCase());
}
} else if (rangeString != null) {
! myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
! oneFieldName);
! myStatement.append(" " + rangeString + " ");
! myStatement.append(oneFieldValue);
} else {
! if ((oneFieldValue.trim().equalsIgnoreCase("is null")) ||
! (oneFieldValue.trim().equalsIgnoreCase("is not null"))) {
! myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
oneFieldName);
myStatement.append(" = ");
myStatement.append(oneFieldValue);
} else {
! if (caseSensitiveQuery) {
! myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
! oneFieldName);
myStatement.append(" = ");
myStatement.append(oneFieldValue);
+ } else {
+ DataFieldMetaData dfmd = oneDataField.getFieldMetaData();
+ if (dfmd.isQuotedTextType()) {
+ myStatement.append("UPPER(");
+ myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
+ oneFieldName);
+ myStatement.append(") = ");
+ myStatement.append(oneFieldValue.toUpperCase());
+ } else {
+ myStatement.append(objMetadata.getTargetSQLTable(oneObj.getDataContext()) + "." +
+ oneFieldName);
+ myStatement.append(" = ");
+ myStatement.append(oneFieldValue);
+ }
}
}
***************
*** 2610,2613 ****
--- 2647,2680 ----
this.setDataContext(setupTablesContext);
}
+
+ /**
+ * Set a regular expression "mask" for this base data object that specifies it's
+ * valid values. The mask should already be compiled by the regular
+ * expression compiler
+ * @param newMask The compiled regular expression mask
+ *
+ */
+ public void setGlobalMask(Pattern newMask) {
+ this.setGlobalMask(newMask);
+ }
+
+ /**
+ * Get the compiled regular expression for this base data object.
+ * @return the precompiled regular expression mask
+ */
+ public Pattern getGlobalMask() {
+ return this.getGlobalMask();
+ }
+
+
+ /**
+ * Return boolean if the data object has a mask set
+ *
+ * @return True if the data object mask is set, else false if it is not
+ */
+ public boolean isGlobalMasked() {
+ return this.isGlobalMasked();
+ } /* isMasked() */
+
}
More information about the cvs
mailing list