home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / inprise / JRUNTIME.Z / DBBean.java < prev    next >
Text File  |  1998-05-08  |  4KB  |  128 lines

  1. // This snippet creates a sample database bean
  2. // which has a grid, navigator, and status bar.
  3. // Properties for userName, password, etc are surfaced.
  4. // An entirely new dataset can also be specified.
  5.  
  6. // <File=DBBean.java>
  7.  
  8. //Title:
  9. //Version:
  10. //Copyright:
  11. //Author:
  12. //Company:
  13. //Description:
  14.  
  15.  
  16. //<PACKAGE>
  17.  
  18. import java.awt.*;
  19. import java.awt.event.*;
  20. import borland.jbcl.layout.*;
  21. import borland.jbcl.control.*;
  22. import borland.jbcl.view.*;
  23. import borland.jbcl.dataset.*;
  24. import borland.jbcl.util.BlackBox;
  25. import borland.sql.dataset.*;
  26.  
  27. public class DBBean extends BeanPanel implements BlackBox {
  28.   private BorderLayout borderLayout1 = new BorderLayout();
  29.   private NavigatorControl navigatorControl1 = new NavigatorControl();
  30.   private GridControl gridControl1 = new GridControl();
  31.   private Database database1 = new Database();
  32.   private QueryDataSet queryDataSet1 = new QueryDataSet();
  33.   private StatusBar statusBar1 = new StatusBar();
  34.   private String userName = "SYSDBA";
  35.   private String password = "masterkey";
  36.   private String query = "select * from employee";
  37.   private String connectionURL = "jdbc:odbc:dataset tutorial";
  38.  
  39.   public DBBean() {
  40.     try {
  41.       jbInit();
  42.     }
  43.     catch (Exception e) {
  44.       e.printStackTrace();
  45.     }
  46.   }
  47.  
  48.   private void jbInit() throws Exception{
  49.     navigatorControl1.setDataSet(queryDataSet1);
  50.     gridControl1.setDataSet(queryDataSet1);
  51.     database1.setConnection(new borland.sql.dataset.ConnectionDescriptor(
  52.       connectionURL, userName, password, false, "sun.jdbc.odbc.JdbcOdbcDriver"));
  53.     queryDataSet1.setQuery(new borland.sql.dataset.QueryDescriptor(
  54.       database1, query, null, true, Load.ALL));
  55.     statusBar1.setDataSet(queryDataSet1);
  56.     this.setLayout(borderLayout1);
  57.     this.add(navigatorControl1, BorderLayout.NORTH);
  58.     this.add(gridControl1, BorderLayout.CENTER);
  59.     this.add(statusBar1, BorderLayout.SOUTH);
  60.   }
  61.  
  62.   // Example properties
  63.  
  64.   public void setPassword(String s){
  65.     password=s;
  66.     database1.getConnection().setPassword(s);
  67.   }
  68.  
  69.   public String getPassword(){
  70.     password=database1.getConnection().getPassword();
  71.     return password;
  72.   }
  73.  
  74.   public void setUserName(String s) {
  75.     userName=s;
  76.     database1.getConnection().setUserName(s);
  77.   }
  78.  
  79.   public String getUserName() {
  80.     userName=database1.getConnection().getUserName();
  81.     return userName;
  82.   }
  83.  
  84.   public void setQueryDataSet(QueryDataSet qds) {
  85.     navigatorControl1.setDataSet(qds);
  86.     gridControl1.setDataSet(qds);
  87.     statusBar1.setDataSet(qds);
  88.     queryDataSet1 = qds;
  89.   }
  90.  
  91.   public QueryDataSet getQueryDataSet() {
  92.     return queryDataSet1;
  93.   }
  94.  
  95.   public void setQuery(String s) {
  96.     try {
  97.       query=s;
  98.       queryDataSet1.close();
  99.       queryDataSet1.setQuery(new borland.sql.dataset.QueryDescriptor(database1, query));
  100.       queryDataSet1.open();
  101.     }
  102.     catch (Exception e) {
  103.       e.printStackTrace();
  104.     }
  105.   }
  106.  
  107.   public String getQuery() {
  108.     query=queryDataSet1.getOriginalQueryString();
  109.     return query;
  110.   }
  111.  
  112.   public void setConnectionURL(String s) {
  113.     connectionURL=s;
  114.     database1.getConnection().setConnectionURL(s);
  115.     }
  116.   public String getConnectionURL() {
  117.     connectionURL=database1.getConnection().getConnectionURL();
  118.     return connectionURL;
  119.   }
  120.  
  121.   // Example events
  122.   public static final String EXAMPLE_EVENT = "ExampleEvent";
  123.   protected void fireExampleActionEvent() {
  124.     //Args: event source,event ID, event command
  125.     processActionEvent(new ActionEvent(this,ActionEvent.ACTION_PERFORMED, EXAMPLE_EVENT));
  126.   }
  127. }
  128.