001// License: GPL. For details, see LICENSE file.
002package org.openstreetmap.josm.data.preferences;
003
004import org.openstreetmap.josm.Main;
005
006/**
007 * A property containing a {@code Boolean} value.
008 */
009public class BooleanProperty extends AbstractProperty<Boolean> {
010
011    /**
012     * Constructs a new {@code BooleanProperty}.
013     * @param key The property key
014     * @param defaultValue The default value
015     */
016    public BooleanProperty(String key, boolean defaultValue) {
017        super(key, defaultValue);
018    }
019
020    @Override
021    public Boolean get() {
022        return Main.pref.getBoolean(getKey(), defaultValue);
023    }
024
025    @Override
026    public boolean put(Boolean value) {
027        return Main.pref.put(getKey(), value);
028    }
029}