|
@@ -0,0 +1,158 @@
|
|
|
+package urgrip.installation;
|
|
|
+
|
|
|
+import com.ur.urcap.api.contribution.InstallationNodeContribution;
|
|
|
+import com.ur.urcap.api.contribution.installation.InstallationAPIProvider;
|
|
|
+import com.ur.urcap.api.domain.data.DataModel;
|
|
|
+import com.ur.urcap.api.domain.io.IO;
|
|
|
+import com.ur.urcap.api.domain.script.ScriptWriter;
|
|
|
+
|
|
|
+import java.util.Collection;
|
|
|
+
|
|
|
+public class URGripInstallationNodeContribution implements InstallationNodeContribution {
|
|
|
+
|
|
|
+ private final URGripInstallationNodeView view;
|
|
|
+ private final InstallationAPIProvider apiProvider;
|
|
|
+ public final static String KEY_GRIP_OPEN = "KEY_GRIP_OPEN";
|
|
|
+ public final static String KEY_GRIP_OPEN_DEFAULT="digital_out[0]";
|
|
|
+
|
|
|
+ public final static String KEY_GRIP_CLOSE = "KEY_GRIP_CLOSE";
|
|
|
+ public final static String KEY_GRIP_CLOSE_DEFAULT="digital_out[0]";
|
|
|
+
|
|
|
+ public final static String KEY_BLOWOUT="KEY_BLOWOUT";
|
|
|
+ public final static String KEY_BLOWOUT_DEFAULT="digital_out[1]";
|
|
|
+
|
|
|
+ public final static String KEY_COUPLE_OPEN = "KEY_COUPLE_OPEN";
|
|
|
+ public final static String KEY_COUPLE_OPEN_DEFAULT="digital_out[0]";
|
|
|
+
|
|
|
+ public final static String KEY_COUPLE_CLOSE = "KEY_COUPLE_CLOSE";
|
|
|
+ public final static String KEY_COUPLE_CLOSE_DEFAULT="digital_out[0]";
|
|
|
+
|
|
|
+
|
|
|
+ public final static String KEY_WAITFOR="KEY_WAITFOR";
|
|
|
+ public final static String KEY_WAITFOR_DEFAULT="digital_in[0]";
|
|
|
+
|
|
|
+ private DataModel model;
|
|
|
+
|
|
|
+ public URGripInstallationNodeContribution(InstallationAPIProvider apiProvider, DataModel model, URGripInstallationNodeView view) {
|
|
|
+ this.model = model;
|
|
|
+ this.view = view;
|
|
|
+ this.apiProvider=apiProvider;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void openView() {
|
|
|
+ Collection<IO> ios = apiProvider.getInstallationAPI().getIOModel().getIOs();
|
|
|
+ view.setIO(ios, model);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void closeView() {
|
|
|
+ }
|
|
|
+
|
|
|
+ public boolean isDefined() {
|
|
|
+ if(getGripOpenIO().isEmpty())
|
|
|
+ return false;
|
|
|
+ if(getGripCloseIO().isEmpty())
|
|
|
+ return false;
|
|
|
+ if(getCoupleOpenIO().isEmpty())
|
|
|
+ return false;
|
|
|
+ if(getCoupleCloseIO().isEmpty())
|
|
|
+ return false;
|
|
|
+ if(getBlowoutIO().isEmpty())
|
|
|
+ return false;
|
|
|
+ if(getWaitforIO().isEmpty())
|
|
|
+ return false;
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void generateScript(ScriptWriter writer) {
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setValue(String key, String value) {
|
|
|
+ model.set(key, value);
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getGripCloseIO() {
|
|
|
+ return model.get(KEY_GRIP_CLOSE, KEY_GRIP_CLOSE_DEFAULT);
|
|
|
+ }
|
|
|
+ public String getGripOpenIO() {
|
|
|
+ return model.get(KEY_GRIP_OPEN, KEY_GRIP_OPEN_DEFAULT);
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getCoupleCloseIO() {
|
|
|
+ return model.get(KEY_COUPLE_CLOSE, KEY_COUPLE_CLOSE_DEFAULT);
|
|
|
+ }
|
|
|
+ public String getCoupleOpenIO() {
|
|
|
+ return model.get(KEY_COUPLE_OPEN, KEY_COUPLE_OPEN_DEFAULT);
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getBlowoutIO() {
|
|
|
+ return model.get(KEY_BLOWOUT, KEY_BLOWOUT_DEFAULT);
|
|
|
+ }
|
|
|
+
|
|
|
+ public String getWaitforIO() {
|
|
|
+ return model.get(KEY_WAITFOR, KEY_WAITFOR_DEFAULT);
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setKeyGripOpenIO(String ioName) {
|
|
|
+ if ("".equals(ioName)) {
|
|
|
+ model.set(KEY_GRIP_OPEN, KEY_GRIP_OPEN_DEFAULT);
|
|
|
+ } else {
|
|
|
+ model.set(KEY_GRIP_OPEN, ioName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setKeyGripCloseIO(String ioName) {
|
|
|
+ if ("".equals(ioName)) {
|
|
|
+ model.set(KEY_GRIP_CLOSE, KEY_GRIP_CLOSE_DEFAULT);
|
|
|
+ } else {
|
|
|
+ model.set(KEY_GRIP_CLOSE, ioName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setKeyCoupleOpenIO(String ioName) {
|
|
|
+ if ("".equals(ioName)) {
|
|
|
+ model.set(KEY_COUPLE_OPEN, KEY_COUPLE_OPEN_DEFAULT);
|
|
|
+ } else {
|
|
|
+ model.set(KEY_COUPLE_OPEN, ioName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setKeyCoupleCloseIO(String ioName) {
|
|
|
+ if ("".equals(ioName)) {
|
|
|
+ model.set(KEY_COUPLE_CLOSE, KEY_COUPLE_CLOSE_DEFAULT);
|
|
|
+ } else {
|
|
|
+ model.set(KEY_COUPLE_CLOSE, ioName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setBlowoutIO(String ioName) {
|
|
|
+ if ("".equals(ioName)) {
|
|
|
+ model.set(KEY_BLOWOUT, KEY_BLOWOUT_DEFAULT);
|
|
|
+ } else {
|
|
|
+ model.set(KEY_BLOWOUT, ioName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setWaitforIO(String ioName) {
|
|
|
+ if ("".equals(ioName)) {
|
|
|
+ model.set(KEY_WAITFOR, KEY_WAITFOR_DEFAULT);
|
|
|
+ } else {
|
|
|
+ model.set(KEY_WAITFOR, ioName);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private void resetToDefaultValue() {
|
|
|
+ model.set(KEY_GRIP_CLOSE, KEY_GRIP_CLOSE_DEFAULT);
|
|
|
+ model.set(KEY_GRIP_OPEN, KEY_GRIP_OPEN_DEFAULT);
|
|
|
+
|
|
|
+ model.set(KEY_COUPLE_CLOSE, KEY_COUPLE_CLOSE_DEFAULT);
|
|
|
+ model.set(KEY_COUPLE_OPEN, KEY_COUPLE_OPEN_DEFAULT);
|
|
|
+
|
|
|
+ model.set(KEY_BLOWOUT, KEY_BLOWOUT_DEFAULT);
|
|
|
+ model.set(KEY_WAITFOR, KEY_WAITFOR_DEFAULT);
|
|
|
+ }
|
|
|
+}
|