<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def rollover(self, alias, new_index=None, body=None, params=None):
 """ The rollover index API rolls an alias over to a new index when the existing index is considered to be too large or too old. The API accepts a single alias name and a list of conditions. The alias must point to a single index only. If the index satisfies the specified conditions then a new index is created and the alias is switched to point to the new alias. `<http://www.elastic.co/guide/en/elasticsearch/reference/current/indices-rollover-index.html>`_ :arg alias: The name of the alias to rollover :arg new_index: The name of the rollover index :arg body: The conditions that needs to be met for executing rollover :arg dry_run: If set to true the rollover action will only be validated but not actually performed even if a condition matches. The default is false :arg master_timeout: Specify timeout for connection to master :arg request_timeout: Explicit operation timeout :arg wait_for_active_shards: Set the number of active shards to wait for on the newly created rollover index before the operation returns. :arg include_type_name: Specify whether requests and responses should include a type name (default: depends on Elasticsearch version). """

        if alias in SKIP_IN_PATH:
            raise ValueError("Empty value passed for a required argument 'alias'.")
        return self.transport.perform_request(
            "POST", _make_path(alias, "_rollover", new_index), params=params, body=body
        )