com.gisgraphy.importer

## Class QuattroshapesSimpleImporter

- java.lang.Object
- - com.gisgraphy.importer.AbstractSimpleImporterProcessor
  - - com.gisgraphy.importer.QuattroshapesSimpleImporter

- All Implemented Interfaces:
    IImporterProcessor

      public class QuattroshapesSimpleImporter
      extends AbstractSimpleImporterProcessor

  Import the quattroshapes localities from an (pre-processed) Quattroshapes data file. The goal of this importer is to cross information between geonames and Quattroshapes and add shape to cities
  Author:
    David Masclet

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected IGisFeatureDao` | `gisFeatureDao`
    `protected static org.slf4j.Logger` | `logger`

    - ### Fields inherited from class com.gisgraphy.importer.AbstractSimpleImporterProcessor

      `COMMENT_START, currentFile, importerConfig, in, internationalisationService, readFileLine, status, statusMessage, totalReadLine, transactionManager, txDefinition, txStatus`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `QuattroshapesSimpleImporter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected static String` | `dumpFields(String[] fields)`
    `protected void` | `flushAndClear()` Should flush and clear all the Daos that are used by the processor.
    `protected File[]` | `getFiles()`
    `protected int` | `getNumberOfColumns()`
    `protected void` | `processData(String line)` Process a read line of the geonames file, must be implemented by the concrete class
    `List<NameValueDTO<Integer>>` | `rollback()` /!
    `protected void` | `setCommitFlushMode()` Will flush after every commit
    `void` | `setGisFeatureDao(IGisFeatureDao gisFeatureDao)`
    `boolean` | `shouldBeSkipped()`
    `protected boolean` | `shouldIgnoreComments()` Whether the filter should ignore the comments (i.e. lines starting with #)
    `protected boolean` | `shouldIgnoreFirstLine()` Template Method : Whether the processor should ignore the first line of the input
    `protected void` | `tearDown()` Template method that can be override.

    - ### Methods inherited from class com.gisgraphy.importer.AbstractSimpleImporterProcessor

      `checkNumberOfColumn, commit, countLines, decrementReadedFileLine, getCurrentFileName, getMaxInsertsBeforeFlush, getNumberOfLinesToProcess, getReadFileLine, getStatus, getStatusMessage, getTotalReadLine, incrementReadedFileLine, isEmptyField, isEndOfDocument, needCommit, onFileProcessed, process, processError, readLineAndProcessData, resetStatus, rollbackTransaction, setImporterConfig, setInternationalisationService, setTransactionManager, setup, startTransaction`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### logger

          protected static final org.slf4j.Logger logger

    - #### gisFeatureDao

          protected IGisFeatureDao gisFeatureDao

  - ### Constructor Detail

    - #### QuattroshapesSimpleImporter

          public QuattroshapesSimpleImporter()

  - ### Method Detail

    - #### flushAndClear

          protected void flushAndClear()

      Description copied from class: `AbstractSimpleImporterProcessor`
      Should flush and clear all the Daos that are used by the processor. This avoid memory leak
      Specified by:
        `flushAndClear` in class `AbstractSimpleImporterProcessor`

    - #### getFiles

          protected File[] getFiles()

      Specified by:
        `getFiles` in class `AbstractSimpleImporterProcessor`
      Returns:
        The files to be process
      See Also:
        `ImporterHelper`

    - #### getNumberOfColumns

          protected int getNumberOfColumns()

      Specified by:
        `getNumberOfColumns` in class `AbstractSimpleImporterProcessor`
      Returns:
        the number of fields the processed Geonames file should have

    - #### processData

          protected void processData(String line)
                              throws ImporterException

      Description copied from class: `AbstractSimpleImporterProcessor`
      Process a read line of the geonames file, must be implemented by the concrete class
      Specified by:
        `processData` in class `AbstractSimpleImporterProcessor`
      Parameters:
        `line` - the line to process
      Throws:
        `ImporterException`

    - #### dumpFields

          protected static String dumpFields(String[] fields)

      Parameters:
        `fields` - The array to process
      Returns:
        a string which represent a human readable string of the Array but without shape because it is useless in logs

    - #### shouldBeSkipped

          public boolean shouldBeSkipped()

      Specified by:
        `shouldBeSkipped` in interface `IImporterProcessor`
      Overrides:
        `shouldBeSkipped` in class `AbstractSimpleImporterProcessor`
      Returns:
        true if the processor should Not be executed

    - #### setCommitFlushMode

          protected void setCommitFlushMode()

      Description copied from class: `AbstractSimpleImporterProcessor`
      Will flush after every commit
      Specified by:
        `setCommitFlushMode` in class `AbstractSimpleImporterProcessor`
      See Also:
        `AbstractSimpleImporterProcessor.flushAndClear()`

    - #### shouldIgnoreComments

          protected boolean shouldIgnoreComments()

      Description copied from class: `AbstractSimpleImporterProcessor`
      Whether the filter should ignore the comments (i.e. lines starting with #)
      Specified by:
        `shouldIgnoreComments` in class `AbstractSimpleImporterProcessor`
      See Also:
        `AbstractSimpleImporterProcessor.COMMENT_START`

    - #### shouldIgnoreFirstLine

          protected boolean shouldIgnoreFirstLine()

      Description copied from class: `AbstractSimpleImporterProcessor`
      Template Method : Whether the processor should ignore the first line of the input
      Specified by:
        `shouldIgnoreFirstLine` in class `AbstractSimpleImporterProcessor`
      Returns:
        true if the processor should ignore first line

    - #### rollback

          public List<NameValueDTO<Integer>> rollback()

      Description copied from interface: `IImporterProcessor`
      /!\ USE THIS METHOD VERY CAREFULLY /!\ : If you call this function, all the imported data for the specified importer will be deleted
      Returns:
        a NameValueDTO with the name of the deleted object and the number of deleted Object. No entry will be return for Object that were 0 object will be deleted except if an error occurred during the deletion.

    - #### tearDown

          protected void tearDown()

      Description copied from class: `AbstractSimpleImporterProcessor`
      Template method that can be override. This method is called after the end of the process. it is not called for each file processed. You should always call super.tearDown() when you overide this method
      Overrides:
        `tearDown` in class `AbstractSimpleImporterProcessor`

    - #### setGisFeatureDao

          public void setGisFeatureDao(IGisFeatureDao gisFeatureDao)

Copyright © 2015. All rights reserved.