in modules/persistence/src/main/java/org/apache/sandesha2/storage/jdbc/PersistentRMSBeanMgr.java [375:452]
public boolean insert(RMSBean bean)
throws SandeshaStorageException {
log.debug("insert RMSBean " + bean);
try {
PreparedStatement pstmt = getDbConnection().prepareStatement("insert into wsrm_rms(" +
"create_seq_msg_id,sequence_id,to_epr_addr,to_epr,reply_to_epr_addr,reply_to_epr,acks_to_epr_addr,acks_to_epr,rm_version,security_token_data," +
"last_activated_time,closed,terminated_flag,polling_mode,service_name," +
"flags,id,internal_sequence_id,create_sequence_msg_store_key," +
"reference_msg_store_key,last_send_error,highest_out_relates_to," +
"client_completed_messages,transport_to,offered_endpoint,offered_sequence," +
"anonymous_uuid,last_send_error_timestamp,last_out_message,highest_out_message_number," +
"next_message_number,terminate_added,timed_out,sequence_closed_client," +
"expected_replies,soap_version,termination_pauser_for_cs,avoid_auto_termination," +
"rms_flags,offered_endpoint_epr_addr,offered_endpoint_epr,reallocated,internalSeqIDOfSeqUsedForReallocation)" +
"values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
pstmt.setString(1, bean.getCreateSeqMsgID());
pstmt.setString(2, bean.getSequenceID());
EndpointReference epr = bean.getToEndpointReference();
pstmt.setString(3, epr != null ? epr.getAddress() : null);
// Derby don't serialize object in blob !
// pstmt.setObject(4, epr);
ByteArrayInputStream bais = serialize(epr);
pstmt.setBinaryStream(4, bais, bais.available());
epr = bean.getReplyToEndpointReference();
pstmt.setString(5, epr != null ? epr.getAddress() : null);
bais = serialize(epr);
pstmt.setBinaryStream(6, bais, bais.available());
epr = bean.getAcksToEndpointReference();
pstmt.setString(7, epr != null ? epr.getAddress() : null);
bais = serialize(epr);
pstmt.setBinaryStream(8, bais, bais.available());
pstmt.setString(9, bean.getRMVersion());
pstmt.setString(10, bean.getSecurityTokenData());
pstmt.setLong(11, bean.getLastActivatedTime());
pstmt.setInt(12, bean.isClosed() ? 1 : 0);
pstmt.setInt(13, bean.isTerminated() ? 1 : 0);
pstmt.setInt(14, bean.isPollingMode() ? 1 : 0);
pstmt.setString(15, bean.getServiceName());
pstmt.setInt(16, bean.getFlags());
pstmt.setLong(17, bean.getId());
pstmt.setString(18, bean.getInternalSequenceID());
pstmt.setString(19, bean.getCreateSequenceMsgStoreKey());
pstmt.setString(20, bean.getReferenceMessageStoreKey());
bais = serialize(bean.getLastSendError());
pstmt.setBinaryStream(21, bais, bais.available());
pstmt.setString(22, bean.getHighestOutRelatesTo());
RangeString rs = bean.getClientCompletedMessages();
pstmt.setString(23, rs != null ? rs.toString() : null);
pstmt.setString(24, bean.getTransportTo());
pstmt.setString(25, bean.getOfferedEndPoint());
pstmt.setString(26, bean.getOfferedSequence());
pstmt.setString(27, bean.getAnonymousUUID());
pstmt.setLong(28, bean.getLastSendErrorTimestamp());
pstmt.setLong(29, bean.getLastOutMessage());
pstmt.setLong(30, bean.getHighestOutMessageNumber());
pstmt.setLong(31, bean.getNextMessageNumber());
pstmt.setInt(32, bean.isTerminateAdded() ? 1 : 0);
pstmt.setInt(33, bean.isTimedOut() ? 1 : 0);
pstmt.setInt(34, bean.isSequenceClosedClient() ? 1 : 0);
pstmt.setLong(35, bean.getExpectedReplies());
pstmt.setInt(36, bean.getSoapVersion());
pstmt.setInt(37, bean.isTerminationPauserForCS() ? 1 : 0);
pstmt.setInt(38, bean.isAvoidAutoTermination() ? 1 : 0);
pstmt.setInt(39, bean.getRmsFlags());
epr = bean.getOfferedEndPointEPR();
pstmt.setString(40, epr != null ? epr.getAddress() : null);
bais = serialize(epr);
pstmt.setBinaryStream(41, bais, bais.available());
pstmt.setInt(42, bean.isReallocated());
pstmt.setString(43, bean.getInternalSeqIDOfSeqUsedForReallocation());
pstmt.execute();
pstmt.close();
} catch (Exception ex) {
log.debug("Insert Exception ", ex);
throw new SandeshaStorageException("Exception in RMSBeanMgr insert", ex);
}
return true;
}