Skip to content

Commit f62e28c

Browse files
New Transaction API
Introduction of a new Transaction API that is more consistent with the style of Spring's transaction managment. The existing Transaction class was renamed to TransactionLegacy. All of the non-DAO code in the management server has been updated to use the new Transaction API.
1 parent 81f1a0b commit f62e28c

File tree

232 files changed

+8415
-7792
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

232 files changed

+8415
-7792
lines changed

api/src/com/cloud/exception/ConcurrentOperationException.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,9 @@
1717
package com.cloud.exception;
1818

1919
import com.cloud.utils.SerialVersionUID;
20+
import com.cloud.utils.exception.CloudRuntimeException;
2021

21-
public class ConcurrentOperationException extends CloudException {
22+
public class ConcurrentOperationException extends CloudRuntimeException {
2223

2324
private static final long serialVersionUID = SerialVersionUID.ConcurrentOperationException;
2425

awsapi/src/com/cloud/bridge/persist/dao/BucketPolicyDaoImpl.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
import com.cloud.utils.db.GenericDaoBase;
2727
import com.cloud.utils.db.SearchBuilder;
2828
import com.cloud.utils.db.SearchCriteria;
29-
import com.cloud.utils.db.Transaction;
29+
import com.cloud.utils.db.TransactionLegacy;
3030

3131
@Component
3232
@Local(value={BucketPolicyDao.class})
@@ -42,7 +42,7 @@ public BucketPolicyDaoImpl(){ }
4242
public BucketPolicyVO getByName( String bucketName ) {
4343
SearchBuilder <BucketPolicyVO> searchByBucket = createSearchBuilder();
4444
searchByBucket.and("BucketName", searchByBucket.entity().getBucketName(), SearchCriteria.Op.EQ);
45-
Transaction txn = Transaction.open(Transaction.AWSAPI_DB);
45+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.AWSAPI_DB);
4646
try {
4747
txn.start();
4848
SearchCriteria<BucketPolicyVO> sc = searchByBucket.create();
@@ -59,7 +59,7 @@ public BucketPolicyVO getByName( String bucketName ) {
5959
public void deletePolicy( String bucketName ) {
6060
SearchBuilder <BucketPolicyVO> deleteByBucket = createSearchBuilder();
6161
deleteByBucket.and("BucketName", deleteByBucket.entity().getBucketName(), SearchCriteria.Op.EQ);
62-
Transaction txn = Transaction.open(Transaction.AWSAPI_DB);
62+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.AWSAPI_DB);
6363
try {
6464
txn.start();
6565
SearchCriteria<BucketPolicyVO> sc = deleteByBucket.create();

awsapi/src/com/cloud/bridge/persist/dao/CloudStackAccountDaoImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import com.cloud.utils.db.SearchBuilder;
2626
import com.cloud.utils.db.SearchCriteria;
2727
import com.cloud.utils.db.Transaction;
28+
import com.cloud.utils.db.TransactionLegacy;
2829

2930
@Component
3031
@Local(value={CloudStackAccountDao.class})
@@ -34,7 +35,7 @@ public class CloudStackAccountDaoImpl extends GenericDaoBase<CloudStackAccountVO
3435
public String getDefaultZoneId(String accountId) {
3536

3637
SearchBuilder<CloudStackAccountVO> SearchByUUID = createSearchBuilder();
37-
Transaction txn = Transaction.open(Transaction.CLOUD_DB);
38+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.CLOUD_DB);
3839
try {
3940
txn.start();
4041
SearchByUUID.and("uuid", SearchByUUID.entity().getUuid(),

awsapi/src/com/cloud/bridge/persist/dao/CloudStackConfigurationDaoImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import com.cloud.utils.db.SearchBuilder;
2828
import com.cloud.utils.db.SearchCriteria;
2929
import com.cloud.utils.db.Transaction;
30+
import com.cloud.utils.db.TransactionLegacy;
3031

3132
@Component
3233
@Local(value={CloudStackConfigurationDao.class})
@@ -42,7 +43,7 @@ public CloudStackConfigurationDaoImpl() { }
4243
@DB
4344
public String getConfigValue(String name) {
4445
NameSearch.and("name", NameSearch.entity().getName(), SearchCriteria.Op.EQ);
45-
Transaction txn = Transaction.open("cloud", Transaction.CLOUD_DB, true);
46+
TransactionLegacy txn = TransactionLegacy.open("cloud", TransactionLegacy.CLOUD_DB, true);
4647
try {
4748
txn.start();
4849
SearchCriteria<CloudStackConfigurationVO> sc = NameSearch.create();

awsapi/src/com/cloud/bridge/persist/dao/CloudStackSvcOfferingDaoImpl.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
import com.cloud.utils.db.SearchBuilder;
3030
import com.cloud.utils.db.SearchCriteria;
3131
import com.cloud.utils.db.Transaction;
32+
import com.cloud.utils.db.TransactionLegacy;
3233

3334
@Component
3435
@Local(value={CloudStackSvcOfferingDao.class})
@@ -42,7 +43,7 @@ public CloudStackServiceOfferingVO getSvcOfferingByName( String name ){
4243
SearchBuilder <CloudStackServiceOfferingVO> searchByName = createSearchBuilder();
4344
searchByName.and("name", searchByName.entity().getName(), SearchCriteria.Op.EQ);
4445
searchByName.done();
45-
Transaction txn = Transaction.open(Transaction.CLOUD_DB);
46+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.CLOUD_DB);
4647
try {
4748
txn.start();
4849
SearchCriteria<CloudStackServiceOfferingVO> sc = searchByName.create();
@@ -61,7 +62,7 @@ public CloudStackServiceOfferingVO getSvcOfferingById( String id ){
6162
SearchBuilder <CloudStackServiceOfferingVO> searchByID = createSearchBuilder();
6263
searchByID.and("uuid", searchByID.entity().getUuid(), SearchCriteria.Op.EQ);
6364
searchByID.done();
64-
Transaction txn = Transaction.open(Transaction.CLOUD_DB);
65+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.CLOUD_DB);
6566
try {
6667
txn.start();
6768
SearchCriteria<CloudStackServiceOfferingVO> sc = searchByID.create();

awsapi/src/com/cloud/bridge/persist/dao/CloudStackUserDaoImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import com.cloud.utils.db.SearchBuilder;
2727
import com.cloud.utils.db.SearchCriteria;
2828
import com.cloud.utils.db.Transaction;
29+
import com.cloud.utils.db.TransactionLegacy;
2930
import com.cloud.utils.crypt.DBEncryptionUtil;
3031

3132
@Component
@@ -43,7 +44,7 @@ public String getSecretKeyByAccessKey( String accessKey ) {
4344
SearchBuilder <CloudStackUserVO> searchByAccessKey = createSearchBuilder();
4445
searchByAccessKey.and("apiKey", searchByAccessKey.entity().getApiKey(), SearchCriteria.Op.EQ);
4546
searchByAccessKey.done();
46-
Transaction txn = Transaction.open(Transaction.CLOUD_DB);
47+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.CLOUD_DB);
4748
try {
4849
txn.start();
4950
SearchCriteria<CloudStackUserVO> sc = searchByAccessKey.create();

awsapi/src/com/cloud/bridge/persist/dao/MHostDaoImpl.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import com.cloud.utils.db.SearchBuilder;
2626
import com.cloud.utils.db.SearchCriteria;
2727
import com.cloud.utils.db.Transaction;
28+
import com.cloud.utils.db.TransactionLegacy;
2829

2930
@Component
3031
@Local(value={MHostDao.class})
@@ -38,7 +39,7 @@ public MHostDaoImpl() {
3839
@Override
3940
public MHostVO getByHostKey(String hostKey) {
4041
NameSearch.and("MHostKey", NameSearch.entity().getHostKey(), SearchCriteria.Op.EQ);
41-
Transaction txn = Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
42+
TransactionLegacy txn = TransactionLegacy.open("cloudbridge", TransactionLegacy.AWSAPI_DB, true);
4243
try {
4344
txn.start();
4445
SearchCriteria<MHostVO> sc = NameSearch.create();
@@ -52,7 +53,7 @@ public MHostVO getByHostKey(String hostKey) {
5253

5354
@Override
5455
public void updateHeartBeat(MHostVO mhost) {
55-
Transaction txn = Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
56+
TransactionLegacy txn = TransactionLegacy.open("cloudbridge", TransactionLegacy.AWSAPI_DB, true);
5657
try {
5758
txn.start();
5859
update(mhost.getId(), mhost);

awsapi/src/com/cloud/bridge/persist/dao/MHostMountDaoImpl.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import com.cloud.utils.db.SearchBuilder;
2626
import com.cloud.utils.db.SearchCriteria;
2727
import com.cloud.utils.db.Transaction;
28+
import com.cloud.utils.db.TransactionLegacy;
2829

2930
@Component
3031
@Local(value={MHostMountDao.class})
@@ -37,7 +38,7 @@ public MHostMountDaoImpl() {
3738
public MHostMountVO getHostMount(long mHostId, long sHostId) {
3839
SearchByMHostID.and("MHostID", SearchByMHostID.entity().getmHostID(), SearchCriteria.Op.EQ);
3940
SearchByMHostID.and("SHostID", SearchByMHostID.entity().getsHostID(), SearchCriteria.Op.EQ);
40-
Transaction txn = Transaction.open(Transaction.AWSAPI_DB);
41+
TransactionLegacy txn = TransactionLegacy.open(TransactionLegacy.AWSAPI_DB);
4142
try {
4243
txn.start();
4344
SearchCriteria<MHostMountVO> sc = SearchByMHostID.create();

awsapi/src/com/cloud/bridge/persist/dao/MultiPartPartsDaoImpl.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import com.cloud.utils.db.SearchBuilder;
2929
import com.cloud.utils.db.SearchCriteria;
3030
import com.cloud.utils.db.Transaction;
31+
import com.cloud.utils.db.TransactionLegacy;
3132

3233
@Component
3334
@Local(value={MultiPartPartsDao.class})
@@ -42,7 +43,7 @@ public List<MultiPartPartsVO> getParts(int uploadId, int maxParts, int startAt
4243
ByUploadID.and("partNumber", ByUploadID.entity().getPartNumber(), SearchCriteria.Op.LT);
4344
Filter filter = new Filter(MultiPartPartsVO.class, "partNumber", Boolean.TRUE, null, null);
4445

45-
Transaction txn = Transaction.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
46+
TransactionLegacy txn = TransactionLegacy.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
4647
try {
4748
txn.start();
4849
SearchCriteria<MultiPartPartsVO> sc = ByUploadID.create();
@@ -61,7 +62,7 @@ public int getnumParts( int uploadId, int endMarker ) {
6162
SearchBuilder<MultiPartPartsVO> byUploadID = createSearchBuilder();
6263
byUploadID.and("UploadID", byUploadID.entity().getUploadid(), SearchCriteria.Op.EQ);
6364
byUploadID.and("partNumber", byUploadID.entity().getPartNumber(), SearchCriteria.Op.GT);
64-
Transaction txn = Transaction.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
65+
TransactionLegacy txn = TransactionLegacy.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
6566
try {
6667
txn.start();
6768
SearchCriteria<MultiPartPartsVO> sc = byUploadID.create();
@@ -82,7 +83,7 @@ public MultiPartPartsVO findByUploadID(int uploadId, int partNumber) {
8283
SearchBuilder<MultiPartPartsVO> byUploadID = createSearchBuilder();
8384
byUploadID.and("UploadID", byUploadID.entity().getUploadid(), SearchCriteria.Op.EQ);
8485
byUploadID.and("partNumber", byUploadID.entity().getPartNumber(), SearchCriteria.Op.EQ);
85-
Transaction txn = Transaction.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
86+
TransactionLegacy txn = TransactionLegacy.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
8687
try {
8788
txn.start();
8889
SearchCriteria<MultiPartPartsVO> sc = byUploadID.create();
@@ -102,7 +103,7 @@ public void updateParts(MultiPartPartsVO partVO, int uploadId, int partNumber) {
102103
SearchBuilder<MultiPartPartsVO> byUploadID = createSearchBuilder();
103104
byUploadID.and("UploadID", byUploadID.entity().getUploadid(), SearchCriteria.Op.EQ);
104105
byUploadID.and("partNumber", byUploadID.entity().getPartNumber(), SearchCriteria.Op.EQ);
105-
Transaction txn = Transaction.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
106+
TransactionLegacy txn = TransactionLegacy.currentTxn(); // Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
106107
try {
107108
txn.start();
108109
SearchCriteria<MultiPartPartsVO> sc = byUploadID.create();

awsapi/src/com/cloud/bridge/persist/dao/MultiPartUploadsDaoImpl.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import com.cloud.utils.db.SearchBuilder;
3434
import com.cloud.utils.db.SearchCriteria;
3535
import com.cloud.utils.db.Transaction;
36+
import com.cloud.utils.db.TransactionLegacy;
3637

3738
@Component
3839
@Local(value={MultiPartUploadsDao.class})
@@ -42,9 +43,9 @@ public class MultiPartUploadsDaoImpl extends GenericDaoBase<MultiPartUploadsVO,
4243
public OrderedPair<String,String> multipartExits( int uploadId ) {
4344
MultiPartUploadsVO uploadvo = null;
4445

45-
Transaction txn = null;
46+
TransactionLegacy txn = null;
4647
try {
47-
txn = Transaction.open(Transaction.AWSAPI_DB);
48+
txn = TransactionLegacy.open(TransactionLegacy.AWSAPI_DB);
4849
uploadvo = findById(new Long(uploadId));
4950
if (null != uploadvo)
5051
return new OrderedPair<String,String>(uploadvo.getAccessKey(), uploadvo.getNameKey());
@@ -58,9 +59,9 @@ public OrderedPair<String,String> multipartExits( int uploadId ) {
5859
@Override
5960
public void deleteUpload(int uploadId) {
6061

61-
Transaction txn = null;
62+
TransactionLegacy txn = null;
6263
try {
63-
txn = Transaction.open(Transaction.AWSAPI_DB);
64+
txn = TransactionLegacy.open(TransactionLegacy.AWSAPI_DB);
6465
remove(new Long(uploadId));
6566
txn.commit();
6667
}finally {
@@ -70,10 +71,10 @@ public void deleteUpload(int uploadId) {
7071

7172
@Override
7273
public String getAtrributeValue(String attribute, int uploadid) {
73-
Transaction txn = null;
74+
TransactionLegacy txn = null;
7475
MultiPartUploadsVO uploadvo = null;
7576
try {
76-
txn = Transaction.open(Transaction.AWSAPI_DB);
77+
txn = TransactionLegacy.open(TransactionLegacy.AWSAPI_DB);
7778
uploadvo = findById(new Long(uploadid));
7879
if (null != uploadvo) {
7980
if ( attribute.equalsIgnoreCase("AccessKey") )
@@ -105,7 +106,7 @@ public List<MultiPartUploadsVO> getInitiatedUploads(String bucketName, int maxPa
105106
Filter filter = new Filter(MultiPartUploadsVO.class, "nameKey", Boolean.TRUE, null, null);
106107
filter.addOrderBy(MultiPartUploadsVO.class, "createTime", Boolean.TRUE);
107108

108-
Transaction txn = Transaction.open("cloudbridge", Transaction.AWSAPI_DB, true);
109+
TransactionLegacy txn = TransactionLegacy.open("cloudbridge", TransactionLegacy.AWSAPI_DB, true);
109110
try {
110111
txn.start();
111112
SearchCriteria<MultiPartUploadsVO> sc = byBucket.create();

0 commit comments

Comments
 (0)