1 package net.trajano.wagon.git.internal;
2
3 import org.eclipse.jgit.transport.CredentialItem;
4 import org.eclipse.jgit.transport.CredentialsProvider;
5 import org.eclipse.jgit.transport.URIish;
6
7
8
9
10 public class PassphraseCredentialsProvider extends CredentialsProvider {
11
12
13
14 private final String passphrase;
15
16
17
18
19
20
21
22 public PassphraseCredentialsProvider(final String passphrase) {
23 super();
24 this.passphrase = passphrase;
25 }
26
27
28
29
30 @Override
31 public boolean get(final URIish uriish, final CredentialItem... items) {
32 for (final CredentialItem item : items) {
33 if (item instanceof CredentialItem.StringType) {
34 ((CredentialItem.StringType) item).setValue(passphrase);
35 continue;
36 }
37 }
38 return true;
39 }
40
41
42
43
44
45
46
47 @Override
48 public boolean isInteractive() {
49 return false;
50 }
51
52
53
54
55
56
57
58 @Override
59 public boolean supports(final CredentialItem... items) {
60 for (final CredentialItem item : items) {
61 if (item instanceof CredentialItem.StringType) {
62 return true;
63 }
64 }
65 return false;
66 }
67 }