EMMA Coverage Report (generated Thu Jan 20 11:39:44 EST 2011)
[all classes][com.hammurapi.store.local]

COVERAGE SUMMARY FOR SOURCE FILE [LocalTrackingLock.java]

nameclass, %method, %block, %line, %
LocalTrackingLock.java100% (2/2)100% (6/6)100% (40/40)100% (10/10)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class LocalTrackingLock100% (1/1)100% (4/4)100% (30/30)100% (8/8)
LocalTrackingLock (Lock): void 100% (1/1)100% (10/10)100% (3/3)
decCounter (): void 100% (1/1)100% (7/7)100% (2/2)
getCounter (): int 100% (1/1)100% (6/6)100% (1/1)
incCounter (): void 100% (1/1)100% (7/7)100% (2/2)
     
class LocalTrackingLock$1100% (1/1)100% (2/2)100% (10/10)100% (3/3)
LocalTrackingLock$1 (LocalTrackingLock): void 100% (1/1)100% (6/6)100% (2/2)
initialValue (): AtomicInteger 100% (1/1)100% (4/4)100% (1/1)

1package com.hammurapi.store.local;
2 
3import java.util.concurrent.atomic.AtomicInteger;
4import java.util.concurrent.locks.Lock;
5 
6import com.hammurapi.store.AbstractTrackingLock;
7 
8/**
9 * This class tracks number of locks acquired by current thread.
10 * @author Pavel Vlasov
11 *
12 */
13public class LocalTrackingLock extends AbstractTrackingLock {
14        
15        public LocalTrackingLock(Lock master) {
16                super(master);
17        }
18 
19        private ThreadLocal<AtomicInteger> counter = new ThreadLocal<AtomicInteger>() {
20                protected AtomicInteger initialValue() {
21                        return new AtomicInteger();
22                }
23        };
24 
25        @Override
26        protected void incCounter() {
27                counter.get().incrementAndGet();                
28        }
29 
30        @Override
31        protected void decCounter() {
32                counter.get().decrementAndGet();
33        }
34 
35        @Override
36        protected int getCounter() {
37                return counter.get().get();
38        }
39 
40}

[all classes][com.hammurapi.store.local]
EMMA 2.0.5312 EclEmma Fix 2 (C) Vladimir Roubtsov