001/*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements.  See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership.  The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License.  You may obtain a copy of the License at
009 *
010 *   http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing,
013 * software distributed under the License is distributed on an
014 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015 * KIND, either express or implied.  See the License for the
016 * specific language governing permissions and limitations
017 * under the License.
018 */
019package org.apache.maven.resolver.examples.util;
020
021import java.io.PrintStream;
022
023import org.eclipse.aether.AbstractRepositoryListener;
024import org.eclipse.aether.RepositoryEvent;
025
026import static java.util.Objects.requireNonNull;
027
028/**
029 * A simplistic repository listener that logs events to the console.
030 */
031public class ConsoleRepositoryListener extends AbstractRepositoryListener {
032
033    private final PrintStream out;
034
035    public ConsoleRepositoryListener() {
036        this(null);
037    }
038
039    public ConsoleRepositoryListener(PrintStream out) {
040        this.out = (out != null) ? out : System.out;
041    }
042
043    public void artifactDeployed(RepositoryEvent event) {
044        requireNonNull(event, "event cannot be null");
045        out.println("Deployed " + event.getArtifact() + " to " + event.getRepository());
046    }
047
048    public void artifactDeploying(RepositoryEvent event) {
049        requireNonNull(event, "event cannot be null");
050        out.println("Deploying " + event.getArtifact() + " to " + event.getRepository());
051    }
052
053    public void artifactDescriptorInvalid(RepositoryEvent event) {
054        requireNonNull(event, "event cannot be null");
055        out.println("Invalid artifact descriptor for " + event.getArtifact() + ": "
056                + event.getException().getMessage());
057    }
058
059    public void artifactDescriptorMissing(RepositoryEvent event) {
060        requireNonNull(event, "event cannot be null");
061        out.println("Missing artifact descriptor for " + event.getArtifact());
062    }
063
064    public void artifactInstalled(RepositoryEvent event) {
065        requireNonNull(event, "event cannot be null");
066        out.println("Installed " + event.getArtifact() + " to " + event.getFile());
067    }
068
069    public void artifactInstalling(RepositoryEvent event) {
070        requireNonNull(event, "event cannot be null");
071        out.println("Installing " + event.getArtifact() + " to " + event.getFile());
072    }
073
074    public void artifactResolved(RepositoryEvent event) {
075        requireNonNull(event, "event cannot be null");
076        out.println("Resolved artifact " + event.getArtifact() + " from " + event.getRepository());
077    }
078
079    public void artifactDownloading(RepositoryEvent event) {
080        requireNonNull(event, "event cannot be null");
081        out.println("Downloading artifact " + event.getArtifact() + " from " + event.getRepository());
082    }
083
084    public void artifactDownloaded(RepositoryEvent event) {
085        requireNonNull(event, "event cannot be null");
086        out.println("Downloaded artifact " + event.getArtifact() + " from " + event.getRepository());
087    }
088
089    public void artifactResolving(RepositoryEvent event) {
090        requireNonNull(event, "event cannot be null");
091        out.println("Resolving artifact " + event.getArtifact());
092    }
093
094    public void metadataDeployed(RepositoryEvent event) {
095        requireNonNull(event, "event cannot be null");
096        out.println("Deployed " + event.getMetadata() + " to " + event.getRepository());
097    }
098
099    public void metadataDeploying(RepositoryEvent event) {
100        requireNonNull(event, "event cannot be null");
101        out.println("Deploying " + event.getMetadata() + " to " + event.getRepository());
102    }
103
104    public void metadataInstalled(RepositoryEvent event) {
105        requireNonNull(event, "event cannot be null");
106        out.println("Installed " + event.getMetadata() + " to " + event.getFile());
107    }
108
109    public void metadataInstalling(RepositoryEvent event) {
110        requireNonNull(event, "event cannot be null");
111        out.println("Installing " + event.getMetadata() + " to " + event.getFile());
112    }
113
114    public void metadataInvalid(RepositoryEvent event) {
115        requireNonNull(event, "event cannot be null");
116        out.println("Invalid metadata " + event.getMetadata());
117    }
118
119    public void metadataResolved(RepositoryEvent event) {
120        requireNonNull(event, "event cannot be null");
121        out.println("Resolved metadata " + event.getMetadata() + " from " + event.getRepository());
122    }
123
124    public void metadataResolving(RepositoryEvent event) {
125        requireNonNull(event, "event cannot be null");
126        out.println("Resolving metadata " + event.getMetadata() + " from " + event.getRepository());
127    }
128}