001package jmri.jmrit.logixng.implementation; 002 003import java.io.FileNotFoundException; 004 005import javax.annotation.CheckForNull; 006import javax.annotation.Nonnull; 007 008/** 009 * The default implementation of a NamedTable 010 * 011 * @author Daniel Bergqvist 2018 012 */ 013public class DefaultInternalNamedTable extends AbstractNamedTable { 014 015 /** 016 * Create a new named table. 017 * @param sys the system name 018 * @param user the user name or null if no user name 019 * @param numRows the number or rows in the table 020 * @param numColumns the number of columns in the table 021 * @throws BadUserNameException when needed 022 * @throws BadSystemNameException when needed 023 */ 024 public DefaultInternalNamedTable( 025 @Nonnull String sys, @CheckForNull String user, 026 int numRows, int numColumns) 027 throws BadUserNameException, BadSystemNameException { 028 super(sys,user,numRows,numColumns); 029 } 030 031 /** 032 * Create a new named table with an existing array of cells. 033 * Row 0 has the column names and column 0 has the row names. 034 * @param systemName the system name 035 * @param userName the user name 036 * @param data the data in the table. Note that this data is not copied to 037 * an new array but used by the table as is. 038 * @throws BadUserNameException when needed 039 * @throws BadSystemNameException when needed 040 */ 041 public DefaultInternalNamedTable( 042 @Nonnull String systemName, @CheckForNull String userName, 043 @Nonnull Object[][] data) 044 throws BadUserNameException, BadSystemNameException { 045 super(systemName,userName,data); 046 } 047 048 @Override 049 public void storeTableAsCSV() throws FileNotFoundException { 050 throw new UnsupportedOperationException("Not supported"); 051 } 052 053}