![JAR search and dependency download from the Maven repository](/logo.png)
com.jfrog.bintray.client.impl.model.PackageImpl Maven / Gradle / Ivy
package com.jfrog.bintray.client.impl.model;
import com.jfrog.bintray.client.api.ObjectMapperHelper;
import com.jfrog.bintray.client.api.details.PackageDetails;
import com.jfrog.bintray.client.api.model.Pkg;
import org.codehaus.jackson.map.ObjectMapper;
import org.joda.time.DateTime;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.util.List;
import java.util.Map;
/**
* @author Noam Y. Tenne
*/
public class PackageImpl implements Pkg {
private static final Logger log = LoggerFactory.getLogger(PackageImpl.class);
private String name;
private String repository;
private String owner;
private String description;
private List labels;
private List attributeNames;
private Integer rating;
private Integer ratingCount;
private Integer followersCount;
private DateTime created;
private List versions;
private String latestVersion;
private DateTime updated;
private List linkedToRepos;
private List systemIds;
private List licenses;
private String vcsUrl;
private Map other;
public PackageImpl(PackageDetails packageDetails) {
this.name = packageDetails.getName();
this.repository = packageDetails.getRepo();
this.owner = packageDetails.getOwner();
this.description = packageDetails.getDescription();
this.labels = packageDetails.getLabels();
this.attributeNames = packageDetails.getAttributeNames();
this.ratingCount = packageDetails.getRatingCount();
this.followersCount = packageDetails.getFollowersCount();
this.created = packageDetails.getCreated();
this.versions = packageDetails.getVersions();
this.latestVersion = packageDetails.getLatestVersion();
this.updated = packageDetails.getUpdated();
this.linkedToRepos = packageDetails.getLinkedRepos();
this.systemIds = packageDetails.getSystemIds();
this.licenses = packageDetails.getLicenses();
this.vcsUrl = packageDetails.getVcsUrl();
this.other = packageDetails.other();
}
public PackageImpl(String name, String repository, String owner, String description, List labels,
List attributeNames, Integer rating, Integer ratingCount, Integer followersCount,
DateTime created, List versions, String latestVersion, DateTime updated,
List linkedToRepos, List systemIds) {
this.name = name;
this.repository = repository;
this.owner = owner;
this.description = description;
this.labels = labels;
this.attributeNames = attributeNames;
this.rating = rating;
this.ratingCount = ratingCount;
this.followersCount = followersCount;
this.created = created;
this.versions = versions;
this.latestVersion = latestVersion;
this.updated = updated;
this.linkedToRepos = linkedToRepos;
this.systemIds = systemIds;
}
public static String getCreateUpdateJson(PackageDetails packageDetails) throws IOException {
ObjectMapper mapper = ObjectMapperHelper.get();
String jsonContent;
try {
jsonContent = mapper.writeValueAsString(packageDetails);
} catch (IOException e) {
log.error("Can't process the json file: " + e.getMessage());
throw e;
}
return jsonContent;
}
@Override
public String name() {
return name;
}
@Override
public String repository() {
return repository;
}
@Override
public String owner() {
return owner;
}
@Override
public String description() {
return description;
}
@Override
public List labels() {
return labels;
}
@Override
public List attributeNames() {
return attributeNames;
}
@Override
public Integer rating() {
return rating;
}
@Override
public Integer ratingCount() {
return ratingCount;
}
@Override
public Integer followersCount() {
return followersCount;
}
@Override
public DateTime created() {
return created;
}
@Override
public List versions() {
return versions;
}
@Override
public String latestVersion() {
return latestVersion;
}
@Override
public DateTime updated() {
return updated;
}
@Override
public List linkedToRepos() {
return linkedToRepos;
}
@Override
public List systemIds() {
return systemIds;
}
@Override
public List licenses() {
return licenses;
}
@Override
public String vcsUrl() {
return vcsUrl;
}
@Override
public Object getFieldByKey(String key) {
return other.get(key);
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
PackageImpl aPackage = (PackageImpl) o;
if (!name.equals(aPackage.name)) return false;
return true;
}
@Override
public int hashCode() {
return name.hashCode();
}
@Override
public String toString() {
return "Package{" +
"getName='" + name + '\'' +
", repository='" + repository + '\'' +
", owner='" + owner + '\'' +
", description='" + description + '\'' +
", labels=" + labels +
", attributeNames=" + attributeNames +
", rating=" + rating +
", ratingCount=" + ratingCount +
", followersCount=" + followersCount +
", created=" + created +
", versions=" + versions +
", latestVersion='" + latestVersion + '\'' +
", updated=" + updated +
", linkedToRepos='" + linkedToRepos + '\'' +
", systemIds=" + systemIds +
'}';
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy