annotate src/main/java/christie/codegear/CodeGearManager.java @ 14:f2b30b47ef67

RemotePutTest is working
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Thu, 11 Jan 2018 18:02:59 +0900
parents bcd4f2c19185
children 4e867538adb7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 package christie.codegear;
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
3 import christie.daemon.ChristieDaemon;
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
4 import christie.daemon.Config;
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
5 import christie.daemon.IncomingTcpConnection;
0
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 import christie.datagear.DataGearManager;
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
7 import christie.datagear.LocalDataGearManager;
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
8 import christie.datagear.RemoteDataGearManager;
0
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9
6
3dcfe63d6394 set type to DataGear by Annotation
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
10 import java.util.concurrent.ConcurrentHashMap;
0
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 import java.util.concurrent.ThreadPoolExecutor;
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 /**
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 * Created by e125769 on 12/7/17.
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
15 * CodeGearの実行
0
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 */
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
17 public class CodeGearManager{
6
3dcfe63d6394 set type to DataGear by Annotation
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
18 private ConcurrentHashMap<String, DataGearManager> dataGearManagers = new ConcurrentHashMap<String, DataGearManager>();
8
efaa7ad906b3 Implement Queue in DataGearManager
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
19 private ConcurrentHashMap<String, CodeGearManager> cgms;
7
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
20 private ThreadPoolExecutor threadPoolExecutor;
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
21 private LocalDataGearManager localDGM = new LocalDataGearManager();
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
22 private ConcurrentHashMap<String, IncomingTcpConnection> acceptHash = new ConcurrentHashMap<String, IncomingTcpConnection>();
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
23 public Config conf;
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
24
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
25 public CodeGearManager(ThreadPoolExecutor exe, ConcurrentHashMap<String, CodeGearManager> cgms, Config conf) {
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
26 dataGearManagers.put("local", localDGM);
8
efaa7ad906b3 Implement Queue in DataGearManager
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
27 this.cgms = cgms;
7
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
28 threadPoolExecutor = exe;
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
29 this.conf = conf;
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
30 new ChristieDaemon(conf, this).listen();//run only first time
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
31 }
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
32
14
f2b30b47ef67 RemotePutTest is working
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 13
diff changeset
33 public LocalDataGearManager getLocalDGM(){
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
34 return localDGM;
5
5be6647b87d2 StartCodeGear implements Runnable to wait InputDataGear
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
35 }
5be6647b87d2 StartCodeGear implements Runnable to wait InputDataGear
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 1
diff changeset
36
12
b49a926cbdd9 add RemotePutTest and that is working
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
37 public DataGearManager getDGM(String dsmName){
b49a926cbdd9 add RemotePutTest and that is working
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
38 return dataGearManagers.get(dsmName);
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
39 }
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
40
12
b49a926cbdd9 add RemotePutTest and that is working
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
41 public void createRemoteDGM(String dsmName, String address, int port){
b49a926cbdd9 add RemotePutTest and that is working
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 8
diff changeset
42 dataGearManagers.put(dsmName, new RemoteDataGearManager(dsmName, address, port, this));
1
3ea61d0bfc34 add dependency proccess but not work
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 0
diff changeset
43 }
6
3dcfe63d6394 set type to DataGear by Annotation
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
44
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
45 public void createRemoteDGM(String dsmName){
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
46 dataGearManagers.put(dsmName, new RemoteDataGearManager(dsmName, conf.address, conf.connectPort, this));
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
47 }
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
48
6
3dcfe63d6394 set type to DataGear by Annotation
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
49 public void submit(CodeGear cg){
7
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
50 threadPoolExecutor.execute(cg.cge);
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
51 }
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
52
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
53 public void setup(CodeGear cg){
21372a589bd3 add CodeGearExecutor
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 6
diff changeset
54 cg.setup(this);
6
3dcfe63d6394 set type to DataGear by Annotation
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
55 }
3dcfe63d6394 set type to DataGear by Annotation
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 5
diff changeset
56
8
efaa7ad906b3 Implement Queue in DataGearManager
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
57 public ConcurrentHashMap<String, CodeGearManager> getCgms() {
efaa7ad906b3 Implement Queue in DataGearManager
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
58 return cgms;
efaa7ad906b3 Implement Queue in DataGearManager
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
59 }
efaa7ad906b3 Implement Queue in DataGearManager
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 7
diff changeset
60
13
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
61 public void setAccept(String key, IncomingTcpConnection in) {
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
62 acceptHash.put(key, in);
bcd4f2c19185 don't work MessagePack unconvert for remote put
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents: 12
diff changeset
63 }
0
c082039368f5 make project
Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
parents:
diff changeset
64 }