[Batchserver-cvs] batchserver/src/org/jmonks/batchserver/framework/repository/jdbc JdbcRepository.
Brought to you by:
suresh_pragada
From: Suresh <sur...@us...> - 2006-09-12 23:23:50
|
Update of /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/framework/repository/jdbc In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv21451 Modified Files: JdbcRepository.java Log Message: no message Index: JdbcRepository.java =================================================================== RCS file: /cvsroot/batchserver/batchserver/src/org/jmonks/batchserver/framework/repository/jdbc/JdbcRepository.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** JdbcRepository.java 12 Sep 2006 04:07:55 -0000 1.2 --- JdbcRepository.java 12 Sep 2006 23:23:46 -0000 1.3 *************** *** 102,114 **** /** ! * @see org.jmonks.batchserver.framework.repository.Repository#clearDataTransferredToNextJob(String) */ ! public boolean clearDataTransferredFromThisJob(String jobName) { logger.trace("Entering clearDataTransferredToNextJob"); - logger.debug("clearDataTransferredToNextJob :: job name = " + jobName); - - if(jobName==null) - throw new IllegalArgumentException("job name cannot be null."); boolean dataCleared=false; --- 102,110 ---- /** ! * @see org.jmonks.batchserver.framework.repository.Repository#clearDataTransferredToNextJob() */ ! public boolean clearDataTransferredFromThisJob() { logger.trace("Entering clearDataTransferredToNextJob"); boolean dataCleared=false; *************** *** 121,125 **** { PreparedStatement statement=connection.prepareStatement("delete from job_data_transfer where source_job_name=?"); ! statement.setString(1, jobName); statement.executeUpdate(); statement.close(); --- 117,121 ---- { PreparedStatement statement=connection.prepareStatement("delete from job_data_transfer where source_job_name=?"); ! statement.setString(1, this.jobName); statement.executeUpdate(); statement.close(); *************** *** 131,135 **** exception.printStackTrace(); logger.error("Exception while trying to clear the data for requested job = " ! + jobName + ". Message = " + exception.getMessage(), exception); dataCleared=false; } --- 127,131 ---- exception.printStackTrace(); logger.error("Exception while trying to clear the data for requested job = " ! + this.jobName + ". Message = " + exception.getMessage(), exception); dataCleared=false; } *************** *** 144,155 **** /** ! * @see org.jmonks.batchserver.framework.repository Repository#sendDataToNextJob(String,String,String,Object) */ ! public boolean sendDataToNextJob(String dataIdentifier, String sourceJobName, String targetJobName, Object data) { logger.trace("Entering sendDataToNextJob);"); ! logger.debug("data identifier = " + dataIdentifier + " source job name = " + sourceJobName + " target job name = " + targetJobName + " data = " + data); ! if(dataIdentifier==null || sourceJobName==null || targetJobName==null || data==null) throw new IllegalArgumentException("No arguments cannot be null to the sendDataToNextJob method."); --- 140,151 ---- /** ! * @see org.jmonks.batchserver.framework.repository Repository#sendDataToNextJob(String,String,Object) */ ! public boolean sendDataToNextJob(String dataIdentifier, String nextJobName, final Object data) { logger.trace("Entering sendDataToNextJob);"); ! logger.debug("data identifier = " + dataIdentifier + " next job name = " + nextJobName + " data = " + data); ! if(dataIdentifier==null || nextJobName==null || data==null) throw new IllegalArgumentException("No arguments cannot be null to the sendDataToNextJob method."); *************** *** 163,176 **** { PreparedStatement deleteStatement=connection.prepareStatement("delete from job_data_transfer where source_job_name=? and destination_job_name=? and job_data_identifier=?"); ! deleteStatement.setString(1, sourceJobName); ! deleteStatement.setString(2, targetJobName); deleteStatement.setString(3, dataIdentifier); deleteStatement.executeUpdate(); deleteStatement.close(); ! logger.debug("Data has been cleared before loading = " + sourceJobName + " " + targetJobName + " " + dataIdentifier); PreparedStatement insertStatement=connection.prepareStatement("insert into job_data_transfer (source_job_name,destination_job_name,job_data_identifier,job_data) values (?,?,?,?)"); ! insertStatement.setString(1, sourceJobName); ! insertStatement.setString(2, targetJobName); insertStatement.setString(3, dataIdentifier); byte[] objectByteArray=this.getByteArrayFromObject(data); --- 159,172 ---- { PreparedStatement deleteStatement=connection.prepareStatement("delete from job_data_transfer where source_job_name=? and destination_job_name=? and job_data_identifier=?"); ! deleteStatement.setString(1, this.jobName); ! deleteStatement.setString(2, nextJobName); deleteStatement.setString(3, dataIdentifier); deleteStatement.executeUpdate(); deleteStatement.close(); ! logger.debug("Data has been cleared before loading = " + this.jobName + " " + nextJobName + " " + dataIdentifier); PreparedStatement insertStatement=connection.prepareStatement("insert into job_data_transfer (source_job_name,destination_job_name,job_data_identifier,job_data) values (?,?,?,?)"); ! insertStatement.setString(1, this.jobName); ! insertStatement.setString(2, nextJobName); insertStatement.setString(3, dataIdentifier); byte[] objectByteArray=this.getByteArrayFromObject(data); *************** *** 178,182 **** insertStatement.executeUpdate(); insertStatement.close(); ! logger.debug("Data has been loaded = " + sourceJobName + " " + targetJobName + " " + dataIdentifier); connection.commit(); --- 174,178 ---- insertStatement.executeUpdate(); insertStatement.close(); ! logger.debug("Data has been loaded = " + this.jobName + " " + nextJobName + " " + dataIdentifier); connection.commit(); *************** *** 186,191 **** { exception.printStackTrace(); ! logger.error("Exception while trying to send the data from " + sourceJobName + " to job = " ! + targetJobName + " with the identifier " + dataIdentifier + ". Message = " + exception.getMessage(), exception); dataSaved=false; } --- 182,187 ---- { exception.printStackTrace(); ! logger.error("Exception while trying to send the data from " + this.jobName + " to job = " ! + nextJobName + " with the identifier " + dataIdentifier + ". Message = " + exception.getMessage(), exception); dataSaved=false; } *************** *** 200,212 **** /** ! * @see org.jmonks.batchserver.framework.repository.Repository#getDataFromPreviousJob(String,String,String) */ ! public Object getDataFromPreviousJob(String dataIdentifier, String sourceJobName, String targetJobName) { logger.trace("Entering getDataFromPreviousJob"); ! logger.debug("data identifier = " + dataIdentifier + " source job name = " + sourceJobName + " target job name = " + targetJobName); ! if(dataIdentifier==null || sourceJobName==null || targetJobName==null) ! throw new IllegalArgumentException("Data identifer, source job name and target job name cannot be null " + "to get the data from previous job."); --- 196,208 ---- /** ! * @see org.jmonks.batchserver.framework.repository.Repository#getDataFromPreviousJob(String,String) */ ! public Object getDataFromPreviousJob(String dataIdentifier, String previousJobName) { logger.trace("Entering getDataFromPreviousJob"); ! logger.debug("data identifier = " + dataIdentifier + " previous job name = " + previousJobName); ! if(dataIdentifier==null || previousJobName==null) ! throw new IllegalArgumentException("Data identifer and previous job name cannot be null " + "to get the data from previous job."); *************** *** 220,225 **** { PreparedStatement statement=connection.prepareStatement("select job_data from job_data_transfer where source_job_name=? and destination_job_name=? and job_data_identifier=?"); ! statement.setString(1, sourceJobName); ! statement.setString(2, targetJobName); statement.setString(3, dataIdentifier); ResultSet rs=statement.executeQuery(); --- 216,221 ---- { PreparedStatement statement=connection.prepareStatement("select job_data from job_data_transfer where source_job_name=? and destination_job_name=? and job_data_identifier=?"); ! statement.setString(1, previousJobName); ! statement.setString(2, this.jobName); statement.setString(3, dataIdentifier); ResultSet rs=statement.executeQuery(); *************** *** 237,242 **** { exception.printStackTrace(); ! logger.error("Exception while trying to send the data from " + sourceJobName + " to job = " ! + targetJobName + " with the identifier " + dataIdentifier + ". Message = " + exception.getMessage(), exception); data=null; } --- 233,238 ---- { exception.printStackTrace(); ! logger.error("Exception while trying to send the data from " + previousJobName + " to job = " ! + this.jobName + " with the identifier " + dataIdentifier + ". Message = " + exception.getMessage(), exception); data=null; } *************** *** 251,255 **** /** - * * @see org.jmonks.batchserver.framework.repository.Repository#logStatistics(org.jmonks.batchserver.framework.JobStatistics) */ --- 247,250 ---- *************** *** 260,265 **** if(statistics==null) throw new IllegalArgumentException("Null statistic objects will not be saved in repository"); logger.debug("Logging = " + statistics.toString()); - boolean logged=false; Connection connection=JdbcConnectionHelper.getConnection(this.jdbcConfigMap); --- 255,262 ---- if(statistics==null) throw new IllegalArgumentException("Null statistic objects will not be saved in repository"); + if(!statistics.getJobname().equals(this.jobName)) + throw new IllegalArgumentException("Statistics object is not related to the job configured for the repository."); + logger.debug("Logging = " + statistics.toString()); boolean logged=false; Connection connection=JdbcConnectionHelper.getConnection(this.jdbcConfigMap); *************** *** 303,421 **** /** ! * @see org.jmonks.batchserver.framework.repository.Repository#getStatistics(String) ! */ ! public JobStatistics[] getStatistics(String jobName) ! { ! logger.trace("Entering getStatistics"); ! logger.debug("getStatistics :: job name = " + jobName); ! ! if(jobName==null) ! throw new IllegalArgumentException("job name cannot be null for querying the job statistics."); ! ! JobStatistics[] statistics=null; ! List jobStatisticsList=null; ! Connection connection=JdbcConnectionHelper.getConnection(this.jdbcConfigMap); ! if(connection==null) ! statistics=new JobStatistics[]{}; ! else ! { ! try ! { ! PreparedStatement statement=connection.prepareStatement("select job_start_time,job_end_time,job_exit_code,job_exit_reason,records_processed,memory_usage from job_statistics where job_name=?"); ! statement.setString(1, jobName); ! ResultSet rs=statement.executeQuery(); ! jobStatisticsList=new ArrayList(); ! while(rs.next()) ! { ! JobStatistics statistic=new JobStatistics(jobName); ! statistic.setStartTime(new java.util.Date(rs.getTimestamp(1).getTime())); ! statistic.setEndTime(new java.util.Date(rs.getTimestamp(2).getTime())); ! int exitCode=rs.getInt(3); ! String exitReason=rs.getString(4); ! ErrorCode errorCode=ErrorCode.createErrorCode(exitCode, exitReason==null?"":exitReason); ! statistic.setExitCode(errorCode); ! statistic.setRecordsProcessed(rs.getInt(5)); ! statistic.setMaxMemeoryUsage(rs.getInt(6)); ! jobStatisticsList.add(statistic); ! } ! rs.close(); ! statement.close(); ! } ! catch(SQLException exception) ! { ! exception.printStackTrace(); ! logger.error("Exception while trying to get the job statistics for the job = " + jobName + ". Message = " + exception.getMessage(), exception); ! } ! finally ! { ! JdbcConnectionHelper.closeConnection(connection); ! if(jobStatisticsList!=null) ! statistics=(JobStatistics[])jobStatisticsList.toArray(); ! else ! statistics=new JobStatistics[]{}; ! } ! } ! logger.trace("Exiting getStatistics"); ! return statistics; ! } ! ! /** ! * @see org.jmonks.batchserver.framework.repository.Repository#lookupJobMgmtMntrInfo(String) ! */ ! public Object lookupJobMgmtMntrInfo(String jobName) ! { ! logger.trace("Entering lookupJobMgmtMntrInfo"); ! logger.debug("lookupJobMgmtMntrInfo :: job name = " + jobName); ! ! if(jobName==null) ! throw new IllegalArgumentException("jobName cannot be null to lookup the mgmt and mntr information."); ! ! Object registredInfo=null; ! Connection connection=JdbcConnectionHelper.getConnection(this.jdbcConfigMap); ! if(connection==null) ! registredInfo=null; ! else ! { ! try ! { ! PreparedStatement statement=connection.prepareStatement("select job_info from job_mgmt_mntr_info where job_name=?"); ! statement.setString(1, jobName); ! ResultSet rs=statement.executeQuery(); ! if(rs.next()) ! { ! InputStream inputStream=rs.getBinaryStream(1); ! registredInfo=getObjectFromByteArray(inputStream); ! } ! else ! registredInfo=null; ! rs.close(); ! statement.close(); ! } ! catch(SQLException exception) ! { ! exception.printStackTrace(); ! logger.error("Exception while trying to lookup mgmt and mntr info = " + jobName); ! registredInfo=null; ! } ! finally ! { ! JdbcConnectionHelper.closeConnection(connection); ! } ! } ! logger.trace("Exiting lookupJobMgmtMntrInfo"); ! return registredInfo; ! } ! ! /** ! * @see org.jmonks.batchserver.framework.repository.Repository#unregisterJobMgmtMntrInfo(String) */ ! public boolean unregisterJobMgmtMntrInfo(String jobName) { logger.trace("Entering unregisterJobMgmtMntrInfo"); - logger.debug("unregisterJobMgmtMntrInfo :: job name = " + jobName); - - if(jobName==null) - throw new IllegalArgumentException("jobName cannot be null to unregister the mgmt and mntr information."); - boolean unregistered=false; --- 300,308 ---- /** ! * @see org.jmonks.batchserver.framework.repository.Repository#unregisterJobMgmtMntrInfo() */ ! public boolean unregisterJobMgmtMntrInfo() { logger.trace("Entering unregisterJobMgmtMntrInfo"); boolean unregistered=false; *************** *** 428,432 **** { PreparedStatement statement=connection.prepareStatement("delete from job_mgmt_mntr_info where job_name=?"); ! statement.setString(1, jobName); statement.executeUpdate(); statement.close(); --- 315,319 ---- { PreparedStatement statement=connection.prepareStatement("delete from job_mgmt_mntr_info where job_name=?"); ! statement.setString(1, this.jobName); statement.executeUpdate(); statement.close(); *************** *** 437,441 **** { exception.printStackTrace(); ! logger.error("Exception while trying to lookup mgmt and mntr info = " + jobName); unregistered=false; } --- 324,328 ---- { exception.printStackTrace(); ! logger.error("Exception while trying to lookup mgmt and mntr info = " + this.jobName); unregistered=false; } *************** *** 450,462 **** /** ! * @see org.jmonks.batchserver.framework.repository.Repository#registerJobMgmtMntrInfo(String,Object) */ ! public boolean registerJobMgmtMntrInfo(String jobName, Object registrationInfo) { logger.trace("Entering registerJobMgmtMntrInfo"); ! logger.debug("job name = " + jobName + " registratinfo = " + registrationInfo); - if(jobName==null) - throw new IllegalArgumentException("Job name cannot be null to register the job in repository."); if(registrationInfo==null) throw new IllegalArgumentException("Job registration information cannot be null to register the job in repository."); --- 337,347 ---- /** ! * @see org.jmonks.batchserver.framework.repository.Repository#registerJobMgmtMntrInfo(Object) */ ! public boolean registerJobMgmtMntrInfo(final Object registrationInfo) { logger.trace("Entering registerJobMgmtMntrInfo"); ! logger.debug(" registratinfo = " + registrationInfo); if(registrationInfo==null) throw new IllegalArgumentException("Job registration information cannot be null to register the job in repository."); *************** *** 472,487 **** { PreparedStatement deleteStatement=connection.prepareStatement("delete from job_mgmt_mntr_info where job_name=?"); ! deleteStatement.setString(1, jobName); deleteStatement.executeUpdate(); deleteStatement.close(); ! logger.debug("Cleared the existing registration info = " + jobName); PreparedStatement insertStatement=connection.prepareStatement("insert into job_mgmt_mntr_info (job_name,job_info) values (?,?)"); ! insertStatement.setString(1, jobName); byte[] objectByteArray=this.getByteArrayFromObject(registrationInfo); insertStatement.setBinaryStream(2, new ByteArrayInputStream(objectByteArray), objectByteArray.length); insertStatement.executeUpdate(); insertStatement.close(); ! logger.debug("Registered mgmt mntr info = " + jobName); connection.commit(); --- 357,372 ---- { PreparedStatement deleteStatement=connection.prepareStatement("delete from job_mgmt_mntr_info where job_name=?"); ! deleteStatement.setString(1, this.jobName); deleteStatement.executeUpdate(); deleteStatement.close(); ! logger.debug("Cleared the existing registration info = " + this.jobName); PreparedStatement insertStatement=connection.prepareStatement("insert into job_mgmt_mntr_info (job_name,job_info) values (?,?)"); ! insertStatement.setString(1, this.jobName); byte[] objectByteArray=this.getByteArrayFromObject(registrationInfo); insertStatement.setBinaryStream(2, new ByteArrayInputStream(objectByteArray), objectByteArray.length); insertStatement.executeUpdate(); insertStatement.close(); ! logger.debug("Registered mgmt mntr info = " + this.jobName); connection.commit(); *************** *** 491,495 **** { exception.printStackTrace(); ! logger.error("Exception while trying to register the mgmt mntr info = " + jobName+ ". Message = " + exception.getMessage(), exception); registered=false; } --- 376,380 ---- { exception.printStackTrace(); ! logger.error("Exception while trying to register the mgmt mntr info = " + this.jobName+ ". Message = " + exception.getMessage(), exception); registered=false; } *************** *** 504,550 **** /** ! * @see org.jmonks.batchserver.framework.repository.Repository#getAllRegisteredMgmtMntrInfo() ! */ ! public Map getAllRegisteredMgmtMntrInfo() ! { ! logger.trace("Entering getAllRegisteredMgmtMntrInfo"); ! ! Map registeredJobs=null; ! ! Connection connection=JdbcConnectionHelper.getConnection(this.jdbcConfigMap); ! if(connection==null) ! registeredJobs=new HashMap(); ! else ! { ! try ! { ! PreparedStatement statement=connection.prepareStatement("select job_name, job_info from job_mgmt_mntr_info"); ! ResultSet rs=statement.executeQuery(); ! registeredJobs=new HashMap(); ! while(rs.next()) ! { ! String jobName=rs.getString(1); ! InputStream inputStream=rs.getBinaryStream(2); ! Object registredInfo=getObjectFromByteArray(inputStream); ! registeredJobs.put(jobName, registredInfo); ! } ! rs.close(); ! statement.close(); ! } ! catch(SQLException exception) ! { ! exception.printStackTrace(); ! logger.error("Exception while trying to get all the registered jobs"); ! registeredJobs=new HashMap(); ! } ! finally ! { ! JdbcConnectionHelper.closeConnection(connection); ! } ! } ! logger.trace("Exiting getAllRegisteredMgmtMntrInfo"); ! return registeredJobs; ! } ! private byte[] getByteArrayFromObject(Object object) { --- 389,398 ---- /** ! * Serializes the given object and return that serialized data as byte array. ! * ! * @param object Object to be serialized. ! * ! * @return Returns the serialized data as byte array. ! */ private byte[] getByteArrayFromObject(Object object) { *************** *** 566,570 **** } } ! private Object getObjectFromByteArray(InputStream inputStream) { --- 414,425 ---- } } ! ! /** ! * Deserializes the given inputstream and return the object. ! * ! * @param inputStream InputStream to be deserialized. ! * ! * @return Returns the deserialized object. ! */ private Object getObjectFromByteArray(InputStream inputStream) { *************** *** 588,607 **** return null; } ! } ! ! //////// Need to be implemented in the future. ! //////// public boolean releaseController(String jobName) ! //////// { ! //////// return false; ! //////// } ! //////// ! //////// public boolean saveController(String jobName, JobController controller) ! //////// { ! //////// return false; ! //////// } ! //////// ! //////// public JobController loadController(String jobName) ! //////// { ! //////// return null; ! //////// } } --- 443,446 ---- return null; } ! } } |