'Return a list of repository dependency tuples like (tool_shed, name, owner, changeset_revision, prior_installation_required) for this
repository\'s repository dependencies where prior_installation_required is True.  By definition, repository dependencies are required to
be installed in order for this repository to function correctly.  However, those repository dependencies that are defined for this
repository with prior_installation_required set to True place them in a special category in that the required repositories must be
installed before this repository is installed.  Among other things, this enables these "special" repository dependencies to include
information that enables the successful installation of this repository.  This method is not used during the initial installation of
this repository, but only after it has been installed (metadata must be set for this repository in order for this method to be useful).'

@property
def requires_prior_installation_of(self):

    required_rd_tups_that_must_be_installed = []
    if self.has_repository_dependencies:
        rd_tups = self.metadata['repository_dependencies']['repository_dependencies']
        for rd_tup in rd_tups:
            if (len(rd_tup) == 5):
                (tool_shed, name, owner, changeset_revision, prior_installation_required, only_if_compiling_contained_td) = common_util.parse_repository_dependency_tuple(rd_tup, contains_error=False)
                if asbool(prior_installation_required):
                    required_rd_tups_that_must_be_installed.append((tool_shed, name, owner, changeset_revision, 'True', 'False'))
            elif (len(rd_tup) == 6):
                (tool_shed, name, owner, changeset_revision, prior_installation_required, only_if_compiling_contained_td) = common_util.parse_repository_dependency_tuple(rd_tup, contains_error=False)
                if (not asbool(only_if_compiling_contained_td)):
                    if asbool(prior_installation_required):
                        required_rd_tups_that_must_be_installed.append((tool_shed, name, owner, changeset_revision, 'True', 'False'))
    return required_rd_tups_that_must_be_installed
