/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.geofence.services.rest.model.config; import org.geoserver.geofence.core.model.GFUser; import org.geoserver.geofence.core.model.GSInstance; import org.geoserver.geofence.core.model.GSUser; import org.geoserver.geofence.core.model.Rule; import org.geoserver.geofence.core.model.UserGroup; import org.geoserver.geofence.services.rest.model.config.adapter.RemapperAdapter; import java.util.HashMap; import java.util.Map; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; /** * * @author ETj (etj at geo-solutions.it) */ @XmlRootElement(name = "Remapping") public class RESTConfigurationRemapping { private Map<Long, Long> users = new HashMap<Long, Long>(); private Map<Long, Long> userGroups = new HashMap<Long, Long>(); private Map<Long, Long> instances = new HashMap<Long, Long>(); private Map<Long, Long> rules = new HashMap<Long, Long>(); private Map<Long, Long> grUsers = new HashMap<Long, Long>(); public void remap(Long newId, GSUser old) { users.put(old.getId(), newId); } public void remap(Long newId, GFUser old) { grUsers.put(old.getId(), newId); } public void remap(Long newId, UserGroup old) { userGroups.put(old.getId(), newId); } public void remap(Long newId, GSInstance old) { instances.put(old.getId(), newId); } public void remap(Long newId, Rule old) { rules.put(old.getId(), newId); } @XmlJavaTypeAdapter(RemapperAdapter.class) @XmlElement(name = "instances") public Map<Long, Long> getInstances() { return instances; } @XmlJavaTypeAdapter(RemapperAdapter.class) @XmlElement(name = "userGroups") public Map<Long, Long> getUserGroups() { return userGroups; } @XmlJavaTypeAdapter(RemapperAdapter.class) @XmlElement(name = "rules") public Map<Long, Long> getRules() { return rules; } @XmlJavaTypeAdapter(RemapperAdapter.class) @XmlElement(name = "users") public Map<Long, Long> getUsers() { return users; } @XmlJavaTypeAdapter(RemapperAdapter.class) @XmlElement(name = "internalUsers") public Map<Long, Long> getGRUsers() { return grUsers; } }