1 21 22 package org.opensubsystems.core.persist.db; 23 24 import java.sql.Connection ; 25 import java.sql.PreparedStatement ; 26 import java.sql.SQLException ; 27 28 import org.opensubsystems.core.error.OSSException; 29 import org.opensubsystems.core.util.DatabaseUtils; 30 31 32 42 public class DatabaseReadSingleDataObjectOperation extends DatabaseReadOperation 43 { 44 46 49 private int m_iId; 50 51 54 private int m_iDomainId; 55 56 58 68 public DatabaseReadSingleDataObjectOperation( 69 DatabaseFactoryImpl factory, 70 String strQuery, 71 DatabaseSchema schema, 72 int iId, 73 int iDomainId 74 ) 75 { 76 super(factory, strQuery, schema, factory.getDataType()); 77 78 m_iId = iId; 79 m_iDomainId = iDomainId; 80 } 81 82 84 87 protected Object performOperation( 88 DatabaseFactoryImpl dbfactory, 89 Connection cntConnection, 90 PreparedStatement pstmQuery 91 ) throws OSSException, SQLException  92 { 93 StringBuffer buffer = new StringBuffer (); 94 buffer.append("Multiple records loaded from database for ID "); 96 buffer.append(m_iId); 97 if (m_dbschema.isInDomain()) 98 { 99 buffer.append(" and domain ID "); 100 buffer.append(m_iDomainId); 101 } 102 103 pstmQuery.setInt(1, m_iId); 104 if (m_dbschema.isInDomain()) 105 { 106 pstmQuery.setInt(2, m_iDomainId); 108 } 109 110 return DatabaseUtils.loadAtMostOneData(dbfactory, pstmQuery, buffer.toString()); 111 } 112 } 113
| Popular Tags
|