Mercurial > jhg
comparison src/org/tmatesoft/hg/repo/HgMergeState.java @ 628:6526d8adbc0f
Explicit HgRuntimeException to facilitate easy switch from runtime to checked exceptions
| author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
|---|---|
| date | Wed, 22 May 2013 15:52:31 +0200 |
| parents | b3c16d1aede0 |
| children | b4242b7e7dfe |
comparison
equal
deleted
inserted
replaced
| 627:5153eb73b18d | 628:6526d8adbc0f |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (c) 2011-2012 TMate Software Ltd | 2 * Copyright (c) 2011-2013 TMate Software Ltd |
| 3 * | 3 * |
| 4 * This program is free software; you can redistribute it and/or modify | 4 * This program is free software; you can redistribute it and/or modify |
| 5 * it under the terms of the GNU General Public License as published by | 5 * it under the terms of the GNU General Public License as published by |
| 6 * the Free Software Foundation; version 2 of the License. | 6 * the Free Software Foundation; version 2 of the License. |
| 7 * | 7 * |
| 183 * Value of {@link #getConflicts()} is reasonable iff this method returned <code>false</code>. | 183 * Value of {@link #getConflicts()} is reasonable iff this method returned <code>false</code>. |
| 184 * | 184 * |
| 185 * @return <code>true</code> when recorded merge state doesn't seem to correspond to present working copy | 185 * @return <code>true</code> when recorded merge state doesn't seem to correspond to present working copy |
| 186 */ | 186 */ |
| 187 public boolean isStale() { | 187 public boolean isStale() { |
| 188 if (wcp1 == null) { | 188 assert wcp1 != null; |
| 189 refresh(); | |
| 190 } | |
| 191 return !stateParent.isNull() /*there's merge state*/ && !wcp1.equals(stateParent) /*and it doesn't match*/; | 189 return !stateParent.isNull() /*there's merge state*/ && !wcp1.equals(stateParent) /*and it doesn't match*/; |
| 192 } | 190 } |
| 193 | 191 |
| 194 /** | 192 /** |
| 195 * It's possible for a repository to be in a 'merging' state (@see {@link #isMerging()} without any | 193 * It's possible for a repository to be in a 'merging' state (@see {@link #isMerging()} without any |
| 196 * conflict to resolve (no merge state information file). | 194 * conflict to resolve (no merge state information file). |
| 197 * | 195 * |
| 198 * @return first parent of the working copy, never <code>null</code> | 196 * @return first parent of the working copy, never <code>null</code> |
| 199 */ | 197 */ |
| 200 public Nodeid getFirstParent() { | 198 public Nodeid getFirstParent() { |
| 201 if (wcp1 == null) { | 199 assert wcp1 != null; |
| 202 refresh(); | |
| 203 } | |
| 204 return wcp1; | 200 return wcp1; |
| 205 } | 201 } |
| 206 | 202 |
| 207 /** | 203 /** |
| 208 * @return second parent of the working copy, never <code>null</code> | 204 * @return second parent of the working copy, never <code>null</code> |
| 209 */ | 205 */ |
| 210 public Nodeid getSecondParent() { | 206 public Nodeid getSecondParent() { |
| 211 if (wcp2 == null) { | 207 assert wcp2 != null; |
| 212 refresh(); | |
| 213 } | |
| 214 return wcp2; | 208 return wcp2; |
| 215 } | 209 } |
| 216 | 210 |
| 217 /** | 211 /** |
| 218 * @return revision of the merge state or {@link Nodeid#NULL} if there's no merge state | 212 * @return revision of the merge state or {@link Nodeid#NULL} if there's no merge state |
| 219 */ | 213 */ |
| 220 public Nodeid getStateParent() { | 214 public Nodeid getStateParent() { |
| 221 if (stateParent == null) { | 215 assert stateParent != null; |
| 222 refresh(); | |
| 223 } | |
| 224 return stateParent; | 216 return stateParent; |
| 225 } | 217 } |
| 226 | 218 |
| 227 /** | 219 /** |
| 228 * List of conflicts as recorded in the merge state information file. | 220 * List of conflicts as recorded in the merge state information file. |
