All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.github.algomaster99.terminator.commons.cyclonedx.Metadata Maven / Gradle / Ivy


package io.github.algomaster99.terminator.commons.cyclonedx;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.annotation.processing.Generated;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;


/**
 * BOM Metadata Object
 * 

* * */ @JsonInclude(JsonInclude.Include.NON_NULL) @JsonPropertyOrder({ "timestamp", "lifecycles", "tools", "authors", "component", "manufacture", "supplier", "licenses", "properties" }) @Generated("jsonschema2pojo") public class Metadata { /** * Timestamp *

* The date and time (timestamp) when the BOM was created. * */ @JsonProperty("timestamp") @JsonPropertyDescription("The date and time (timestamp) when the BOM was created.") private Date timestamp; /** * Lifecycles *

* * */ @JsonProperty("lifecycles") @JsonPropertyDescription("") private List lifecycles = new ArrayList(); @JsonProperty("tools") private Object tools; /** * Authors *

* The person(s) who created the BOM. Authors are common in BOMs created through manual processes. BOMs created through automated means may not have authors. * */ @JsonProperty("authors") @JsonPropertyDescription("The person(s) who created the BOM. Authors are common in BOMs created through manual processes. BOMs created through automated means may not have authors.") private List authors = new ArrayList(); /** * Component Object *

* * */ @JsonProperty("component") private Component component; /** * Organizational Entity Object *

* * */ @JsonProperty("manufacture") @JsonPropertyDescription("") private OrganizationalEntity manufacture; /** * Organizational Entity Object *

* * */ @JsonProperty("supplier") @JsonPropertyDescription("") private OrganizationalEntity supplier; /** * License Choice *

* EITHER (list of SPDX licenses and/or named licenses) OR (tuple of one SPDX License Expression) * */ @JsonProperty("licenses") @JsonPropertyDescription("EITHER (list of SPDX licenses and/or named licenses) OR (tuple of one SPDX License Expression)") private List licenses = new ArrayList(); /** * Properties *

* Provides the ability to document properties in a name-value store. This provides flexibility to include data not officially supported in the standard without having to use additional namespaces or create extensions. Unlike key-value stores, properties support duplicate names, each potentially having different values. Property names of interest to the general public are encouraged to be registered in the [CycloneDX Property Taxonomy](https://github.com/CycloneDX/cyclonedx-property-taxonomy). Formal registration is OPTIONAL. * */ @JsonProperty("properties") @JsonPropertyDescription("Provides the ability to document properties in a name-value store. This provides flexibility to include data not officially supported in the standard without having to use additional namespaces or create extensions. Unlike key-value stores, properties support duplicate names, each potentially having different values. Property names of interest to the general public are encouraged to be registered in the [CycloneDX Property Taxonomy](https://github.com/CycloneDX/cyclonedx-property-taxonomy). Formal registration is OPTIONAL.") private List properties = new ArrayList(); /** * Timestamp *

* The date and time (timestamp) when the BOM was created. * */ @JsonProperty("timestamp") public Date getTimestamp() { return timestamp; } /** * Timestamp *

* The date and time (timestamp) when the BOM was created. * */ @JsonProperty("timestamp") public void setTimestamp(Date timestamp) { this.timestamp = timestamp; } /** * Lifecycles *

* * */ @JsonProperty("lifecycles") public List getLifecycles() { return lifecycles; } /** * Lifecycles *

* * */ @JsonProperty("lifecycles") public void setLifecycles(List lifecycles) { this.lifecycles = lifecycles; } @JsonProperty("tools") public Object getTools() { return tools; } @JsonProperty("tools") public void setTools(Object tools) { this.tools = tools; } /** * Authors *

* The person(s) who created the BOM. Authors are common in BOMs created through manual processes. BOMs created through automated means may not have authors. * */ @JsonProperty("authors") public List getAuthors() { return authors; } /** * Authors *

* The person(s) who created the BOM. Authors are common in BOMs created through manual processes. BOMs created through automated means may not have authors. * */ @JsonProperty("authors") public void setAuthors(List authors) { this.authors = authors; } /** * Component Object *

* * */ @JsonProperty("component") public Component getComponent() { return component; } /** * Component Object *

* * */ @JsonProperty("component") public void setComponent(Component component) { this.component = component; } /** * Organizational Entity Object *

* * */ @JsonProperty("manufacture") public OrganizationalEntity getManufacture() { return manufacture; } /** * Organizational Entity Object *

* * */ @JsonProperty("manufacture") public void setManufacture(OrganizationalEntity manufacture) { this.manufacture = manufacture; } /** * Organizational Entity Object *

* * */ @JsonProperty("supplier") public OrganizationalEntity getSupplier() { return supplier; } /** * Organizational Entity Object *

* * */ @JsonProperty("supplier") public void setSupplier(OrganizationalEntity supplier) { this.supplier = supplier; } /** * License Choice *

* EITHER (list of SPDX licenses and/or named licenses) OR (tuple of one SPDX License Expression) * */ @JsonProperty("licenses") public List getLicenses() { return licenses; } /** * License Choice *

* EITHER (list of SPDX licenses and/or named licenses) OR (tuple of one SPDX License Expression) * */ @JsonProperty("licenses") public void setLicenses(List licenses) { this.licenses = licenses; } /** * Properties *

* Provides the ability to document properties in a name-value store. This provides flexibility to include data not officially supported in the standard without having to use additional namespaces or create extensions. Unlike key-value stores, properties support duplicate names, each potentially having different values. Property names of interest to the general public are encouraged to be registered in the [CycloneDX Property Taxonomy](https://github.com/CycloneDX/cyclonedx-property-taxonomy). Formal registration is OPTIONAL. * */ @JsonProperty("properties") public List getProperties() { return properties; } /** * Properties *

* Provides the ability to document properties in a name-value store. This provides flexibility to include data not officially supported in the standard without having to use additional namespaces or create extensions. Unlike key-value stores, properties support duplicate names, each potentially having different values. Property names of interest to the general public are encouraged to be registered in the [CycloneDX Property Taxonomy](https://github.com/CycloneDX/cyclonedx-property-taxonomy). Formal registration is OPTIONAL. * */ @JsonProperty("properties") public void setProperties(List properties) { this.properties = properties; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append(Metadata.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('['); sb.append("timestamp"); sb.append('='); sb.append(((this.timestamp == null)?"":this.timestamp)); sb.append(','); sb.append("lifecycles"); sb.append('='); sb.append(((this.lifecycles == null)?"":this.lifecycles)); sb.append(','); sb.append("tools"); sb.append('='); sb.append(((this.tools == null)?"":this.tools)); sb.append(','); sb.append("authors"); sb.append('='); sb.append(((this.authors == null)?"":this.authors)); sb.append(','); sb.append("component"); sb.append('='); sb.append(((this.component == null)?"":this.component)); sb.append(','); sb.append("manufacture"); sb.append('='); sb.append(((this.manufacture == null)?"":this.manufacture)); sb.append(','); sb.append("supplier"); sb.append('='); sb.append(((this.supplier == null)?"":this.supplier)); sb.append(','); sb.append("licenses"); sb.append('='); sb.append(((this.licenses == null)?"":this.licenses)); sb.append(','); sb.append("properties"); sb.append('='); sb.append(((this.properties == null)?"":this.properties)); sb.append(','); if (sb.charAt((sb.length()- 1)) == ',') { sb.setCharAt((sb.length()- 1), ']'); } else { sb.append(']'); } return sb.toString(); } @Override public int hashCode() { int result = 1; result = ((result* 31)+((this.manufacture == null)? 0 :this.manufacture.hashCode())); result = ((result* 31)+((this.component == null)? 0 :this.component.hashCode())); result = ((result* 31)+((this.licenses == null)? 0 :this.licenses.hashCode())); result = ((result* 31)+((this.supplier == null)? 0 :this.supplier.hashCode())); result = ((result* 31)+((this.lifecycles == null)? 0 :this.lifecycles.hashCode())); result = ((result* 31)+((this.tools == null)? 0 :this.tools.hashCode())); result = ((result* 31)+((this.properties == null)? 0 :this.properties.hashCode())); result = ((result* 31)+((this.timestamp == null)? 0 :this.timestamp.hashCode())); result = ((result* 31)+((this.authors == null)? 0 :this.authors.hashCode())); return result; } @Override public boolean equals(Object other) { if (other == this) { return true; } if ((other instanceof Metadata) == false) { return false; } Metadata rhs = ((Metadata) other); return ((((((((((this.manufacture == rhs.manufacture)||((this.manufacture!= null)&&this.manufacture.equals(rhs.manufacture)))&&((this.component == rhs.component)||((this.component!= null)&&this.component.equals(rhs.component))))&&((this.licenses == rhs.licenses)||((this.licenses!= null)&&this.licenses.equals(rhs.licenses))))&&((this.supplier == rhs.supplier)||((this.supplier!= null)&&this.supplier.equals(rhs.supplier))))&&((this.lifecycles == rhs.lifecycles)||((this.lifecycles!= null)&&this.lifecycles.equals(rhs.lifecycles))))&&((this.tools == rhs.tools)||((this.tools!= null)&&this.tools.equals(rhs.tools))))&&((this.properties == rhs.properties)||((this.properties!= null)&&this.properties.equals(rhs.properties))))&&((this.timestamp == rhs.timestamp)||((this.timestamp!= null)&&this.timestamp.equals(rhs.timestamp))))&&((this.authors == rhs.authors)||((this.authors!= null)&&this.authors.equals(rhs.authors)))); } }