ilog.ds
Interface IlTableDataSourceEditor

All Superinterfaces:
IlDataSourceEditor
All Known Implementing Classes:
IlsTableDataSource

public interface IlTableDataSourceEditor
extends IlDataSourceEditor

Interface to be implemented by all editable table data sources All updates are carried out by the back-end. This may be done asynchronously, so the user should not expect the local model to be updated immediately after calling any of the methods of this interface. When the back-end has confirmed the requested change, the data source should trigger an update through the listeners registered with it. If the update is rejected by the back-end, the local model will not be updated.

See Also:
IlTableDataSource, TableDSListener, TableModelEvent, RowEvent

Method Summary
abstract  Object dsAddRow(Map properties, IlTableCellInfo[] values)
          Requests the back-end to add a row to the table.
abstract  void dsRemoveRow(Object row)
          Requests the back-end to remove a row from the table.
abstract  void dsUpdateCell(Object row, int colNumber, Object v)
          Requests the back-end to update the value of a cell in the table.
abstract  void dsUpdateCellProperty(Object row, int colNumber, String propertyName, Object value)
          Requests the back-end to update a property for a cell in the table.
abstract  void dsUpdateColumnProperty(int colNumber, String propertyName, Object value)
          Requests the back-end to update a property for a column in the table.
abstract  void dsUpdateRow(Object row, IlTableCellInfo[] newValues)
          Updates a row.
abstract  void dsUpdateRowProperty(Object row, String propertyName, Object value)
          Requests the back-end to update a property for a row in the table.
abstract  boolean isCellEditable(Object row, int column)
           
abstract  boolean isColumnEditable(int column)
           
abstract  boolean isRowEditable(Object row)
           
 
Methods inherited from interface ilog.ds.IlDataSourceEditor
dsEndBatch, dsStartBatch, dsUpdateProperty, getDSBatchLevel, isEditable
 

Method Detail

dsUpdateColumnProperty

public void dsUpdateColumnProperty(int colNumber,
                                   String propertyName,
                                   Object value)
Requests the back-end to update a property for a column in the table. The data source should trigger a notification when the update is confirmed by the back-end.
Parameters:
colNumber - The property column number (0 based)
propertyName - The name of the property to update.
value - The new value of the property

dsUpdateRowProperty

public void dsUpdateRowProperty(Object row,
                                String propertyName,
                                Object value)
Requests the back-end to update a property for a row in the table. The data source should trigger a notification when the update is confirmed by the back-end.
Parameters:
row - A key representing a row
propertyName - The name of the property to update.
value - The new value of the property

dsUpdateCellProperty

public void dsUpdateCellProperty(Object row,
                                 int colNumber,
                                 String propertyName,
                                 Object value)
Requests the back-end to update a property for a cell in the table. The data source should trigger a notification when the update is confirmed by the back-end.
Parameters:
row - A key representing a row.
colNumber - The property column number (0 based).
propertyName - The name of the property to update.
value - The new value of the property

dsAddRow

public Object dsAddRow(Map properties,
                       IlTableCellInfo[] values)
Requests the back-end to add a row to the table. The method will return a newly created row if possible. However, if the rows are created asynchronously, the return value may be null. In any case, the data source should trigger notification when the row creation is confirmed by the back-end.
Parameters:
values -  
Returns:
the newly created row. May be null if row is created asynchronously.

dsRemoveRow

public void dsRemoveRow(Object row)
Requests the back-end to remove a row from the table. The data source should trigger notification when the row deletion is confirmed by the back-end.
Parameters:
row -  

dsUpdateRow

public void dsUpdateRow(Object row,
                        IlTableCellInfo[] newValues)
Updates a row.
Parameters:
row - The row to update.
newValues - A set of ilog.ds.TableCellInfo representing the data contained in the row.

dsUpdateCell

public void dsUpdateCell(Object row,
                         int colNumber,
                         Object v)
Requests the back-end to update the value of a cell in the table. The data source should trigger notification when the update is confirmed by the back-end.
Parameters:
row -  
colNumber -  
v -  

isColumnEditable

public boolean isColumnEditable(int column)

isRowEditable

public boolean isRowEditable(Object row)

isCellEditable

public boolean isCellEditable(Object row,
                              int column)