<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def enable_hdfs_ha(self, active_name, active_shared_path, standby_name, standby_shared_path, nameservice, start_dependent_services=True, deploy_client_configs=True, enable_quorum_storage=False):
 """ Enable high availability for an HDFS NameNode. This command is no longer supported with API v6 onwards. Use enable_nn_ha instead. @param active_name: name of active NameNode. @param active_shared_path: shared edits path for active NameNode. Ignored if Quorum-based Storage is being enabled. @param standby_name: name of stand-by NameNode. @param standby_shared_path: shared edits path for stand-by NameNode. Ignored if Quourm Journal is being enabled. @param nameservice: nameservice for the HA pair. @param start_dependent_services: whether to re-start dependent services. @param deploy_client_configs: whether to re-deploy client configurations. @param enable_quorum_storage: whether to enable Quorum-based Storage. Available since API v2. Quorum-based Storage will be enabled for all nameservices except those configured with NFS High Availability. @return: Reference to the submitted command. """

    version = self._get_resource_root().version

    args = dict(
      activeName = active_name,
      standByName = standby_name,
      nameservice = nameservice,
      startDependentServices = start_dependent_services,
      deployClientConfigs = deploy_client_configs,
    )

    if enable_quorum_storage:
      if version < 2:
        raise AttributeError("Quorum-based Storage is not supported prior to Cloudera Manager 4.1.")
      else:
        args['enableQuorumStorage'] = enable_quorum_storage
    else:
      if active_shared_path is None or standby_shared_path is None:
        raise AttributeError("Active and standby shared paths must be specified if not enabling Quorum-based Storage")
      args['activeSharedEditsPath'] = active_shared_path
      args['standBySharedEditsPath'] = standby_shared_path

    return self._cmd('hdfsEnableHa', data=args)