1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.dbunit.operation;
23
24 import org.dbunit.DatabaseUnitException;
25 import org.dbunit.database.IDatabaseConnection;
26 import org.dbunit.dataset.IDataSet;
27
28 import java.sql.SQLException;
29
30
31
32
33
34
35
36
37 public abstract class DatabaseOperation
38 {
39
40 public static final DatabaseOperation NONE = new DummyOperation();
41
42 public static final DatabaseOperation UPDATE = new UpdateOperation();
43
44 public static final DatabaseOperation INSERT = new InsertOperation();
45
46 public static final DatabaseOperation REFRESH = new RefreshOperation();
47
48 public static final DatabaseOperation DELETE = new DeleteOperation();
49
50 public static final DatabaseOperation DELETE_ALL = new DeleteAllOperation();
51
52 public static final DatabaseOperation TRUNCATE_TABLE = new TruncateTableOperation();
53
54
55
56
57
58 public static final DatabaseOperation CLEAN_INSERT = new CompositeOperation(
59 DELETE_ALL, INSERT);
60
61
62 public static final DatabaseOperation TRANSACTION(DatabaseOperation operation) {
63 return new TransactionOperation(operation);
64 }
65
66
67 public static final DatabaseOperation CLOSE_CONNECTION(DatabaseOperation operation) {
68 return new CloseConnectionOperation(operation);
69 }
70
71
72
73
74
75
76
77
78 public abstract void execute(IDatabaseConnection connection,
79 IDataSet dataSet) throws DatabaseUnitException, SQLException;
80
81 private static class DummyOperation extends DatabaseOperation
82 {
83 @Override
84 public void execute(IDatabaseConnection connection, IDataSet dataSet)
85 {
86 }
87 }
88 }