private String composeExternPackageList(String urlOrDirPath, String pkgListUrlOrDirPath) {
        urlOrDirPath = adjustEndFileSeparator(urlOrDirPath);
        pkgListUrlOrDirPath = adjustEndFileSeparator(pkgListUrlOrDirPath);
        return isUrl(pkgListUrlOrDirPath) ?
            fetchURLComposeExternPackageList(urlOrDirPath, pkgListUrlOrDirPath) :
            readFileComposeExternPackageList(urlOrDirPath, pkgListUrlOrDirPath);
    }