SpringManagedLimitRegistry.java
package com.designpatterns.creational.singleton.applied;
/**
* Same contract as {@link HandRolledLimitRegistry}, but with no singleton machinery
* at all: a plain class whose single-instance guarantee comes entirely from Spring's
* default singleton bean scope (see {@link SingletonRegistryConfig}).
*/
public class SpringManagedLimitRegistry implements LimitRegistry {
private final long dailyLimitCents;
private final long nightlyLimitCents;
public SpringManagedLimitRegistry(long dailyLimitCents, long nightlyLimitCents) {
this.dailyLimitCents = dailyLimitCents;
this.nightlyLimitCents = nightlyLimitCents;
}
@Override
public long dailyLimitCents() {
return dailyLimitCents;
}
@Override
public long nightlyLimitCents() {
return nightlyLimitCents;
}
}