1 21 package com.jaspersoft.jasperserver.api.engine.jasperreports.util; 22 23 import org.apache.commons.lang.builder.EqualsBuilder; 24 import org.apache.commons.lang.builder.HashCodeBuilder; 25 26 import com.jaspersoft.jasperserver.api.metadata.common.domain.Resource; 27 28 32 public class RepositoryResourceKey { 33 private final String uri; 34 private final int version; 35 private final int hash; 36 37 public RepositoryResourceKey(String uri, int version) { 38 this.uri = uri; 39 this.version = version; 40 41 this.hash = new HashCodeBuilder().append(this.uri).append(this.version).toHashCode(); 42 } 43 44 public RepositoryResourceKey(Resource res) { 45 this(res.getURIString(), res.getVersion()); 46 } 47 48 public boolean equals(Object obj) { 49 if (!(obj instanceof RepositoryResourceKey)) { 50 return false; 51 } 52 if (this == obj) { 53 return true; 54 } 55 RepositoryResourceKey key = (RepositoryResourceKey) obj; 56 return new EqualsBuilder().append(uri, key.uri).append(version, key.version).isEquals(); 57 } 58 59 public int hashCode() { 60 return hash; 61 } 62 63 public String getUri() { 64 return uri; 65 } 66 67 public int getVersion() { 68 return version; 69 } 70 } 71 | Popular Tags |