1
2
3
4
5
6
7
8
9
10
11 package org.eclipse.jgit.internal.storage.reftree;
12
13 import java.io.IOException;
14
15 import org.eclipse.jgit.lib.ObjectIdRef;
16 import org.eclipse.jgit.lib.Ref;
17 import org.eclipse.jgit.lib.RefDatabase;
18 import org.eclipse.jgit.lib.RefUpdate;
19 import org.eclipse.jgit.lib.Repository;
20
21
22 class AlwaysFailUpdate extends RefUpdate {
23 private final RefTreeDatabase refdb;
24
25 AlwaysFailUpdate(RefTreeDatabase refdb, String name) {
26 super(new ObjectIdRef.Unpeeled(Ref.Storage.NEW, name, null));
27 this.refdb = refdb;
28 setCheckConflicting(false);
29 }
30
31
32 @Override
33 protected RefDatabase getRefDatabase() {
34 return refdb;
35 }
36
37
38 @Override
39 protected Repository getRepository() {
40 return refdb.getRepository();
41 }
42
43
44 @Override
45 protected boolean tryLock(boolean deref) throws IOException {
46 return false;
47 }
48
49
50 @Override
51 protected void unlock() {
52
53 }
54
55
56 @Override
57 protected Result doUpdate(Result desiredResult) {
58 return Result.LOCK_FAILURE;
59 }
60
61
62 @Override
63 protected Result doDelete(Result desiredResult) {
64 return Result.LOCK_FAILURE;
65 }
66
67
68 @Override
69 protected Result doLink(String target) {
70 return Result.LOCK_FAILURE;
71 }
72 }