home *** CD-ROM | disk | FTP | other *** search
/ Symantec Visual Cafe for Java 2.5 / symantec-visual-cafe-2.5-database-dev-edition.iso / VCafe / prosrc.bin / DataModel.java < prev    next >
Encoding:
Java Source  |  1998-03-18  |  2.0 KB  |  91 lines

  1. /*
  2.  * @(#DataModel.java
  3.  *
  4.  * Copyright (c) 1997 Symantec Corporation. All Rights Reserved.
  5.  *
  6.  */
  7.  /**
  8.  * <P> This class encapsulates the data model of a persistent JDBC object
  9.  */
  10.  
  11. package symantec.itools.db.beans.jdbc;
  12.  
  13. import java.util.*;
  14. import symantec.itools.db.beans.binding.*;
  15.  
  16. public class DataModel implements PersistentObjectModel
  17. {
  18.     protected String m_TableName;
  19.     protected Vector m_ColumnMetaData;
  20.     protected boolean m_Unique;
  21.  
  22.     public DataModel()
  23.     {
  24.         // System.out.println("Constructing RowMetaData");
  25.     }
  26.  
  27.     // PersistentObjectModel interface methods...
  28.  
  29.     public String getModelName()
  30.     {
  31.         return getTableName();
  32.     }
  33.  
  34.     public int getMemberCount()
  35.     {
  36.         return getColumnCount();
  37.     }
  38.  
  39.     public PersistentObjectMemberModel getMemberModel(int memberIndex)
  40.     {
  41.         return getColumnMetaData(memberIndex);
  42.     }
  43.  
  44.     // End of PersistentObjectModel interface methods.
  45.  
  46.     public String getTableName()
  47.     {
  48.         return m_TableName;
  49.     }
  50.     public void setTableName(String value)
  51.     {
  52.         m_TableName = value;
  53.     }
  54.  
  55.     public int getColumnCount()
  56.     {
  57.         if (m_ColumnMetaData != null) {
  58.             return m_ColumnMetaData.size();
  59.         }
  60.         return 0;
  61.     }
  62.  
  63.     public ColumnMetaData getColumnMetaData(int column)
  64.     {
  65.         Object obj = null;
  66.         if (m_ColumnMetaData != null && m_ColumnMetaData.size() > column) {
  67.             obj = m_ColumnMetaData.elementAt(column);
  68.         }
  69.         if (obj != null && obj instanceof ColumnMetaData) {
  70.             return (ColumnMetaData)obj;
  71.         }
  72.         return null;
  73.     }
  74.  
  75.     public void addColumnMetaData(ColumnMetaData cmd)
  76.     {
  77.         if (m_ColumnMetaData == null) {
  78.             m_ColumnMetaData = new Vector();
  79.         }
  80.         m_ColumnMetaData.addElement(cmd);
  81.     }
  82.  
  83.     public void setUnique(boolean propertyValue)
  84.     {
  85.         m_Unique = propertyValue;
  86.     }
  87.     public boolean isUnique()
  88.     {
  89.         return m_Unique;
  90.     }
  91. }