Mercurial > hg4j
comparison src/org/tmatesoft/hg/repo/HgDirstate.java @ 456:909306e412e2
Refactor LogFacility and SessionContext, better API for both
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Mon, 18 Jun 2012 16:54:00 +0200 |
| parents | 12f668401613 |
| children | b3c16d1aede0 |
comparison
equal
deleted
inserted
replaced
| 454:36fd1fd06492 | 456:909306e412e2 |
|---|---|
| 15 * contact TMate Software at support@hg4j.com | 15 * contact TMate Software at support@hg4j.com |
| 16 */ | 16 */ |
| 17 package org.tmatesoft.hg.repo; | 17 package org.tmatesoft.hg.repo; |
| 18 | 18 |
| 19 import static org.tmatesoft.hg.core.Nodeid.NULL; | 19 import static org.tmatesoft.hg.core.Nodeid.NULL; |
| 20 import static org.tmatesoft.hg.util.LogFacility.Severity.Debug; | |
| 20 | 21 |
| 21 import java.io.BufferedReader; | 22 import java.io.BufferedReader; |
| 22 import java.io.File; | 23 import java.io.File; |
| 23 import java.io.FileNotFoundException; | 24 import java.io.FileNotFoundException; |
| 24 import java.io.FileReader; | 25 import java.io.FileReader; |
| 33 import org.tmatesoft.hg.internal.DataAccess; | 34 import org.tmatesoft.hg.internal.DataAccess; |
| 34 import org.tmatesoft.hg.internal.EncodingHelper; | 35 import org.tmatesoft.hg.internal.EncodingHelper; |
| 35 import org.tmatesoft.hg.util.Pair; | 36 import org.tmatesoft.hg.util.Pair; |
| 36 import org.tmatesoft.hg.util.Path; | 37 import org.tmatesoft.hg.util.Path; |
| 37 import org.tmatesoft.hg.util.PathRewrite; | 38 import org.tmatesoft.hg.util.PathRewrite; |
| 39 import org.tmatesoft.hg.util.LogFacility.Severity; | |
| 38 | 40 |
| 39 | 41 |
| 40 /** | 42 /** |
| 41 * @see http://mercurial.selenic.com/wiki/DirState | 43 * @see http://mercurial.selenic.com/wiki/DirState |
| 42 * @see http://mercurial.selenic.com/wiki/FileFormats#dirstate | 44 * @see http://mercurial.selenic.com/wiki/FileFormats#dirstate |
| 139 } else if (state == 'r') { | 141 } else if (state == 'r') { |
| 140 removed.put(r.name1, r); | 142 removed.put(r.name1, r); |
| 141 } else if (state == 'm') { | 143 } else if (state == 'm') { |
| 142 merged.put(r.name1, r); | 144 merged.put(r.name1, r); |
| 143 } else { | 145 } else { |
| 144 repo.getContext().getLog().warn(getClass(), "Dirstate record for file %s (size: %d, tstamp:%d) has unknown state '%c'", r.name1, r.size(), r.time, state); | 146 repo.getContext().getLog().dump(getClass(), Severity.Warn, "Dirstate record for file %s (size: %d, tstamp:%d) has unknown state '%c'", r.name1, r.size(), r.time, state); |
| 145 } | 147 } |
| 146 } | 148 } |
| 147 } catch (IOException ex) { | 149 } catch (IOException ex) { |
| 148 throw new HgInvalidControlFileException("Dirstate read failed", ex, dirstateFile); | 150 throw new HgInvalidControlFileException("Dirstate read failed", ex, dirstateFile); |
| 149 } finally { | 151 } finally { |
| 203 b = b.trim().intern(); | 205 b = b.trim().intern(); |
| 204 } | 206 } |
| 205 branch = b == null || b.length() == 0 ? HgRepository.DEFAULT_BRANCH_NAME : b; | 207 branch = b == null || b.length() == 0 ? HgRepository.DEFAULT_BRANCH_NAME : b; |
| 206 r.close(); | 208 r.close(); |
| 207 } catch (FileNotFoundException ex) { | 209 } catch (FileNotFoundException ex) { |
| 208 repo.getContext().getLog().debug(HgDirstate.class, ex, null); // log verbose debug, exception might be legal here | 210 repo.getContext().getLog().dump(HgDirstate.class, Debug, ex, null); // log verbose debug, exception might be legal here |
| 209 // IGNORE | 211 // IGNORE |
| 210 } catch (IOException ex) { | 212 } catch (IOException ex) { |
| 211 throw new HgInvalidControlFileException("Error reading file with branch information", ex, branchFile); | 213 throw new HgInvalidControlFileException("Error reading file with branch information", ex, branchFile); |
| 212 } | 214 } |
| 213 } | 215 } |
