Mercurial > jhg
comparison src/org/tmatesoft/hg/repo/HgWorkingCopyStatusCollector.java @ 429:cd658b24a620
FIXMEs: javadoc, proper use of constants
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Thu, 29 Mar 2012 18:29:03 +0200 |
parents | 48f993aa2f41 |
children | 12f668401613 |
comparison
equal
deleted
inserted
replaced
428:ead6c67f3319 | 429:cd658b24a620 |
---|---|
149 private ManifestRevision getDirstateParentManifest() { | 149 private ManifestRevision getDirstateParentManifest() { |
150 return dirstateParentManifest; | 150 return dirstateParentManifest; |
151 } | 151 } |
152 | 152 |
153 /** | 153 /** |
154 * may be invoked few times, TIP or WORKING_COPY indicate comparison shall be run against working copy parent | 154 * Walk working copy, analyze status for each file found and missing. |
155 * XXX NOTE, use of TIP constant requires certain care. TIP here doesn't mean latest cset, but actual working copy parent. | 155 * May be invoked few times. |
156 * | 156 * |
157 * @param baseRevision | 157 * <p>There's no dedicated constant to for working copy parent, at least now. |
158 * @param inspector | 158 * Use {@link HgRepository#WORKING_COPY} to indicate comparison |
159 * shall be run against working copy parent. Although a bit confusing, single case doesn't | |
160 * justify a dedicated constant. | |
161 * | |
162 * @param baseRevision revision index to check against, or {@link HgRepository#WORKING_COPY}. Note, {@link HgRepository#TIP} is not supported. | |
163 * @param inspector callback to receive status information | |
159 * @throws IOException to propagate IO errors from {@link FileIterator} | 164 * @throws IOException to propagate IO errors from {@link FileIterator} |
160 * @throws CancelledException if operation execution was cancelled | 165 * @throws CancelledException if operation execution was cancelled |
161 * @throws HgRuntimeException subclass thereof to indicate issues with the library. <em>Runtime exception</em> | 166 * @throws HgRuntimeException subclass thereof to indicate issues with the library. <em>Runtime exception</em> |
162 */ | 167 */ |
163 public void walk(int baseRevision, HgStatusInspector inspector) throws IOException, CancelledException, HgRuntimeException { | 168 public void walk(int baseRevision, HgStatusInspector inspector) throws IOException, CancelledException, HgRuntimeException { |
168 getDirstate(); | 173 getDirstate(); |
169 } | 174 } |
170 if (getDirstateParentManifest() == null) { | 175 if (getDirstateParentManifest() == null) { |
171 initDirstateParentManifest(); | 176 initDirstateParentManifest(); |
172 } | 177 } |
178 // XXX NOTE, use of TIP for working copy parent is questionable, at least. Instead, TIP shall mean latest cset or not allowed at all | |
173 ManifestRevision collect = null; // non null indicates we compare against base revision | 179 ManifestRevision collect = null; // non null indicates we compare against base revision |
174 Set<Path> baseRevFiles = Collections.emptySet(); // files from base revision not affected by status calculation | 180 Set<Path> baseRevFiles = Collections.emptySet(); // files from base revision not affected by status calculation |
175 if (baseRevision != TIP && baseRevision != WORKING_COPY) { | 181 if (baseRevision != TIP && baseRevision != WORKING_COPY) { |
176 collect = getManifest(baseRevision); | 182 collect = getManifest(baseRevision); |
177 baseRevFiles = new TreeSet<Path>(collect.files()); | 183 baseRevFiles = new TreeSet<Path>(collect.files()); |
283 } | 289 } |
284 } | 290 } |
285 } | 291 } |
286 | 292 |
287 /** | 293 /** |
294 * A {@link #walk(int, HgStatusInspector)} that records all the status information in the {@link HgStatusCollector.Record} object. | |
288 * | 295 * |
289 * @param baseRevision | 296 * @see #walk(int, HgStatusInspector) |
297 * @param baseRevision revision index to check against, or {@link HgRepository#WORKING_COPY}. Note, {@link HgRepository#TIP} is not supported. | |
290 * @return information object that describes change between the revisions | 298 * @return information object that describes change between the revisions |
291 * @throws IOException to propagate IO errors from {@link FileIterator} | 299 * @throws IOException to propagate IO errors from {@link FileIterator} |
292 * @throws CancelledException if operation execution was cancelled | |
293 * @throws HgRuntimeException subclass thereof to indicate issues with the library. <em>Runtime exception</em> | 300 * @throws HgRuntimeException subclass thereof to indicate issues with the library. <em>Runtime exception</em> |
294 */ | 301 */ |
295 public HgStatusCollector.Record status(int baseRevision) throws IOException, HgRuntimeException { | 302 public HgStatusCollector.Record status(int baseRevision) throws IOException, HgRuntimeException { |
296 HgStatusCollector.Record rv = new HgStatusCollector.Record(); | 303 HgStatusCollector.Record rv = new HgStatusCollector.Record(); |
297 try { | 304 try { |