1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugin.prefix;
20
21 import java.util.List;
22 import org.eclipse.aether.repository.LocalRepository;
23 import org.eclipse.aether.repository.RemoteRepository;
24
25
26
27
28 public class NoPluginFoundForPrefixException extends Exception {
29
30 public NoPluginFoundForPrefixException(
31 String prefix,
32 List<String> pluginGroups,
33 LocalRepository localRepository,
34 List<RemoteRepository> remoteRepositories) {
35 super("No plugin found for prefix '" + prefix + "' in the current project and in the plugin groups "
36 + pluginGroups + " available from the repositories " + format(localRepository, remoteRepositories));
37 }
38
39 private static String format(LocalRepository localRepository, List<RemoteRepository> remoteRepositories) {
40 StringBuilder repos = new StringBuilder("[");
41
42 if (localRepository != null) {
43 repos.append(localRepository.getId())
44 .append(" (")
45 .append(localRepository.getBasedir())
46 .append(")");
47 }
48
49 if (remoteRepositories != null && !remoteRepositories.isEmpty()) {
50 for (RemoteRepository repository : remoteRepositories) {
51 repos.append(", ");
52
53 if (repository != null) {
54 repos.append(repository.getId())
55 .append(" (")
56 .append(repository.getUrl())
57 .append(")");
58 }
59 }
60 }
61
62 repos.append("]");
63
64 return repos.toString();
65 }
66 }