1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.internal.aether;
20
21 import java.io.FileNotFoundException;
22
23 import org.codehaus.plexus.logging.Logger;
24 import org.eclipse.aether.AbstractRepositoryListener;
25 import org.eclipse.aether.RepositoryEvent;
26 import org.eclipse.aether.transfer.MetadataNotFoundException;
27
28
29
30
31 class LoggingRepositoryListener extends AbstractRepositoryListener {
32
33 private final Logger logger;
34
35 LoggingRepositoryListener(Logger logger) {
36 this.logger = logger;
37 }
38
39 @Override
40 public void artifactInstalling(RepositoryEvent event) {
41 logger.info("Installing " + event.getArtifact().getFile() + " to " + event.getFile());
42 }
43
44 @Override
45 public void metadataInstalling(RepositoryEvent event) {
46 logger.debug("Installing " + event.getMetadata() + " to " + event.getFile());
47 }
48
49 @Override
50 public void metadataResolved(RepositoryEvent event) {
51 Exception e = event.getException();
52 if (e != null) {
53 if (e instanceof MetadataNotFoundException) {
54 logger.debug(e.getMessage());
55 } else if (logger.isDebugEnabled()) {
56 logger.warn(e.getMessage(), e);
57 } else {
58 logger.warn(e.getMessage());
59 }
60 }
61 }
62
63 @Override
64 public void metadataInvalid(RepositoryEvent event) {
65 Exception exception = event.getException();
66
67 StringBuilder buffer = new StringBuilder(256);
68 buffer.append("The metadata ");
69 if (event.getMetadata().getFile() != null) {
70 buffer.append(event.getMetadata().getFile());
71 } else {
72 buffer.append(event.getMetadata());
73 }
74
75 if (exception instanceof FileNotFoundException) {
76 buffer.append(" is inaccessible");
77 } else {
78 buffer.append(" is invalid");
79 }
80
81 if (exception != null) {
82 buffer.append(": ");
83 buffer.append(exception.getMessage());
84 }
85
86 if (logger.isDebugEnabled()) {
87 logger.warn(buffer.toString(), exception);
88 } else {
89 logger.warn(buffer.toString());
90 }
91 }
92
93 @Override
94 public void artifactDescriptorInvalid(RepositoryEvent event) {
95 StringBuilder buffer = new StringBuilder(256);
96 buffer.append("The POM for ");
97 buffer.append(event.getArtifact());
98 buffer.append(" is invalid, transitive dependencies (if any) will not be available");
99 logger.warn(buffer + ": " + event.getException().getMessage());
100 }
101
102 @Override
103 public void artifactDescriptorMissing(RepositoryEvent event) {
104 logger.warn("The POM for " + event.getArtifact() + " is missing, no dependency information available");
105 }
106 }