Mercurial > hg4j
comparison src/org/tmatesoft/hg/internal/BasicSessionContext.java @ 431:12f668401613
FIXMEs: awkward API refactored, what need to be internal got hidden; public aspects got captured in slim interfaces
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Thu, 29 Mar 2012 20:54:04 +0200 |
| parents | 30922c728341 |
| children | 909306e412e2 |
comparison
equal
deleted
inserted
replaced
| 430:d280759c2a3f | 431:12f668401613 |
|---|---|
| 19 import java.util.Collections; | 19 import java.util.Collections; |
| 20 import java.util.Map; | 20 import java.util.Map; |
| 21 | 21 |
| 22 import org.tmatesoft.hg.core.SessionContext; | 22 import org.tmatesoft.hg.core.SessionContext; |
| 23 import org.tmatesoft.hg.util.LogFacility; | 23 import org.tmatesoft.hg.util.LogFacility; |
| 24 import org.tmatesoft.hg.util.PathPool; | |
| 25 import org.tmatesoft.hg.util.PathRewrite; | |
| 26 | 24 |
| 27 /** | 25 /** |
| 28 * | 26 * |
| 29 * @author Artem Tikhomirov | 27 * @author Artem Tikhomirov |
| 30 * @author TMate Software Ltd. | 28 * @author TMate Software Ltd. |
| 31 */ | 29 */ |
| 32 public class BasicSessionContext implements SessionContext { | 30 public class BasicSessionContext implements SessionContext { |
| 33 | 31 |
| 34 private PathPool pathPool; | |
| 35 private LogFacility logFacility; | 32 private LogFacility logFacility; |
| 36 private final Map<String, Object> properties; | 33 private final Map<String, Object> properties; |
| 37 | 34 |
| 38 public BasicSessionContext(PathPool pathFactory, LogFacility log) { | 35 public BasicSessionContext(LogFacility log) { |
| 39 this(null, pathFactory, log); | 36 this(null, log); |
| 40 } | 37 } |
| 41 | 38 |
| 42 @SuppressWarnings("unchecked") | 39 @SuppressWarnings("unchecked") |
| 43 public BasicSessionContext(Map<String,?> propertyOverrides, PathPool pathFactory, LogFacility log) { | 40 public BasicSessionContext(Map<String,?> propertyOverrides, LogFacility log) { |
| 44 pathPool = pathFactory; | |
| 45 logFacility = log; | 41 logFacility = log; |
| 46 properties = propertyOverrides == null ? Collections.<String,Object>emptyMap() : (Map<String, Object>) propertyOverrides; | 42 properties = propertyOverrides == null ? Collections.<String,Object>emptyMap() : (Map<String, Object>) propertyOverrides; |
| 47 } | |
| 48 | |
| 49 public PathPool getPathPool() { | |
| 50 if (pathPool == null) { | |
| 51 pathPool = new PathPool(new PathRewrite.Empty()); | |
| 52 } | |
| 53 return pathPool; | |
| 54 } | 43 } |
| 55 | 44 |
| 56 public LogFacility getLog() { | 45 public LogFacility getLog() { |
| 57 // e.g. for exceptions that we can't handle but log (e.g. FileNotFoundException when we've checked beforehand file.canRead() | 46 // e.g. for exceptions that we can't handle but log (e.g. FileNotFoundException when we've checked beforehand file.canRead() |
| 58 if (logFacility == null) { | 47 if (logFacility == null) { |
