package org.axway.grapes.commons.datamodel; /** * License Model Class * * <P> Model Objects are used in the communication with the Grapes server. These objects are serialized/un-serialized in JSON objects to be exchanged via http REST calls. * * @author jdcoffre */ public class License { private String name = ""; private String longName = ""; private String url = ""; private String comments = ""; private String regexp = ""; private boolean approved = false; // This field is never taken into account by the server // it provides an extra information to clients to warn them if the licenses exist // in the database of the server private boolean unknown = false; protected License() { // Should only be instantiated via the DataModelObjectFactory } public String getName() { return name; } public void setName(final String name) { this.name = name; } public String getLongName() { return longName; } public void setLongName(final String longName) { this.longName = longName; } public String getUrl() { return url; } public void setUrl(final String url) { this.url = url; } public String getComments() { return comments; } public void setComments(final String comments) { this.comments = comments; } public String getRegexp() { return regexp; } public void setRegexp(final String regexp) { this.regexp = regexp; } public boolean isApproved() { return approved; } public void setApproved(final boolean approved) { this.approved = approved; } public boolean isUnknown() { return unknown; } public void setUnknown(boolean unknown) { this.unknown = unknown; } /** * Checks if the dependency is the same than an other one. * * @param obj Object * @return <tt>true</tt> only if artifact/scope are the same in both. */ @Override public boolean equals(final Object obj){ if(obj instanceof License){ return hashCode() == obj.hashCode(); } return false; } @Override public int hashCode() { final StringBuilder sb = new StringBuilder(); sb.append(name); sb.append(longName); sb.append(url); sb.append(comments); sb.append(regexp); return sb.toString().hashCode(); } }