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