All Downloads are FREE. Search and download functionalities are using the official Maven repository.

jive3.TaskFreePropertyNode Maven / Gradle / Ivy

The newest version!
package jive3;

import fr.esrf.TangoApi.Database;
import fr.esrf.Tango.DevFailed;

import javax.swing.*;

import jive.JiveUtils;

import java.io.IOException;

// ---------------------------------------------------------------

class TaskFreePropertyNode extends PropertyNode {

  private Database db;
  private String   objectName;

  TaskFreePropertyNode(TreePanel parent,Database db,String objectName) {
    this.db = db;
    this.objectName = objectName;
    this.parentPanel = parent;
  }

  void populateNode() throws DevFailed {
  }

  void execAction(int number,boolean multipleCall) {
    defaultPropertyAction(number);
  }

  ImageIcon getIcon() {
    return TangoNodeRenderer.leaficon;
  }

  public String toString() {
    return objectName;
  }

  String getTitle() {
    return "Free properties";
  }

  String getName() {
    return objectName;
  }

  public boolean isLeaf() {
    return true;
  }

  public void viewHistory() {

    parentPanel.invoker.historyDlg.viewFreePropertyHistory(objectName,"*");
    parentPanel.invoker.showHistory();

  }

  void saveProperties() {

    try {
      DbFileWriter.SaveFreeProperties(objectName);
    } catch (DevFailed e) {
      JiveUtils.showTangoError(e);
    } catch (IOException e2) {
      JiveUtils.showJiveError(e2.getMessage());
    }

  }

  String[][] getProperties() {

    String[][] ret = new String[0][0];

    try {

      String plist[] = db.get_object_property_list(objectName, "*");
      ret = new String[plist.length][2];

      for (int i = 0; i < plist.length; i++) {
        String[] res = db.get_property(objectName, plist[i]).extractStringArray();
        ret[i][0] = plist[i];
        ret[i][1] = JiveUtils.stringArrayToString(res);
      }

    } catch (DevFailed e) {
      JiveUtils.showTangoError(e);
    }

    return ret;

  }

  void setProperty(String propName, String value) {

    try {
      db.put_property(objectName, JiveUtils.makeDbDatum(propName, value));
    } catch (DevFailed e) {
      JiveUtils.showTangoError(e);
    }

  }

  void deleteProperty(String propName) {

    try {
      db.delete_property(objectName, JiveUtils.makeDbDatum(propName, ""));
    } catch (DevFailed e) {
      JiveUtils.showTangoError(e);
    }

  }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy