@Override public Class<?> getColumnType(String field) { return schema.getColumnType(field); }
@SuppressWarnings("unchecked") @Override public Class getColumnType(String arg0) { return table.getSchema().getColumnType(arg0); }
@SuppressWarnings("unchecked") @Override public Class getColumnType(int arg0) { return table.getSchema().getColumnType(arg0); }
@SuppressWarnings("unchecked") @Override public Class getColumnType(int arg0) { return tuple.getSchema().getColumnType(arg0); }
/** * Gets the class of a column. * @param columnIndex index of the column * @return class of the column */ public Class<?> getColumnClass(int columnIndex) { return table.getSchema().getColumnType(columnIndex); }
@Override public boolean canGet(String field, Class<?> type) { if (!schema.hasColumn(field)) { return false; } return schema.getColumnType(field).equals(type); }
@SuppressWarnings("unchecked") @Override public Class getValueClass() { return table.getSchema().getColumnType(id); }
/** * Returns the most specific superclass for all the cell values in the column * This is used by the JTable to set up a default renderer * and editor for the column. * @param columnIndex the index of the column * @return the common ancestor class of the object values in the model. */ public Class<?> getColumnClass(int columnIndex) { return this.table.getSchema().getColumnType(columnIndex); }
@SuppressWarnings("unchecked") @Override public Class getColumnType(String arg0) { return tuple.getSchema().getColumnType(arg0); }
/** * Constructor. * @param inTable backing obvious table * @param colId id of the column */ public WrapToIvtkCol(obvious.data.Table inTable, int colId) { //super(null); this.table = inTable; this.id = colId; this.formatFactory = new FormatFactoryImpl(); if (id != -1) { this.format = formatFactory.getFormat( table.getSchema().getColumnType(id).getSimpleName()); } }
/** * Gets a specific value. * @param rowId row index * @param col column index * @return value for this couple */ public Object getValue(int rowId, int col) { if (isValidRow(rowId)) { TypedFormat format = formatFactory.getFormat( schema.getColumnType(col).getSimpleName()); Object value = format.parseObject((String) table.getValueAt(rowId, col), new ParsePosition(0)); return value; } else { return null; } }
@Override public double value(int attIndex) { Class<?> c = tuple.getSchema().getColumnType(attIndex); double value = -1; if (ObviousWekaUtils.isNumeric(c)) { return Double.valueOf(tuple.get(attIndex).toString()); } else if (ObviousWekaUtils.isString(c)) { return Double.valueOf(attribute(attIndex).indexOfValue( tuple.getString(attIndex))); } else if (ObviousWekaUtils.isDate(c)) { return tuple.getDate(attIndex).getTime(); } return value; }
/** * Constructor that used Obvious Schema to wrap Prefuse Tables. * @param schema original obvious schema for the table */ public PrefuseObviousTable(Schema schema) { this.table = new prefuse.data.Table(0, schema.getColumnCount()); this.listener = new ArrayList<TableListener>(); for (int i = 0; i < schema.getColumnCount(); i++) { this.table.addColumn(schema.getColumnName(i), schema.getColumnType(i), schema.getColumnDefault(i)); } }
@Override public void setValue(int attIndex, double value) { Class<?> c = tuple.getSchema().getColumnType(attIndex); if (ObviousWekaUtils.isNumeric(c)) { tuple.set(attIndex, value); } else if (ObviousWekaUtils.isString(c)) { return; } else if (ObviousWekaUtils.isDate(c)) { Date date = new Date((long) value); tuple.set(attIndex, date); } }
protected Instances createInstances() { FastVector attributes = new FastVector(); for (int i = 0; i < schema.getColumnCount(); i++) { Attribute attribute = createAttribute(schema.getColumnName(i), schema.getColumnType(i)); attributes.addElement(attribute); } return new Instances("test", attributes, 1); }
/** * Constructor for IvtkObvious table. * @param inSchema schema for the table * @param add boolean indicating if row addition is allowed * @param rem boolean indicating if row addition is allowed */ public IvtkObviousTable(Schema inSchema, Boolean add, Boolean rem) { this.schema = inSchema; this.table = new DefaultDynamicTable(); this.canAddRow = add; this.canRemoveRow = rem; BasicConfigurator.configure(); ColumnFactory factory = ColumnFactory.getInstance(); formatFactory = new FormatFactoryImpl(); for (int i = 0; i < schema.getColumnCount(); i++) { Column col = factory.create( schema.getColumnType(i).getSimpleName(), schema.getColumnName(i)); table.addColumn(col); } }
/** * Creates attributes vector from an obvious table. * @return vector from attributes */ protected FastVector createAttributes() { FastVector attributes = new FastVector(); for (int i = 0; i < table.getSchema().getColumnCount(); i++) { attributes.addElement(createAttribute(table.getSchema().getColumnName(i), table.getSchema().getColumnType(i))); } return attributes; }
@Override public Schema getSchema() { int colCount = table.getSchema().getColumnCount(); String[] names = new String[colCount]; Class<?>[] classes = new Class[colCount]; Object[] values = new Object[colCount]; for (int i = 0; i < colCount; i++) { names[i] = table.getSchema().getColumnName(i); classes[i] = table.getSchema().getColumnType(i); values[i] = table.getSchema().getColumnDefault(i); } return new Schema(names, classes, values); }
/** * Constructor. * @param inTable wrapped obvious table */ public WrapToPrefTable(Table inTable) { this.table = inTable; for (int i = 0; i < table.getSchema().getColumnCount(); i++) { addColumn(table.getSchema().getColumnName(i), table.getSchema().getColumnType(i), table.getSchema().getColumnDefault(i)); } m_rows = new WrapToPrefRowManager(this); }
@Override public void add(Instance instance) { double[] values = instance.toDoubleArray(); Object[] obvValues = new Object[table.getSchema().getColumnCount()]; for (int i = 0; i < table.getSchema().getColumnCount(); i++) { Attribute att = instance.attribute(i); Class<?> c = table.getSchema().getColumnType(i); if(att.isString() && ObviousWekaUtils.isString(c)) { obvValues[i] = instance.attribute(i).value(i); } else if (att.isNumeric() && ObviousWekaUtils.isNumeric(c)) { obvValues[i] = instance.value(att); } else if (att.isDate() && ObviousWekaUtils.isDate(c)) { obvValues[i] = new Date((long) values[i]); } else { obvValues[i] = null; } } Tuple tuple = new TupleImpl(table.getSchema(), obvValues); m_Instances.addElement(new ObviousWekaInstance(tuple, this)); table.addRow(tuple); }