Package ru.aristar.jnuget.rss

Examples of ru.aristar.jnuget.rss.PackageFeed


                int cnt = top - skip;
                if (cnt > packageSize) {
                    cnt = packageSize;
                }
                logger.trace("Запрос пакетов с {} по {}", new Object[]{skip, skip + cnt});
                PackageFeed feed = client.getPackages(null, null, cnt, null, skip);
                if (feed != null) {
                    logger.trace("Получено {} пакетов для {}-{}", new Object[]{feed.getEntries().size(), skip, skip + cnt});
                    for (PackageEntry entry : feed.getEntries()) {
                        try {
                            logger.trace("Добавление пакета {}:{}", new Object[]{entry.getTitle(), entry.getProperties().getVersion()});
                            RemoteNupkg remoteNupkg = new RemoteNupkg(entry);
                            result.add(remoteNupkg);
                        } catch (NugetFormatException e) {
                            logger.warn("Ошибка обработки пакета {} : {}  из удаленного хранилища. Причина: {}",
                                    new Object[]{entry.getTitle(), entry.getProperties().getVersion(), e.getMessage()});
                        }
                    }
                    logger.trace("Обработано {} пакетов", new Object[]{feed.getEntries().size()});
                    packageSize = feed.getEntries().size();
                } else {
                    logger.warn("Не удалось получить пакеты для {}-{} c {} попыток", new Object[]{skip, skip + cnt, NugetClient.MAX_TRY_COUNT});
                }
                skip = skip + packageSize;
            } while (skip < top && packageSize > 0);
View Full Code Here


    public void testGetLastVersionPackageWhenExistOnePackage()
            throws IOException, URISyntaxException, NugetFormatException {
        //GIVEN
        RemotePackageSource packageSource = new RemotePackageSource();
        final NugetClient nugetClient = context.mock(NugetClient.class);
        final PackageFeed packageFeed = createPackageFeed("FirstFeed", createPackageEntry("id", "1.2.3"));
        final PackageFeed emptyFeed = createPackageFeed("SecondFeed");
        Expectations expectations = new Expectations();
        expectations.atLeast(0).of(nugetClient).getUrl();
        expectations.will(returnValue(""));
        expectations.oneOf(nugetClient).getPackageCount(expectations.with(false));
        expectations.will(returnValue(1));
View Full Code Here

            IOException,
            URISyntaxException {
        //GIVEN
        RemotePackageSource packageSource = new RemotePackageSource();
        final NugetClient nugetClient = context.mock(NugetClient.class);
        final PackageFeed packageFeed = createPackageFeed("FirstFeed", createPackageEntry("id", "1.2.3"), createPackageEntry("id", "1.2.0"));
        final PackageFeed emptyFeed = createPackageFeed("SecondFeed");
        Expectations expectations = new Expectations();
        expectations.atLeast(0).of(nugetClient).getUrl();
        expectations.will(returnValue(""));
        expectations.atLeast(0).of(nugetClient).getPackageCount(expectations.with(false));
        expectations.will(returnValue(3));
View Full Code Here

     * @param name имя объекта сообщения
     * @param packageEntrys вложения
     * @return RSS сообщение
     */
    private PackageFeed createPackageFeed(String name, PackageEntry... packageEntrys) {
        final PackageFeed packageFeed = context.mock(PackageFeed.class, name);
        Expectations expectations = new Expectations();
        expectations.atLeast(0).of(packageFeed).getEntries();
        expectations.will(returnValue(new ArrayList<>(Arrays.asList(packageEntrys))));
        context.checking(expectations);
        return packageFeed;
View Full Code Here

    public void testGetAllPackages() throws Exception {
        //GIVEN
        NugetClient nugetClient = new NugetClient();
        nugetClient.setUrl(TEST_PACKAGESOURCE_URL);
        //WHEN
        PackageFeed result = nugetClient.getPackages(null, null, null, null, null);
        //THEN
        assertEquals("Количество пакетов", 1, result.getEntries().size());
        PackageEntry entry = result.getEntries().get(0);
        assertThat("Версия пакета", entry.getProperties().getVersion(), is(equalTo(Version.parse("2.5.9.10348"))));
        assertThat("HASH пакета", entry.getProperties().getPackageHash(), is(equalTo("kDPZtMu1BOZerHZvsbPnj7DfOdEyn/j4fanlv7BWuuVOZ0+VwuuxWzUnpD7jo7pkLjFOqIs41Vkk7abFZjPRJA==")));
        assertThat("Идентификатор пакета", entry.getTitle(), is(equalTo("NUnit")));
    }
View Full Code Here

     */
    @Test
    public void testCreateRemoteNupkg() throws Exception {
        //GIVEN
        try (InputStream inputStream = this.getClass().getResourceAsStream("/rss/AutoDiff.xml")) {
            PackageFeed packageFeed = PackageFeed.parse(inputStream);
            //WHEN
            RemoteNupkg remoteNupkg = new RemoteNupkg(packageFeed.getEntries().get(0));
            remoteNupkg.load();
            //THEN
            assertThat("Идентификатор пакета", remoteNupkg.getId(), is("AutoDiff"));
            assertThat("Версия пакета", remoteNupkg.getVersion(), is(Version.parse("0.5.4321.2401")));
        }
View Full Code Here

     * @param name имя объекта сообщения
     * @param packageEntrys вложения
     * @return RSS сообщение
     */
    private PackageFeed createPackageFeed(String name, PackageEntry... packageEntrys) {
        final PackageFeed packageFeed = context.mock(PackageFeed.class, name);
        Expectations expectations = new Expectations();
        expectations.atLeast(0).of(packageFeed).getEntries();
        expectations.will(returnValue(new ArrayList<>(Arrays.asList(packageEntrys))));
        context.checking(expectations);
        return packageFeed;
View Full Code Here

     * @param skip с какого идентификатора начать нумерацию пакетов
     * @return RSS сообщение
     * @throws NugetFormatException некорректная версия тестового пакета
     */
    private PackageFeed createPackageFeed(String name, int count, int skip) throws NugetFormatException {
        final PackageFeed packageFeed = context.mock(PackageFeed.class, name);
        Expectations expectations = new Expectations();
        ArrayList<PackageEntry> entrys = new ArrayList<>();
        for (int i = 0; i < count; i++) {
            entrys.add(createPackageEntry("Package-" + (skip + i), "1.2.3"));
        }
View Full Code Here

        MediaType[] accept = {MediaType.TEXT_HTML_TYPE,
            MediaType.APPLICATION_XHTML_XML_TYPE,
            MediaType.APPLICATION_XML_TYPE,
            MediaType.WILDCARD_TYPE};

        PackageFeed feed = null;
        int tryCount = 0;
        final URI storageURI = webResource.getURI();
        do {
            try {
                logger.debug("Получение пакетов из {} Top: {}, Skip: {}, попытка {}",
View Full Code Here

    public TempNupkgFile getPackage(String id, Version version) throws IOException, URISyntaxException, NugetFormatException {
        IdEqIgnoreCase eqIgnoreCase = new IdEqIgnoreCase(id);
        VersionEq versionEq = new VersionEq(version);
        AndExpression andExpression = new AndExpression(eqIgnoreCase, versionEq);
        String filter = andExpression.toString();
        PackageFeed feed = getPackages(filter, null, 100, null, 0);
        if(feed.getEntries().isEmpty()) {
            return null;
        }
        URI uri = URI.create(feed.getEntries().get(0).getContent().getSrc());

        try (InputStream inputStream = get(client, uri, "", InputStream.class)) {
            TempNupkgFile nupkgFile = new TempNupkgFile(inputStream);
            return nupkgFile;
        }
View Full Code Here

TOP

Related Classes of ru.aristar.jnuget.rss.PackageFeed

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.