001// License: GPL. For details, see LICENSE file. 002package org.openstreetmap.josm.io.session; 003 004import java.util.Map; 005 006/** 007 * Interface to support export to session file (and import back) for a class that 008 * stores customizable user settings. 009 * 010 * @since 12594 011 */ 012public interface SessionAwareReadApply { 013 014 /** 015 * Export settings to a map of properties. 016 * @return map of properties 017 */ 018 Map<String, String> toPropertiesMap(); 019 020 /** 021 * Import settings from a map of properties. 022 * @param properties properties map 023 */ 024 void applyFromPropertiesMap(Map<String, String> properties); 025}