diff options
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/base/models/ProviderObservable.java')
-rw-r--r-- | app/src/main/java/se/leap/bitmaskclient/base/models/ProviderObservable.java | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/base/models/ProviderObservable.java b/app/src/main/java/se/leap/bitmaskclient/base/models/ProviderObservable.java new file mode 100644 index 00000000..19555504 --- /dev/null +++ b/app/src/main/java/se/leap/bitmaskclient/base/models/ProviderObservable.java @@ -0,0 +1,39 @@ +package se.leap.bitmaskclient.base.models; + +import java.util.Observable; + +/** + * Created by cyberta on 05.12.18. + */ +public class ProviderObservable extends Observable { + private static ProviderObservable instance; + private Provider currentProvider; + private Provider providerForDns; + + public static ProviderObservable getInstance() { + if (instance == null) { + instance = new ProviderObservable(); + } + return instance; + } + + public synchronized void updateProvider(Provider provider) { + instance.currentProvider = provider; + instance.providerForDns = null; + instance.setChanged(); + instance.notifyObservers(); + } + + public Provider getCurrentProvider() { + return instance.currentProvider; + } + + public void setProviderForDns(Provider provider) { + this.providerForDns = provider; + } + + public Provider getProviderForDns() { + return instance.providerForDns; + } + +} |