code: def WriteHeader(self):
      
      # This cannot be static because we use the value of self._document_type
      # from arguments.
      mappings = {
          self._document_type: {
              'properties': {
                  'timesketch_label': {
                      'type': 'nested'
                  }
              }
          }
      }
  
      # Get Elasticsearch host and port from Timesketch configuration.
      with self._timesketch.app_context():
        self._host = current_app.config['ELASTIC_HOST']
        self._port = current_app.config['ELASTIC_PORT']
  
      self._Connect()
  
      self._CreateIndexIfNotExists(self._index_name, mappings)
  
      user = None
      if self._timeline_owner:
        user = timesketch_user.User.query.filter_by(
            username=self._timeline_owner).first()
        if not user:
          raise RuntimeError(
              'Unknown Timesketch user: {0:s}'.format(self._timeline_owner))
      else:
        logger.warning('Timeline will be visible to all Timesketch users')
  
      with self._timesketch.app_context():
        search_index = timesketch_sketch.SearchIndex.get_or_create(
            name=self._timeline_name, description=self._timeline_name, user=user,
            index_name=self._index_name)
  
        # Grant the user read permission on the mapping object and set status.
        # If user is None the timeline becomes visible to all users.
        search_index.grant_permission(user=user, permission='read')
  
        # In case we have a user grant additional permissions.
        if user:
          search_index.grant_permission(user=user, permission='write')
          search_index.grant_permission(user=user, permission='delete')
  
        # Let the Timesketch UI know that the timeline is processing.
        search_index.set_status('processing')
  
        # Save the mapping object to the Timesketch database.
        timesketch_db_session.add(search_index)
        timesketch_db_session.commit()
  
      logger.debug('Adding events to Timesketch.')
docs: Sets up the Elasticsearch index and the Timesketch database object.
  
      Creates the Elasticsearch index with Timesketch specific settings and the
      Timesketch SearchIndex database object.