add the interface StoreFactory and refactor storeFactories

This commit is contained in:
Mohamed Karray
2018-11-27 11:35:02 +01:00
parent 39e5c19251
commit 7a1de0f67b
42 changed files with 485 additions and 291 deletions

View File

@@ -55,6 +55,7 @@ import sonia.scm.event.ScmEventBus;
import sonia.scm.group.GroupEvent;
import sonia.scm.store.ConfigurationEntryStore;
import sonia.scm.store.ConfigurationEntryStoreFactory;
import sonia.scm.store.StoreParameters;
import sonia.scm.user.UserEvent;
import sonia.scm.util.ClassLoaders;
@@ -108,9 +109,13 @@ public class DefaultSecuritySystem implements SecuritySystem
* @param storeFactory
*/
@Inject
@SuppressWarnings("unchecked")
public DefaultSecuritySystem(ConfigurationEntryStoreFactory storeFactory)
{
store = storeFactory.getStore(AssignedPermission.class, NAME);
store = storeFactory.getStore(new StoreParameters()
.withType(AssignedPermission.class)
.withName(NAME)
.build());
readAvailablePermissions();
}

View File

@@ -45,6 +45,7 @@ import org.slf4j.LoggerFactory;
import sonia.scm.store.ConfigurationEntryStore;
import sonia.scm.store.ConfigurationEntryStoreFactory;
import sonia.scm.store.StoreParameters;
import static com.google.common.base.Preconditions.*;
@@ -87,9 +88,13 @@ public class SecureKeyResolver extends SigningKeyResolverAdapter
* @param storeFactory store factory
*/
@Inject
@SuppressWarnings("unchecked")
public SecureKeyResolver(ConfigurationEntryStoreFactory storeFactory)
{
this.store = storeFactory.getStore(SecureKey.class, STORE_NAME);
store = storeFactory.getStore(new StoreParameters()
.withType(SecureKey.class)
.withName(STORE_NAME)
.build());
}
//~--- methods --------------------------------------------------------------