1 /** 2 * 3 * Copyright 2005 The Apache Software Foundation 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 package org.apache.geronimo.kernel.repository; 18 19 import java.io.Serializable; 20 21 /** 22 * A dependency of a Geronimo configuration. This may be another 23 * configuration, or it may be a third-party JAR that just needs to go on the 24 * configuration Class Path. 25 * 26 * @version $Rev: 410741 $ $Date: 2006-05-31 21:35:48 -0700 (Wed, 31 May 2006) $ 27 */ 28 public class Dependency implements Serializable { 29 private static final long serialVersionUID = -1940822102064150145L; 30 private final Artifact artifact; 31 private final ImportType importType; 32 33 public Dependency(Artifact artifact, ImportType importType) { 34 this.artifact = artifact; 35 this.importType = importType; 36 } 37 38 public Artifact getArtifact() { 39 return artifact; 40 } 41 42 public ImportType getImportType() { 43 return importType; 44 } 45 46 public boolean equals(Object o) { 47 if (this == o) return true; 48 if (o == null || getClass() != o.getClass()) return false; 49 50 final Dependency that = (Dependency) o; 51 52 if (artifact != null ? !artifact.equals(that.artifact) : that.artifact != null) return false; 53 54 return true; 55 } 56 57 public int hashCode() { 58 return (artifact != null ? artifact.hashCode() : 0); 59 } 60 61 public String toString() { 62 return "[" + importType + ": " + artifact + "]"; 63 } 64 }