test_class.declarator: rule = new LocalizationRule(Locale.US)
test_class.modifier: @Rule
      public
test_class.original_string: @Rule
      public LocalizationRule rule = new LocalizationRule(Locale.US);
test_class.type: LocalizationRule
test_class.var_name: rule
test_class.file: dataprep-backend-service/src/test/java/org/talend/dataprep/schema/csv/CSVFastHeaderAndTypeAnalyzerTest.java
test_class.identifier: CSVFastHeaderAndTypeAnalyzerTest
test_case.body: @Test
      public void should_strip_quotes_in_header() {
          // given
          List<String> list = Arrays.asList("\"user_id\";\"birth\";\"country\";page_visited;first_item",
                  "4dc1548af;11/9/1970;France;6.0;22.0");
          Separator separator = new Separator(';');
          separator.incrementCount(1);
  
          // when
          CSVFastHeaderAndTypeAnalyzer analysis = new CSVFastHeaderAndTypeAnalyzer(list, separator);
  
          // then
          List<String> expectedHeaders = Arrays.asList("user_id", "birth", "country", "page_visited", "first_item");
          Assert.assertArrayEquals(expectedHeaders.toArray(),
                  analysis.getHeaders().stream().map(p -> p.getKey()).toArray());
      }
test_case.class_method_signature: CSVFastHeaderAndTypeAnalyzerTest.should_strip_quotes_in_header()
test_case.full_signature: @Test public void should_strip_quotes_in_header()
test_case.identifier: should_strip_quotes_in_header
test_case.invocations: asList incrementCount asList assertArrayEquals toArray toArray map stream getHeaders getKey
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void should_strip_quotes_in_header()
focal_class.declarator: LOGGER = LoggerFactory.getLogger(CSVFastHeaderAndTypeAnalyzer.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOGGER = LoggerFactory.getLogger(CSVFastHeaderAndTypeAnalyzer.class);
focal_class.type: Logger
focal_class.var_name: LOGGER
focal_class.declarator: ABSENT = -4
focal_class.modifier: private static final
focal_class.original_string: private static final int ABSENT = -4;
focal_class.type: int
focal_class.var_name: ABSENT
focal_class.declarator: DECIMAL = -3
focal_class.modifier: private static final
focal_class.original_string: private static final int DECIMAL = -3;
focal_class.type: int
focal_class.var_name: DECIMAL
focal_class.declarator: INTEGER = -2
focal_class.modifier: private static final
focal_class.original_string: private static final int INTEGER = -2;
focal_class.type: int
focal_class.var_name: INTEGER
focal_class.declarator: BOOLEAN = -1
focal_class.modifier: private static final
focal_class.original_string: private static final int BOOLEAN = -1;
focal_class.type: int
focal_class.var_name: BOOLEAN
focal_class.declarator: EMPTY = 0
focal_class.modifier: private static final
focal_class.original_string: private static final int EMPTY = 0;
focal_class.type: int
focal_class.var_name: EMPTY
focal_class.declarator: sampleLines
focal_class.modifier: private final
focal_class.original_string: private final List<String> sampleLines;
focal_class.type: List<String>
focal_class.var_name: sampleLines
focal_class.declarator: sampleTypes
focal_class.modifier: private final
focal_class.original_string: private final List<Integer>[] sampleTypes;
focal_class.type: List<Integer>[]
focal_class.var_name: sampleTypes
focal_class.declarator: maxFields = 0
focal_class.modifier: private
focal_class.original_string: private int maxFields = 0;
focal_class.type: int
focal_class.var_name: maxFields
focal_class.declarator: separator
focal_class.modifier: private final
focal_class.original_string: private final Separator separator;
focal_class.type: Separator
focal_class.var_name: separator
focal_class.declarator: analysisPerformed = false
focal_class.modifier: private
focal_class.original_string: private boolean analysisPerformed = false;
focal_class.type: boolean
focal_class.var_name: analysisPerformed
focal_class.declarator: firstLineAHeader = true
focal_class.modifier: private
focal_class.original_string: private boolean firstLineAHeader = true;
focal_class.type: boolean
focal_class.var_name: firstLineAHeader
focal_class.declarator: headerInfoReliable = false
focal_class.modifier: private
focal_class.original_string: private boolean headerInfoReliable = false;
focal_class.type: boolean
focal_class.var_name: headerInfoReliable
focal_class.declarator: headers = Collections.emptyList()
focal_class.modifier: private
focal_class.original_string: private List<Pair<String, Type>> headers = Collections.emptyList();
focal_class.type: List<Pair<String, Type>>
focal_class.var_name: headers
focal_class.file: dataprep-backend-service/src/main/java/org/talend/dataprep/schema/csv/CSVFastHeaderAndTypeAnalyzer.java
focal_class.identifier: CSVFastHeaderAndTypeAnalyzer
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.CSVFastHeaderAndTypeAnalyzer(List<String> sampleLines, Separator separator)
focal_class.full_signature: public  CSVFastHeaderAndTypeAnalyzer(List<String> sampleLines, Separator separator)
focal_class.identifier: CSVFastHeaderAndTypeAnalyzer
focal_class.modifiers: public
focal_class.parameters: (List<String> sampleLines, Separator separator)
focal_class.signature:  CSVFastHeaderAndTypeAnalyzer(List<String> sampleLines, Separator separator)
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.setFieldTypes()
focal_class.full_signature: private List<Integer>[] setFieldTypes()
focal_class.identifier: setFieldTypes
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: List<Integer>[]
focal_class.signature: List<Integer>[] setFieldTypes()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.setFieldType(int i)
focal_class.full_signature: private List<Integer> setFieldType(int i)
focal_class.identifier: setFieldType
focal_class.modifiers: private
focal_class.parameters: (int i)
focal_class.return: List<Integer>
focal_class.signature: List<Integer> setFieldType(int i)
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.readLine(String line)
focal_class.full_signature: private List<String> readLine(String line)
focal_class.identifier: readLine
focal_class.modifiers: private
focal_class.parameters: (String line)
focal_class.return: List<String>
focal_class.signature: List<String> readLine(String line)
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.columnTyping(int start, int end)
focal_class.full_signature: private List<Type> columnTyping(int start, int end)
focal_class.identifier: columnTyping
focal_class.modifiers: private
focal_class.parameters: (int start, int end)
focal_class.return: List<Type>
focal_class.signature: List<Type> columnTyping(int start, int end)
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.firstRecordTyping()
focal_class.full_signature: private List<Type> firstRecordTyping()
focal_class.identifier: firstRecordTyping
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: List<Type>
focal_class.signature: List<Type> firstRecordTyping()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.columnTypingWithoutFirstRecord()
focal_class.full_signature: private List<Type> columnTypingWithoutFirstRecord()
focal_class.identifier: columnTypingWithoutFirstRecord
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: List<Type>
focal_class.signature: List<Type> columnTypingWithoutFirstRecord()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.allRecordsColumnTyping()
focal_class.full_signature: private List<Type> allRecordsColumnTyping()
focal_class.identifier: allRecordsColumnTyping
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: List<Type>
focal_class.signature: List<Type> allRecordsColumnTyping()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.allStringTypes(List<Type> types)
focal_class.full_signature: private boolean allStringTypes(List<Type> types)
focal_class.identifier: allStringTypes
focal_class.modifiers: private
focal_class.parameters: (List<Type> types)
focal_class.return: boolean
focal_class.signature: boolean allStringTypes(List<Type> types)
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.analyze()
focal_class.full_signature: public void analyze()
focal_class.identifier: analyze
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void analyze()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.isFirstLineAHeader()
focal_class.full_signature: public boolean isFirstLineAHeader()
focal_class.identifier: isFirstLineAHeader
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isFirstLineAHeader()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.getHeaders()
focal_class.full_signature: public List<Pair<String, Type>> getHeaders()
focal_class.identifier: getHeaders
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: List<Pair<String, Type>>
focal_class.signature: List<Pair<String, Type>> getHeaders()
focal_class.class_method_signature: CSVFastHeaderAndTypeAnalyzer.isHeaderInfoReliable()
focal_class.full_signature: public boolean isHeaderInfoReliable()
focal_class.identifier: isHeaderInfoReliable
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isHeaderInfoReliable()
focal_method.body: public List<Pair<String, Type>> getHeaders() {
          if (!analysisPerformed) {
              analyze();
          }
          return headers;
      }
focal_method.class_method_signature: CSVFastHeaderAndTypeAnalyzer.getHeaders()
focal_method.full_signature: public List<Pair<String, Type>> getHeaders()
focal_method.identifier: getHeaders
focal_method.invocations: analyze
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: List<Pair<String, Type>>
focal_method.signature: List<Pair<String, Type>> getHeaders()