1 14 package org.compiere.util; 15 16 import java.io.Serializable ; 17 import java.util.ArrayList ; 18 19 25 public class CompiereStatementVO implements Serializable 26 { 27 33 public CompiereStatementVO (String sql, int resultSetType, int resultSetConcurrency) 34 { 35 setSql(sql); 36 setResultSetType(resultSetType); 37 setResultSetConcurrency(resultSetConcurrency); 38 } 40 private String m_sql; 41 private int m_resultSetType; 42 private int m_resultSetConcurrency; 43 44 private ArrayList m_parameters = new ArrayList (); 45 46 50 public String toString() 51 { 52 StringBuffer sb = new StringBuffer ("CompiereStatementVO["); 53 sb.append(m_sql); 54 for (int i = 0; i < m_parameters.size(); i++) 55 sb.append("; #").append(i+1).append("=").append(m_parameters.get(i)); 56 sb.append("]"); 57 return sb.toString(); 58 } 60 65 public void setParameter (int index1, Object element) 66 { 67 if (element != null && !(element instanceof Serializable )) 68 throw new java.lang.RuntimeException ("setParameter not Serializable - " + element.getClass().toString()); 69 int zeroIndex = index1 - 1; 70 if (m_parameters.size() == zeroIndex) 71 { 72 m_parameters.add(element); 73 } 74 else if (m_parameters.size() < zeroIndex) 75 { 76 while (m_parameters.size() < zeroIndex) 77 m_parameters.add (null); m_parameters.add(element); 79 } 80 else 81 m_parameters.set(zeroIndex, element); 82 } 84 87 public void clearParameters() 88 { 89 m_parameters = new ArrayList (); 90 } 92 public ArrayList getParameters() 93 { 94 return m_parameters; 95 } 97 101 public String getSql() 102 { 103 return m_sql; 104 } 106 112 public void setSql(String sql) 113 { 114 int pos = sql.indexOf("ROWID"); 116 int posTrim = sql.indexOf("TRIM(ROWID)"); 117 int posWhere = sql.indexOf("WHERE"); 118 if (pos != -1 && posTrim == -1 && (posWhere == -1 || pos < posWhere)) 119 m_sql = sql.substring(0, pos) + "TRIM(ROWID)" + sql.substring(pos+5); 120 else 121 m_sql = sql; 122 } 124 public int getResultSetConcurrency() 125 { 126 return m_resultSetConcurrency; 127 } 128 public int getResultSetType() 129 { 130 return m_resultSetType; 131 } 132 133 public void setResultSetType(int resultSetType) 134 { 135 m_resultSetType = resultSetType; 136 } 137 public void setResultSetConcurrency(int resultSetConcurrency) 138 { 139 m_resultSetConcurrency = resultSetConcurrency; 140 } 141 142 } | Popular Tags |