Ignore:
Timestamp:
02/04/10 21:56:24 (2 years ago)
Author:
kasper
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • MetadataBeans/trunk/src/main/java/org/eobjects/metamodel/CsvDataContextStrategy.java

    r886 r887  
    2828import org.eobjects.metamodel.schema.Column; 
    2929import org.eobjects.metamodel.schema.ColumnType; 
    30 import org.eobjects.metamodel.schema.Schema; 
     30import org.eobjects.metamodel.schema.MutableColumn; 
     31import org.eobjects.metamodel.schema.MutableSchema; 
     32import org.eobjects.metamodel.schema.MutableTable; 
    3133import org.eobjects.metamodel.schema.Table; 
    3234import org.eobjects.metamodel.schema.TableType; 
     
    4648 
    4749        public CsvDataContextStrategy(File file) { 
    48                 this(file, CSVReader.DEFAULT_SEPARATOR, CSVReader.DEFAULT_QUOTE_CHARACTER); 
     50                this(file, CSVReader.DEFAULT_SEPARATOR, 
     51                                CSVReader.DEFAULT_QUOTE_CHARACTER); 
    4952        } 
    5053 
     
    6770         *            the character to use for enclosing/quoting values 
    6871         */ 
    69         public CsvDataContextStrategy(File file, char separatorChar, char quoteChar, String fileEncoding) { 
     72        public CsvDataContextStrategy(File file, char separatorChar, 
     73                        char quoteChar, String fileEncoding) { 
    7074                if (file == null) { 
    7175                        throw new IllegalArgumentException("File cannot be null"); 
     
    8488        } 
    8589 
    86         public CsvDataContextStrategy(URL url, char separatorChar, char quoteChar, String encoding) { 
     90        public CsvDataContextStrategy(URL url, char separatorChar, char quoteChar, 
     91                        String encoding) { 
    8792                _encoding = encoding; 
    8893                _separatorChar = separatorChar; 
     
    95100        } 
    96101 
    97         public CsvDataContextStrategy(InputStream inputStream, char separatorChar, char quoteChar) { 
     102        public CsvDataContextStrategy(InputStream inputStream, char separatorChar, 
     103                        char quoteChar) { 
    98104                this(inputStream, separatorChar, quoteChar, FileHelper.DEFAULT_ENCODING); 
    99105        } 
    100106 
    101         public CsvDataContextStrategy(InputStream inputStream, char separatorChar, char quoteChar, String encoding) { 
     107        public CsvDataContextStrategy(InputStream inputStream, char separatorChar, 
     108                        char quoteChar, String encoding) { 
    102109                _encoding = encoding; 
    103110                _separatorChar = separatorChar; 
     
    110117        } 
    111118 
    112         private void createFileFromInputStream(InputStream inputStream) throws IOException { 
     119        private void createFileFromInputStream(InputStream inputStream) 
     120                        throws IOException { 
    113121                File tempDir = FileHelper.getTempDir(); 
    114122                boolean usableName = false; 
     
    121129                _file.deleteOnExit(); 
    122130                BufferedWriter writer = FileHelper.getBufferedWriter(_file, _encoding); 
    123                 BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); 
    124                 for (String line = reader.readLine(); line != null; line = reader.readLine()) { 
     131                BufferedReader reader = new BufferedReader(new InputStreamReader( 
     132                                inputStream)); 
     133                for (String line = reader.readLine(); line != null; line = reader 
     134                                .readLine()) { 
    125135                        writer.write(line); 
    126136                        writer.write('\n'); 
     
    131141 
    132142        @Override 
    133         public DataSet materializeMainSchemaTable(Table table, Column[] columns, int maxRows) { 
     143        public DataSet materializeMainSchemaTable(Table table, Column[] columns, 
     144                        int maxRows) { 
    134145                if (columns == null || columns.length == 0) { 
    135146                        columns = table.getColumns(); 
    136147                } 
    137                 CSVReader reader = new CSVReader(FileHelper.getReader(_file, _encoding), _separatorChar, _quoteChar, 1); 
     148                CSVReader reader = new CSVReader( 
     149                                FileHelper.getReader(_file, _encoding), _separatorChar, 
     150                                _quoteChar, 1); 
    138151                if (maxRows < 0) { 
    139152                        return new DataSet(new CsvDataSetStrategy(reader, columns, null)); 
     
    144157 
    145158        @Override 
    146         protected Schema getMainSchema() throws MetaModelException { 
     159        protected MutableSchema getMainSchema() throws MetaModelException { 
    147160                CSVReader reader = null; 
    148161                try { 
    149162                        String schemaName = getDefaultSchemaName(); 
    150                         Schema schema = new Schema(schemaName); 
    151                         Table table = new Table(schemaName.substring(0, schemaName.length() - 4), TableType.TABLE, schema); 
     163                        MutableSchema schema = new MutableSchema(schemaName); 
     164                        MutableTable table = new MutableTable(schemaName.substring(0, 
     165                                        schemaName.length() - 4), TableType.TABLE, schema); 
    152166                        schema.addTable(table); 
    153167 
    154                         reader = new CSVReader(FileHelper.getReader(_file, _encoding), _separatorChar, _quoteChar); 
     168                        reader = new CSVReader(FileHelper.getReader(_file, _encoding), 
     169                                        _separatorChar, _quoteChar); 
    155170                        String[] columnHeaders = reader.readNext(); 
    156171                        reader.close(); 
    157172                        for (int i = 0; i < columnHeaders.length; i++) { 
    158                                 Column column = new Column(columnHeaders[i], ColumnType.VARCHAR, table, i, true); 
     173                                MutableColumn column = new MutableColumn(columnHeaders[i], 
     174                                                ColumnType.VARCHAR, table, i, true); 
    159175                                table.addColumn(column); 
    160176                        } 
     
    162178                        return schema; 
    163179                } catch (Exception e) { 
    164                         throw new IllegalStateException("Exception reading from file: " + _file, e); 
     180                        throw new IllegalStateException("Exception reading from file: " 
     181                                        + _file, e); 
    165182                } finally { 
    166183                        if (reader != null) { 
Note: See TracChangeset for help on using the changeset viewer.