@lru_cache(maxsize=None)<EOL><INDENT>def get_repository(self, path):<DEDENT>
<EOL>parts = path.split('<STR_LIT:@>', <NUM_LIT:1>)<EOL>if len(parts) == <NUM_LIT:1>:<EOL><INDENT>parts = ("<STR_LIT>", parts[<NUM_LIT:0>])<EOL><DEDENT>repo_type, location = parts<EOL>if repo_type == "<STR_LIT>":<EOL><INDENT>location = os.path.abspath(location)<EOL><DEDENT>normalised_path = "<STR_LIT>" % (repo_type, location)<EOL>return self._get_repository(normalised_path)<EOL>
Get a package repository.

        Args:
            path (str): Entry from the 'packages_path' config setting. This may
                simply be a path (which is managed by the 'filesystem' package
                repository plugin), or a string in the form "type@location",
                where 'type' identifies the repository plugin type to use.

        Returns:
            `PackageRepository` instance.