mirror of https://github.com/apache/archiva.git
* Expanding Proxy / Policy tests.
git-svn-id: https://svn.apache.org/repos/asf/maven/archiva/branches/archiva-jpox-database-refactor@529107 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
4e7c4eff6c
commit
46fefb7f3e
|
@ -89,29 +89,18 @@ public abstract class AbstractUpdatePolicy
|
||||||
|
|
||||||
protected abstract boolean isSnapshotPolicy();
|
protected abstract boolean isSnapshotPolicy();
|
||||||
|
|
||||||
|
protected abstract String getUpdateMode();
|
||||||
|
|
||||||
public boolean applyPolicy( String policySetting, Properties request, File localFile )
|
public boolean applyPolicy( String policySetting, Properties request, File localFile )
|
||||||
{
|
{
|
||||||
String version = request.getProperty( "version", "" );
|
String version = request.getProperty( "version", "" );
|
||||||
boolean isSnapshotVersion = false;
|
boolean isSnapshotVersion = false;
|
||||||
|
|
||||||
if( StringUtils.isNotBlank( version ) )
|
if ( StringUtils.isNotBlank( version ) )
|
||||||
{
|
{
|
||||||
isSnapshotVersion = VersionUtil.isSnapshot( version );
|
isSnapshotVersion = VersionUtil.isSnapshot( version );
|
||||||
}
|
}
|
||||||
|
|
||||||
// Test for mismatches.
|
|
||||||
if ( !isSnapshotVersion && isSnapshotPolicy() )
|
|
||||||
{
|
|
||||||
getLogger().debug( "Non-snapshot version detected in during snapshot policy. ignoring policy.");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( isSnapshotVersion && !isSnapshotPolicy() )
|
|
||||||
{
|
|
||||||
getLogger().debug( "Snapshot version detected in during release policy. ignoring policy.");
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( !validPolicyCodes.contains( policySetting ) )
|
if ( !validPolicyCodes.contains( policySetting ) )
|
||||||
{
|
{
|
||||||
// No valid code? false it is then.
|
// No valid code? false it is then.
|
||||||
|
@ -121,29 +110,42 @@ public abstract class AbstractUpdatePolicy
|
||||||
|
|
||||||
if ( IGNORED.equals( policySetting ) )
|
if ( IGNORED.equals( policySetting ) )
|
||||||
{
|
{
|
||||||
// Disabled means no.
|
// Ignored means ok to update.
|
||||||
getLogger().debug( "OK to update, policy ignored." );
|
getLogger().debug( "OK to update, " + getUpdateMode() + " policy set to IGNORED." );
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Test for mismatches.
|
||||||
|
if ( !isSnapshotVersion && isSnapshotPolicy() )
|
||||||
|
{
|
||||||
|
getLogger().debug( "OK to update, snapshot policy does not apply for non-snapshot versions." );
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( isSnapshotVersion && !isSnapshotPolicy() )
|
||||||
|
{
|
||||||
|
getLogger().debug( "OK to update, release policy does not apply for snapshot versions." );
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( DISABLED.equals( policySetting ) )
|
if ( DISABLED.equals( policySetting ) )
|
||||||
{
|
{
|
||||||
// Disabled means no.
|
// Disabled means no.
|
||||||
getLogger().debug( "NO to update, disabled." );
|
getLogger().debug( "NO to update, " + getUpdateMode() + " policy set to DISABLED." );
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !localFile.exists() )
|
if ( !localFile.exists() )
|
||||||
{
|
{
|
||||||
// No file means it's ok.
|
// No file means it's ok.
|
||||||
getLogger().debug( "OK to update, local file does not exist." );
|
getLogger().debug( "OK to update " + getUpdateMode() + ", local file does not exist." );
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ONCE.equals( policySetting ) )
|
if ( ONCE.equals( policySetting ) )
|
||||||
{
|
{
|
||||||
// File exists, but policy is once.
|
// File exists, but policy is once.
|
||||||
getLogger().debug( "NO to update, local file exist (and policy is ONCE)." );
|
getLogger().debug( "NO to update" + getUpdateMode() + ", local file exist (and policy is ONCE)." );
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -73,6 +73,7 @@ public class CachedFailuresPolicy
|
||||||
if ( IGNORED.equals( policySetting ) )
|
if ( IGNORED.equals( policySetting ) )
|
||||||
{
|
{
|
||||||
// Ignore.
|
// Ignore.
|
||||||
|
getLogger().debug( "OK to fetch, check-failures policy set to IGNORED." );
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -82,10 +83,13 @@ public class CachedFailuresPolicy
|
||||||
{
|
{
|
||||||
if ( urlFailureCache.hasFailedBefore( url ) )
|
if ( urlFailureCache.hasFailedBefore( url ) )
|
||||||
{
|
{
|
||||||
|
getLogger().debug( "NO to fetch, check-failures detected previous failure on url: " + url );
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getLogger().debug( "OK to fetch, check-failures detected no issues." );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -42,4 +42,9 @@ public class ReleasesPolicy
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected String getUpdateMode()
|
||||||
|
{
|
||||||
|
return "releases";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,4 +42,9 @@ public class SnapshotsPolicy
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected String getUpdateMode()
|
||||||
|
{
|
||||||
|
return "snapshots";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue