Pārlūkot izejas kodu

refactor the model for cache setup to have something reusable for url cache failure

git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1425372 13f79535-47bb-0310-9956-ffa450edef68
tags/archiva-1.4-M4
Olivier Lamy pirms 11 gadiem
vecāks
revīzija
292087cbea

+ 28
- 11
archiva-modules/archiva-base/archiva-configuration/src/main/mdo/configuration.mdo Parādīt failu

@@ -1494,18 +1494,12 @@
<defaultValue>true</defaultValue>
</field>
<field>
<name>usersCacheTimeToIdleSeconds</name>
<description>TimeToIdleSeconds for users cache</description>
<name>usersCacheConfiguration</name>
<description>the users cache configuration</description>
<version>1.4.0+</version>
<type>int</type>
<defaultValue>14400</defaultValue>
</field>
<field>
<name>usersCacheTimeToLiveSeconds</name>
<description>TimeToLiveSeconds for users cache</description>
<version>1.4.0+</version>
<type>int</type>
<defaultValue>14400</defaultValue>
<association>
<type>CacheConfiguration</type>
</association>
</field>
</fields>
</class>
@@ -1584,6 +1578,29 @@
</fields>
</class>


<class>
<name>CacheConfiguration</name>
<version>1.4.0+</version>
<description>Cache configuration.</description>
<fields>
<field>
<name>timeToIdleSeconds</name>
<description>TimeToIdleSeconds</description>
<version>1.4.0+</version>
<type>int</type>
<defaultValue>-1</defaultValue>
</field>
<field>
<name>timeToLiveSeconds</name>
<description>TimeToLiveSeconds</description>
<version>1.4.0+</version>
<type>int</type>
<defaultValue>-1</defaultValue>
</field>
</fields>
</class>

</classes>
</model>


+ 6
- 25
archiva-modules/archiva-base/archiva-repository-admin/archiva-repository-admin-api/src/main/java/org/apache/archiva/admin/model/beans/RedbackRuntimeConfiguration.java Parādīt failu

@@ -59,15 +59,7 @@ public class RedbackRuntimeConfiguration
*/
private boolean useUsersCache = false;

/**
* TimeToIdleSeconds for users cache.
*/
private int usersCacheTimeToIdleSeconds = 14400;

/**
* TimeToLiveSeconds for users cache.
*/
private int usersCacheTimeToLiveSeconds = 14400;
private CacheConfiguration usersCacheConfiguration;

public RedbackRuntimeConfiguration()
{
@@ -151,24 +143,14 @@ public class RedbackRuntimeConfiguration
this.useUsersCache = useUsersCache;
}

public int getUsersCacheTimeToIdleSeconds()
{
return usersCacheTimeToIdleSeconds;
}

public void setUsersCacheTimeToIdleSeconds( int usersCacheTimeToIdleSeconds )
{
this.usersCacheTimeToIdleSeconds = usersCacheTimeToIdleSeconds;
}

public int getUsersCacheTimeToLiveSeconds()
public CacheConfiguration getUsersCacheConfiguration()
{
return usersCacheTimeToLiveSeconds;
return usersCacheConfiguration;
}

public void setUsersCacheTimeToLiveSeconds( int usersCacheTimeToLiveSeconds )
public void setUsersCacheConfiguration( CacheConfiguration usersCacheConfiguration )
{
this.usersCacheTimeToLiveSeconds = usersCacheTimeToLiveSeconds;
this.usersCacheConfiguration = usersCacheConfiguration;
}

@Override
@@ -182,8 +164,7 @@ public class RedbackRuntimeConfiguration
sb.append( ", configurationProperties=" ).append( configurationProperties );
sb.append( ", configurationPropertiesEntries=" ).append( configurationPropertiesEntries );
sb.append( ", useUsersCache=" ).append( useUsersCache );
sb.append( ", usersCacheTimeToIdleSeconds=" ).append( usersCacheTimeToIdleSeconds );
sb.append( ", usersCacheTimeToLiveSeconds=" ).append( usersCacheTimeToLiveSeconds );
sb.append( ", usersCacheConfiguration=" ).append( usersCacheConfiguration );
sb.append( '}' );
return sb.toString();
}

+ 33
- 7
archiva-modules/archiva-web/archiva-rest/archiva-rest-services/src/main/java/org/apache/archiva/rest/services/DefaultRedbackRuntimeConfigurationService.java Parādīt failu

@@ -19,6 +19,7 @@ package org.apache.archiva.rest.services;
*/

import org.apache.archiva.admin.model.RepositoryAdminException;
import org.apache.archiva.admin.model.beans.CacheConfiguration;
import org.apache.archiva.admin.model.beans.RedbackRuntimeConfiguration;
import org.apache.archiva.admin.model.beans.LdapConfiguration;
import org.apache.archiva.admin.model.runtime.RedbackRuntimeConfigurationAdmin;
@@ -54,7 +55,7 @@ import java.util.Properties;
* @author Olivier Lamy
* @since 1.4-M4
*/
@Service("archivaRuntimeConfigurationService#rest")
@Service( "archivaRuntimeConfigurationService#rest" )
public class DefaultRedbackRuntimeConfigurationService
extends AbstractRestService
implements RedbackRuntimeConfigurationService
@@ -63,14 +64,14 @@ public class DefaultRedbackRuntimeConfigurationService
private RedbackRuntimeConfigurationAdmin redbackRuntimeConfigurationAdmin;

@Inject
@Named(value = "userManager#configurable")
@Named( value = "userManager#configurable" )
private UserManager userManager;

@Inject
private ApplicationContext applicationContext;

@Inject
@Named(value = "ldapConnectionFactory#configurable")
@Named( value = "ldapConnectionFactory#configurable" )
private LdapConnectionFactory ldapConnectionFactory;

@Inject
@@ -83,8 +84,31 @@ public class DefaultRedbackRuntimeConfigurationService
{
RedbackRuntimeConfiguration redbackRuntimeConfiguration =
redbackRuntimeConfigurationAdmin.getRedbackRuntimeConfiguration();
usersCache.setTimeToIdleSeconds( redbackRuntimeConfiguration.getUsersCacheTimeToIdleSeconds() );
usersCache.setTimeToLiveSeconds( redbackRuntimeConfiguration.getUsersCacheTimeToLiveSeconds() );

// NPE free
if ( redbackRuntimeConfiguration.getUsersCacheConfiguration() == null )
{
redbackRuntimeConfiguration.setUsersCacheConfiguration( new CacheConfiguration() );
}
// if -1 it means non initialized to take values from the spring bean
if ( redbackRuntimeConfiguration.getUsersCacheConfiguration().getTimeToIdleSeconds() < 0 )
{
redbackRuntimeConfiguration.getUsersCacheConfiguration().setTimeToIdleSeconds(
usersCache.getTimeToIdleSeconds() );

}
usersCache.setTimeToIdleSeconds(
redbackRuntimeConfiguration.getUsersCacheConfiguration().getTimeToIdleSeconds() );

if ( redbackRuntimeConfiguration.getUsersCacheConfiguration().getTimeToLiveSeconds() < 0 )
{
redbackRuntimeConfiguration.getUsersCacheConfiguration().setTimeToLiveSeconds(
usersCache.getTimeToLiveSeconds() );

}
usersCache.setTimeToLiveSeconds(
redbackRuntimeConfiguration.getUsersCacheConfiguration().getTimeToLiveSeconds() );

}

public RedbackRuntimeConfiguration getRedbackRuntimeConfiguration()
@@ -148,8 +172,10 @@ public class DefaultRedbackRuntimeConfigurationService
}

// users cache
usersCache.setTimeToIdleSeconds( redbackRuntimeConfiguration.getUsersCacheTimeToIdleSeconds() );
usersCache.setTimeToLiveSeconds( redbackRuntimeConfiguration.getUsersCacheTimeToLiveSeconds() );
usersCache.setTimeToIdleSeconds(
redbackRuntimeConfiguration.getUsersCacheConfiguration().getTimeToIdleSeconds() );
usersCache.setTimeToLiveSeconds(
redbackRuntimeConfiguration.getUsersCacheConfiguration().getTimeToLiveSeconds() );

return Boolean.TRUE;
}

Notiek ielāde…
Atcelt
Saglabāt