001package gu.sql2java; 002 003import static com.google.common.base.Preconditions.*; 004 005public class UnnameRow extends BaseRow { 006 007 private final Object[] values; 008 public static final ThreadLocal<RowMetaData> METADATA = new ThreadLocal<>(); 009 public UnnameRow(RowMetaData metaData) { 010 super(metaData); 011 this.values = new Object[metaData.defaultColumnIdList.length]; 012 } 013 public UnnameRow(){ 014 this(checkNotNull(METADATA.get(),"tls variable METADATA is null")); 015 } 016 @Override 017 public boolean isNew() { 018 return false; 019 } 020 021 @Override 022 public void setNew(boolean isNew) { 023 024 } 025 026 @Override 027 public void resetIsModified() { 028 } 029 030 @Override 031 public void resetPrimaryKeysModified() { 032 033 } 034 035 @Override 036 public boolean isModified() { 037 return false; 038 } 039 040 @Override 041 public final boolean isInitialized(int columnID) { 042 return columnID>=0 && columnID < metaData.columnCount; 043 } 044 045 @Override 046 public final boolean isModified(int columnID) { 047 return false; 048 } 049 050 @Override 051 public boolean isModified(String column) { 052 return false; 053 } 054 055 @SuppressWarnings("unchecked") 056 @Override 057 public final <T> T getValue(int columnID) { 058 try{ 059 return (T) values[columnID]; 060 } catch (IndexOutOfBoundsException e) { 061 return null; 062 } 063 } 064 065 @Override 066 public final <T> void setValue(int columnID, T value) { 067 try{ 068 values[columnID] = value; 069 } catch (IndexOutOfBoundsException e) { 070 } 071 } 072 073 @Override 074 public Object[] asValueArray(int...columnIds){ 075 if(null == columnIds || columnIds.length == 0){ 076 return values; 077 } 078 return super.asValueArray(columnIds); 079 } 080 081 @Override 082 public UnnameRow clone(){ 083 return (UnnameRow) super.clone(); 084 } 085}