[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