906 |
|
|
907 |
|
TTransactionAction = (TARollback, TACommit, TACommitRetaining, TARollbackRetaining); |
908 |
|
TTransactionCompletion = TARollback.. TACommit; |
909 |
+ |
TTrCompletionState = (trCommitted, trRolledback, trCommitFailed, trRollbackFailed); |
910 |
+ |
|
911 |
|
|
912 |
|
ITransaction = interface |
913 |
|
['{30928d0e-a9d7-4c61-b7cf-14f4f38abe2a}'] |
919 |
|
function GetJournalingActive(attachment: IAttachment): boolean; |
920 |
|
function GetDefaultCompletion: TTransactionCompletion; |
921 |
|
procedure PrepareForCommit; {Two phase commit - stage 1} |
922 |
< |
procedure Commit(Force: boolean=false); |
922 |
> |
function Commit(Force: boolean=false): TTrCompletionState; |
923 |
|
procedure CommitRetaining; |
924 |
|
function HasActivity: boolean; |
925 |
< |
procedure Rollback(Force: boolean=false); |
925 |
> |
function Rollback(Force: boolean=false): TTrCompletionState; |
926 |
|
procedure RollbackRetaining; |
927 |
|
function GetAttachmentCount: integer; |
928 |
|
function GetAttachment(index: integer): IAttachment; |