[Git][java-team/maven-resolver][master] Restored the CacheUtils class to preserve the backward compatibility

Emmanuel Bourg gitlab at salsa.debian.org
Fri Jul 12 18:35:12 BST 2019



Emmanuel Bourg pushed to branch master at Debian Java Maintainers / maven-resolver


Commits:
ed527107 by Emmanuel Bourg at 2019-07-12T17:21:46Z
Restored the CacheUtils class to preserve the backward compatibility

- - - - -


3 changed files:

- debian/changelog
- + debian/patches/02-backward-compatibility.patch
- debian/patches/series


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,10 @@
+maven-resolver (1.4.0-2) unstable; urgency=medium
+
+  * Team upload.
+  * Restored the CacheUtils class to preserve the backward compatibility
+
+ -- Emmanuel Bourg <ebourg at apache.org>  Fri, 12 Jul 2019 19:21:21 +0200
+
 maven-resolver (1.4.0-1) unstable; urgency=medium
 
   * Team upload.


=====================================
debian/patches/02-backward-compatibility.patch
=====================================
@@ -0,0 +1,147 @@
+Description: Restores a class removed in 1.4.0 but still used by Maven 3.6.1 to preserve the backward compatibility
+Author: Emmanuel Bourg <ebourg at apache.org>
+Forwarded: not-needed
+--- /dev/null
++++ b/maven-resolver-impl/src/main/java/org/eclipse/aether/internal/impl/CacheUtils.java
+@@ -0,0 +1,141 @@
++package org.eclipse.aether.internal.impl;
++
++/*
++ * Licensed to the Apache Software Foundation (ASF) under one
++ * or more contributor license agreements.  See the NOTICE file
++ * distributed with this work for additional information
++ * regarding copyright ownership.  The ASF licenses this file
++ * to you under the Apache License, Version 2.0 (the
++ * "License"); you may not use this file except in compliance
++ * with the License.  You may obtain a copy of the License at
++ * 
++ *  http://www.apache.org/licenses/LICENSE-2.0
++ * 
++ * Unless required by applicable law or agreed to in writing,
++ * software distributed under the License is distributed on an
++ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
++ * KIND, either express or implied.  See the License for the
++ * specific language governing permissions and limitations
++ * under the License.
++ */
++
++import java.util.Iterator;
++import java.util.List;
++
++import org.eclipse.aether.RepositorySystemSession;
++import org.eclipse.aether.repository.ArtifactRepository;
++import org.eclipse.aether.repository.LocalRepository;
++import org.eclipse.aether.repository.RemoteRepository;
++import org.eclipse.aether.repository.RepositoryPolicy;
++import org.eclipse.aether.repository.WorkspaceReader;
++import org.eclipse.aether.repository.WorkspaceRepository;
++
++/**
++ * @deprecated To be deleted without replacement.
++ */
++ at Deprecated
++public final class CacheUtils
++{
++
++    public static <T> boolean eq( T s1, T s2 )
++    {
++        return s1 != null ? s1.equals( s2 ) : s2 == null;
++    }
++
++    public static int hash( Object obj )
++    {
++        return obj != null ? obj.hashCode() : 0;
++    }
++
++    public static int repositoriesHashCode( List<RemoteRepository> repositories )
++    {
++        int result = 17;
++        for ( RemoteRepository repository : repositories )
++        {
++            result = 31 * result + repositoryHashCode( repository );
++        }
++        return result;
++    }
++
++    private static int repositoryHashCode( RemoteRepository repository )
++    {
++        int result = 17;
++        result = 31 * result + hash( repository.getUrl() );
++        return result;
++    }
++
++    private static boolean repositoryEquals( RemoteRepository r1, RemoteRepository r2 )
++    {
++        if ( r1 == r2 )
++        {
++            return true;
++        }
++
++        return eq( r1.getId(), r2.getId() ) && eq( r1.getUrl(), r2.getUrl() )
++            && policyEquals( r1.getPolicy( false ), r2.getPolicy( false ) )
++            && policyEquals( r1.getPolicy( true ), r2.getPolicy( true ) );
++    }
++
++    private static boolean policyEquals( RepositoryPolicy p1, RepositoryPolicy p2 )
++    {
++        if ( p1 == p2 )
++        {
++            return true;
++        }
++        // update policy doesn't affect contents
++        return p1.isEnabled() == p2.isEnabled() && eq( p1.getChecksumPolicy(), p2.getChecksumPolicy() );
++    }
++
++    public static boolean repositoriesEquals( List<RemoteRepository> r1, List<RemoteRepository> r2 )
++    {
++        if ( r1.size() != r2.size() )
++        {
++            return false;
++        }
++
++        for ( Iterator<RemoteRepository> it1 = r1.iterator(), it2 = r2.iterator(); it1.hasNext(); )
++        {
++            if ( !repositoryEquals( it1.next(), it2.next() ) )
++            {
++                return false;
++            }
++        }
++
++        return true;
++    }
++
++    public static WorkspaceRepository getWorkspace( RepositorySystemSession session )
++    {
++        WorkspaceReader reader = session.getWorkspaceReader();
++        return ( reader != null ) ? reader.getRepository() : null;
++    }
++
++    public static ArtifactRepository getRepository( RepositorySystemSession session,
++                                                    List<RemoteRepository> repositories, Class<?> repoClass,
++                                                    String repoId )
++    {
++        if ( repoClass != null )
++        {
++            if ( WorkspaceRepository.class.isAssignableFrom( repoClass ) )
++            {
++                return session.getWorkspaceReader().getRepository();
++            }
++            else if ( LocalRepository.class.isAssignableFrom( repoClass ) )
++            {
++                return session.getLocalRepository();
++            }
++            else
++            {
++                for ( RemoteRepository repository : repositories )
++                {
++                    if ( repoId.equals( repository.getId() ) )
++                    {
++                        return repository;
++                    }
++                }
++            }
++        }
++        return null;
++    }
++
++}


=====================================
debian/patches/series
=====================================
@@ -1 +1,2 @@
 01-sisu-maven-plugin.patch
+02-backward-compatibility.patch



View it on GitLab: https://salsa.debian.org/java-team/maven-resolver/commit/ed527107c499d56cf486512b1380d4ffe46e9f57

-- 
View it on GitLab: https://salsa.debian.org/java-team/maven-resolver/commit/ed527107c499d56cf486512b1380d4ffe46e9f57
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-commits/attachments/20190712/948a5531/attachment.html>


More information about the pkg-java-commits mailing list