Class HCImporter

java.lang.Object
com.day.cq.polling.importer.HCImporter
All Implemented Interfaces:
Importer

@Service(Importer.class) @Properties(@Property(name="service.description",value="Abstract HTTP based Importer")) public abstract class HCImporter extends Object implements Importer
The HCImporter is an abstract implementation of the Importer service interface supporting access to data using the HTTP protocol.

Extensions of this base class must implement the importData(String, InputStream, String, Resource) method to actually import the retrieved data.

Instances of this base class must be initialized before being used and be destroyed when not used any more. If the extension is registered as an Declarative Services Component, this initialization and destroyal is being taken care of. Otherwise, the extension class must explicitly call the init() and destroy() methods respectively.

The activate(ComponentContext) and deactivate(ComponentContext) methods may be overwritten by extension classes but the base class implementation must called in this case to ensure proper initialization and destroyal.

  • Constructor Details

    • HCImporter

      public HCImporter()
  • Method Details

    • importData

      public void importData(String scheme, String dataSource, Resource target)
      Imports data from the given source which is expected to be an HTTP URL. This method uses the Apache Http Client library to request the source with a method provided by newHttpMethod(String) the response stream is then provided to the importData(String, InputStream, String, Resource) method, which must be implemented by the extension.
      Specified by:
      importData in interface Importer
      Parameters:
      scheme - The scheme of the data source. This parameter is handed over to the importData(String, InputStream, String, Resource) method.
      dataSource - The HTTP URL to the data to be imported.
      target - The Resource into which the data is to be imported.
      Throws:
      ImportException - If an error occurs while accessing the source or if this class has not been initialized or if an error occurs while importing the actual data through importData(String, InputStream, String, Resource).
    • importData

      public void importData(String scheme, String dataSource, Resource target, String login, String password)
      Imports data from the given source which is expected to be an HTTP URL. This method uses the Apache Http Client library to request the source with a method provided by newHttpMethod(String) the response stream is then provided to the importData(String, InputStream, String, Resource) method, which must be implemented by the extension.
      Specified by:
      importData in interface Importer
      Parameters:
      scheme - The scheme of the data source. This parameter is handed over to the importData(String, InputStream, String, Resource) method.
      dataSource - The HTTP URL to the data to be imported.
      target - The Resource into which the data is to be imported.
      login - The login to authenticate the request.
      password - The password to authenticate the request.
      Throws:
      ImportException - If an error occurs while accessing the source or if this class has not been initialized or if an error occurs while importing the actual data through importData(String, InputStream, String, Resource).