Mercurial > hg > Members > tatsuki > Alice
view src/alice/datasegment/DataSegment.java @ 56:17f88fd202ae
refactor data segment
author | kazz <kazz@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 08 Feb 2012 14:31:16 +0900 |
parents | 98ab26e09a98 |
children | 7aaadd08288c |
line wrap: on
line source
package alice.datasegment; import java.util.concurrent.ConcurrentHashMap; import alice.daemon.IncomingTcpConnection; public class DataSegment { private static DataSegment dataSegment = new DataSegment(); private ConcurrentHashMap<String, DataSegmentManager> dataSegmentManageres = new ConcurrentHashMap<String, DataSegmentManager>(); private ConcurrentHashMap<String, IncomingTcpConnection> acceptHash = new ConcurrentHashMap<String, IncomingTcpConnection>(); private DataSegment() { dataSegmentManageres.put("local", new LocalDataSegmentManager()); } public static DataSegmentManager get(String key) { return dataSegment.dataSegmentManageres.get(key); } public static void regist(String key, DataSegmentManager manager) { dataSegment.dataSegmentManageres.put(key, manager); } public static RemoteDataSegmentManager connect(String connectionKey, String reverseKey, String hostName, int port) { RemoteDataSegmentManager manager = new RemoteDataSegmentManager(connectionKey, reverseKey, hostName, port); regist(connectionKey, manager); return manager; } public static void setAccept(String key, IncomingTcpConnection incoming) { dataSegment.acceptHash.put(key, incoming); } public static IncomingTcpConnection getAccept(String key) { return dataSegment.acceptHash.get(key); } }