diff options
| author | abranson <andrew.branson@cern.ch> | 2011-08-02 22:10:28 +0200 |
|---|---|---|
| committer | abranson <andrew.branson@cern.ch> | 2011-08-02 22:10:28 +0200 |
| commit | 5664fd4644c78f4571a1a72e6b9f0511fb10720a (patch) | |
| tree | 7be1c346d1d001bf6b079089f995a60c52b955c1 /source/com/c2kernel/persistency/TransactionManager.java | |
| parent | 29bbf451a22916d39017ec1a3f53f4e0f0e65ee0 (diff) | |
Finished move to generics. Enforced 1.6 compliance for now. No errors or
warnings :)
Diffstat (limited to 'source/com/c2kernel/persistency/TransactionManager.java')
| -rw-r--r--[-rwxr-xr-x] | source/com/c2kernel/persistency/TransactionManager.java | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/source/com/c2kernel/persistency/TransactionManager.java b/source/com/c2kernel/persistency/TransactionManager.java index 252c758..0908051 100755..100644 --- a/source/com/c2kernel/persistency/TransactionManager.java +++ b/source/com/c2kernel/persistency/TransactionManager.java @@ -13,14 +13,14 @@ import com.c2kernel.utils.Logger; public class TransactionManager {
- HashMap locks;
- HashMap pendingTransactions;
+ HashMap<Integer, Object> locks;
+ HashMap<Object, ArrayList<TransactionEntry>> pendingTransactions;
ClusterStorageManager storage;
public TransactionManager() throws ClusterStorageException {
storage = new ClusterStorageManager();
- locks = new HashMap();
- pendingTransactions = new HashMap();
+ locks = new HashMap<Integer, Object>();
+ pendingTransactions = new HashMap<Object, ArrayList<TransactionEntry>>();
}
public boolean hasPendingTransactions()
@@ -92,7 +92,7 @@ public class TransactionManager { */
public void put(int sysKey, C2KLocalObject obj, Object locker) throws ClusterStorageException {
Integer sysKeyIntObj = new Integer(sysKey);
- ArrayList lockerTransaction;
+ ArrayList<TransactionEntry> lockerTransaction;
String path = ClusterStorage.getPath(obj);
synchronized(locks) {
@@ -101,7 +101,7 @@ public class TransactionManager { // if it's this locker, get the transaction list
Object thisLocker = locks.get(sysKeyIntObj);
if (thisLocker.equals(locker)) // retrieve the transaction list
- lockerTransaction = (ArrayList)pendingTransactions.get(locker);
+ lockerTransaction = pendingTransactions.get(locker);
else // locked by someone else
throw new ClusterStorageException("ClusterStorageManager.get() - Access denied: Object " + sysKeyIntObj +
" has been locked for writing by " + thisLocker);
@@ -113,7 +113,7 @@ public class TransactionManager { }
else {// initialise the transaction
locks.put(sysKeyIntObj, locker);
- lockerTransaction = new ArrayList();
+ lockerTransaction = new ArrayList<TransactionEntry>();
pendingTransactions.put(locker, lockerTransaction);
}
}
@@ -134,14 +134,14 @@ public class TransactionManager { */
public void remove(int sysKey, String path, Object locker) throws ClusterStorageException {
Integer sysKeyIntObj = new Integer(sysKey);
- ArrayList lockerTransaction;
+ ArrayList<TransactionEntry> lockerTransaction;
synchronized(locks) {
// look to see if this object is already locked
if (locks.containsKey(sysKeyIntObj)) {
// if it's this locker, get the transaction list
Object thisLocker = locks.get(sysKeyIntObj);
if (thisLocker.equals(locker)) // retrieve the transaction list
- lockerTransaction = (ArrayList)pendingTransactions.get(locker);
+ lockerTransaction = pendingTransactions.get(locker);
else // locked by someone else
throw new ClusterStorageException("ClusterStorageManager.get() - Access denied: Object " + sysKeyIntObj +
" has been locked for writing by " + thisLocker);
@@ -153,7 +153,7 @@ public class TransactionManager { }
else {// initialise the transaction
locks.put(sysKeyIntObj, locker);
- lockerTransaction = new ArrayList();
+ lockerTransaction = new ArrayList<TransactionEntry>();
pendingTransactions.put(locker, lockerTransaction);
}
}
@@ -194,7 +194,7 @@ public class TransactionManager { public void commit(Object locker) {
synchronized(locks) {
ArrayList lockerTransactions = (ArrayList)pendingTransactions.get(locker);
- HashMap exceptions = new HashMap();
+ HashMap<TransactionEntry, Exception> exceptions = new HashMap<TransactionEntry, Exception>();
// quit if no transactions are present;
if (lockerTransactions == null) return;
for (Iterator i = lockerTransactions.iterator();i.hasNext();) {
|
