1 package org.csc.phynixx.connection;
2
3 /*
4 * #%L
5 * phynixx-connection
6 * %%
7 * Copyright (C) 2014 csc
8 * %%
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
12 *
13 * http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 * #L%
21 */
22
23
24 import org.csc.phynixx.loggersystem.logrecord.IDataRecordReplay;
25 import org.csc.phynixx.loggersystem.logrecord.IXADataRecorder;
26
27 /**
28 * Connction is aware of a {@link IXADataRecorder}. The enviromne tof the connection provides a {@link IXADataRecorder} if necessary and
29 * sets it via {@link #setXADataRecorder(org.csc.phynixx.loggersystem.logrecord.IXADataRecorder)}.
30 */
31 public interface IXADataRecorderAware {
32
33
34 /**
35 * sets the current datzaRecorder. It is set bey the environment
36 *
37 * @param xaDataRecorder
38 */
39 void setXADataRecorder(IXADataRecorder xaDataRecorder);
40
41
42 /**
43 * @return the current xadataRecorder
44 */
45 IXADataRecorder getXADataRecorder();
46
47
48 /**
49 * This callback delivers the from the persistence store if the transaction/connection
50 * has been interrupted an has ended abnormal. These data lets the connection recover its state at time time of interruption.
51 *
52 * @return callback for recovering data.
53 */
54 IDataRecordReplay recoverReplayListener();
55
56 }