comparison src/main/java/christie/codegear/CodeGear.java @ 18:b8dc461b29f4

waitList use Queue
author Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp>
date Sun, 21 Jan 2018 23:03:36 +0900
parents 59fabebb67d8
children 7b45ccc0f70e
comparison
equal deleted inserted replaced
17:59fabebb67d8 18:b8dc461b29f4
13 /** 13 /**
14 * Created by e125769 on 12/7/17. 14 * Created by e125769 on 12/7/17.
15 * Annotationからのinputコマンドの生成、揃ったDataGearの値を返す 15 * Annotationからのinputコマンドの生成、揃ったDataGearの値を返す
16 */ 16 */
17 public abstract class CodeGear{ 17 public abstract class CodeGear{
18 public InputDataGear idg = new InputDataGear(this); 18 private InputDataGear idg = new InputDataGear(this);
19 public OutputDataGear odg = new OutputDataGear(this); 19 private OutputDataGear odg = new OutputDataGear(this);
20 public ArrayList<Command> commandList = new ArrayList<Command>(); 20 private ArrayList<Command> commandList = new ArrayList<Command>();
21 public CodeGearManager cgm; 21 private CodeGearManager cgm;
22 public DataGearManager localDGM; 22 private DataGearManager localDGM;
23 public CodeGearExecutor cge; 23 private CodeGearExecutor cge;
24 24
25 protected abstract void run(CodeGearManager cgm); 25 protected abstract void run(CodeGearManager cgm);
26 26
27 public void setup(CodeGearManager cgm){ 27 public void setup(CodeGearManager cgm){
28 this.cgm = cgm; 28 this.cgm = cgm;
41 } 41 }
42 42
43 idg.finishInput(cgm, commandList); 43 idg.finishInput(cgm, commandList);
44 } 44 }
45 45
46 public DataGearManager dgm(String dgmName) {
47 return cgm.getDGM(dgmName);
48 }
49
50 public void checkAndSetCommand(Field field, String name){ 46 public void checkAndSetCommand(Field field, String name){
51 47
52 if (!field.getName().equals(name)){ 48 if (!field.getName().equals(name)){
53 throw new IllegalArgumentException("key and DataGearName do not match"); 49 throw new IllegalArgumentException("key and DataGearName do not match");
54 } 50 }
64 throw new NullPointerException("please initialize DataGear"); 60 throw new NullPointerException("please initialize DataGear");
65 } 61 }
66 62
67 commandList.add(new Command(this, dg, cgm.cgmID,"local", name, CommandType.TAKE)); 63 commandList.add(new Command(this, dg, cgm.cgmID,"local", name, CommandType.TAKE));
68 } 64 }
65
66 public DataGearManager getLocalDGM() {
67 return localDGM;
68 }
69
70 public DataGearManager dgm(String dgmName) {
71 return cgm.getDGM(dgmName);
72 }
73
74 public InputDataGear getIdg() {
75 return idg;
76 }
77
78 public OutputDataGear getOdg() {
79 return odg;
80 }
81
82 public CodeGearExecutor getCge() {
83 return cge;
84 }
69 } 85 }