private CSVProperties(DatasetDescriptor descriptor) { this.charset = coalesce( descriptor.getProperty(CHARSET_PROPERTY), descriptor.getProperty(OLD_CHARSET_PROPERTY), DEFAULT_CHARSET); this.delimiter= coalesce( descriptor.getProperty(DELIMITER_PROPERTY), descriptor.getProperty(OLD_DELIMITER_PROPERTY), DEFAULT_DELIMITER); this.quote = coalesce( descriptor.getProperty(QUOTE_CHAR_PROPERTY), descriptor.getProperty(OLD_QUOTE_CHAR_PROPERTY), DEFAULT_QUOTE); this.escape = coalesce( descriptor.getProperty(ESCAPE_CHAR_PROPERTY), descriptor.getProperty(OLD_ESCAPE_CHAR_PROPERTY), DEFAULT_ESCAPE); this.header = descriptor.getProperty(HEADER_PROPERTY); this.useHeader = Boolean.parseBoolean(coalesce( descriptor.getProperty(HAS_HEADER_PROPERTY), DEFAULT_HAS_HEADER)); final String linesToSkipString = coalesce( descriptor.getProperty(LINES_TO_SKIP_PROPERTY), descriptor.getProperty(OLD_LINES_TO_SKIP_PROPERTY));