Mercurial > hg4j
comparison src/org/tmatesoft/hg/core/HgFileRevision.java @ 444:b3b1db9301a2
Few comments that emerged while working on examples
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Tue, 15 May 2012 20:19:22 +0200 |
| parents | 12f668401613 |
| children | 5dcb4581c8ef |
comparison
equal
deleted
inserted
replaced
| 443:072b5f3ed0c8 | 444:b3b1db9301a2 |
|---|---|
| 76 public Nodeid getRevision() { | 76 public Nodeid getRevision() { |
| 77 return revision; | 77 return revision; |
| 78 } | 78 } |
| 79 | 79 |
| 80 /** | 80 /** |
| 81 * Executable or symbolic link, or <code>null</code> if regular file | 81 * Extract flags of the file as recorded in the manifest for this file revision |
| 82 * @return whether regular file, executable or a symbolic link | |
| 82 * @throws HgRuntimeException subclass thereof to indicate issues with the library. <em>Runtime exception</em> | 83 * @throws HgRuntimeException subclass thereof to indicate issues with the library. <em>Runtime exception</em> |
| 83 */ | 84 */ |
| 84 public HgManifest.Flags getFileFlags() throws HgRuntimeException { | 85 public HgManifest.Flags getFileFlags() throws HgRuntimeException { |
| 85 if (flags == null) { | 86 if (flags == null) { |
| 87 /* | |
| 88 * Note, for uses other than HgManifestCommand or HgChangesetFileSneaker, when no flags come through the cons, | |
| 89 * it's possible to face next shortcoming: | |
| 90 * Imagine csetA and csetB, with corresponding manifestA and manifestB, the file didn't change (revision/nodeid is the same) | |
| 91 * but flag of the file has changed (e.g. became executable). Since HgFileRevision doesn't keep reference to | |
| 92 * an actual manifest revision, but only file's, and it's likely the flags returned from this method would | |
| 93 * yield result as from manifestA (i.e. no flag change in manifestB ever noticed). | |
| 94 */ | |
| 86 HgDataFile df = repo.getFileNode(path); | 95 HgDataFile df = repo.getFileNode(path); |
| 87 int revIdx = df.getRevisionIndex(revision); | 96 int revIdx = df.getRevisionIndex(revision); |
| 88 flags = df.getFlags(revIdx); | 97 flags = df.getFlags(revIdx); |
| 89 } | 98 } |
| 90 return flags; | 99 return flags; |
