package org.togglz.seam.security.test; import javax.inject.Inject; import org.togglz.core.Feature; import org.togglz.core.activation.UsernameActivationStrategy; import org.togglz.core.manager.TogglzConfig; import org.togglz.core.repository.FeatureState; import org.togglz.core.repository.StateRepository; import org.togglz.core.repository.mem.InMemoryStateRepository; import org.togglz.core.user.UserProvider; import org.togglz.seam.security.SeamSecurityUserProvider; public class SeamSecurityUsersConfiguration implements TogglzConfig { @Inject private SeamSecurityUserProvider featureUserProvider; @Override public Class<? extends Feature> getFeatureClass() { return TestFeature.class; } @Override public StateRepository getStateRepository() { InMemoryStateRepository repository = new InMemoryStateRepository(); repository.setFeatureState(new FeatureState(TestFeature.DISABLED, false)); repository.setFeatureState(new FeatureState(TestFeature.ENABLED_FOR_ALL, true)); repository.setFeatureState(new FeatureState(TestFeature.ENABLED_FOR_CK, true) .setStrategyId(UsernameActivationStrategy.ID) .setParameter(UsernameActivationStrategy.PARAM_USERS, "ck")); return repository; } @Override public UserProvider getUserProvider() { return featureUserProvider; } }