/* * ==================================================================== * Copyright (c) 2004-2010 TMate Software Ltd. All rights reserved. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms * are also available at http://svnkit.com/license.html. * If newer versions of this license are posted there, you may use a * newer version instead, at your option. * ==================================================================== */ package org.tmatesoft.svn.core.internal.wc17; import java.io.File; import java.util.Collections; import java.util.Map; import org.tmatesoft.svn.core.SVNDepth; import org.tmatesoft.svn.core.internal.util.SVNHashMap; /** * @version 1.3 * @author TMate Software Ltd. */ public class SVNExternalsStore { private SVNHashMap newExternals; private SVNHashMap oldExternals; private SVNHashMap depths; public void addOldExternal(File path, String oldValue) { if (oldExternals == null) { oldExternals = new SVNHashMap(); } oldExternals.put(path, oldValue); } public void addNewExternal(File path, String newValue) { if (newExternals == null) { newExternals = new SVNHashMap(); } newExternals.put(path, newValue); } public void addExternal(File path, String oldValue, String newValue) { addNewExternal(path, newValue); addOldExternal(path, oldValue); } public void addDepth(File localAbsPath, SVNDepth depth) { if (depths == null) { depths = new SVNHashMap(); } depths.put(localAbsPath, depth); } public void removeDepth(String path) { if (depths != null) { depths.remove(path); } } public void removeExternal(String path) { if (newExternals != null) { newExternals.remove(path); } if (oldExternals != null) { oldExternals.remove(path); } } public Map<File, String> getNewExternals() { return newExternals == null ? Collections.EMPTY_MAP : newExternals; } public Map<File, String> getOldExternals() { return oldExternals == null ? Collections.EMPTY_MAP : oldExternals; } public Map<File, SVNDepth> getDepths() { return depths == null ? Collections.EMPTY_MAP : depths; } }