comparison src/alice/codesegment/InputDataSegment.java @ 3:91057e15065f

add DataSegment API and CodeSegment
author one
date Wed, 11 Jan 2012 00:17:27 +0900
parents
children 80375ae09a1f
comparison
equal deleted inserted replaced
2:f71eabb1df2a 3:91057e15065f
1 package alice.codesegment;
2
3 import java.util.concurrent.ConcurrentHashMap;
4 import java.util.concurrent.atomic.AtomicInteger;
5
6 import alice.datasegment.DataSegment;
7 import alice.datasegment.DataSegmentManager;
8 import alice.datasegment.DataSegmentValue;
9
10 public class InputDataSegment {
11
12 private ConcurrentHashMap<String, DataSegmentValue> inputDataSegments = new ConcurrentHashMap<String, DataSegmentValue>();
13 private CodeSegment cs;
14 private AtomicInteger count = new AtomicInteger();
15
16 public InputDataSegment(CodeSegment cs) {
17 this.cs = cs;
18 }
19
20 public void peek(String managerKey, String key) {
21 peek(managerKey, key, 0);
22 }
23
24 public void peek(String managerKey, String key, int index) {
25 DataSegment.get(managerKey).peek(key, index, cs);
26 count.getAndIncrement();
27 }
28
29 public void take(String managerKey, String key) {
30 take(managerKey, key, 0);
31 }
32
33 public void take(String managerKey, String key, int index) {
34 DataSegment.get(managerKey).take(key, index, cs);
35 count.getAndIncrement();
36 }
37
38 }