/* * Copyright 2019 The Grafeas Authors. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // Generated by the protocol buffer compiler. DO NOT EDIT! // source: grafeas/v1/vulnerability.proto package io.grafeas.v1; /** * * *
 * A security vulnerability that can be found in resources.
 * 
* * Protobuf type {@code grafeas.v1.VulnerabilityNote} */ public final class VulnerabilityNote extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:grafeas.v1.VulnerabilityNote) VulnerabilityNoteOrBuilder { private static final long serialVersionUID = 0L; // Use VulnerabilityNote.newBuilder() to construct. private VulnerabilityNote(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private VulnerabilityNote() { severity_ = 0; details_ = java.util.Collections.emptyList(); windowsDetails_ = java.util.Collections.emptyList(); cvssVersion_ = 0; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new VulnerabilityNote(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability.internal_static_grafeas_v1_VulnerabilityNote_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.class, io.grafeas.v1.VulnerabilityNote.Builder.class); } public interface DetailOrBuilder extends // @@protoc_insertion_point(interface_extends:grafeas.v1.VulnerabilityNote.Detail) com.google.protobuf.MessageOrBuilder { /** * * *
     * The distro assigned severity of this vulnerability.
     * 
* * string severity_name = 1; * * @return The severityName. */ java.lang.String getSeverityName(); /** * * *
     * The distro assigned severity of this vulnerability.
     * 
* * string severity_name = 1; * * @return The bytes for severityName. */ com.google.protobuf.ByteString getSeverityNameBytes(); /** * * *
     * A vendor-specific description of this vulnerability.
     * 
* * string description = 2; * * @return The description. */ java.lang.String getDescription(); /** * * *
     * A vendor-specific description of this vulnerability.
     * 
* * string description = 2; * * @return The bytes for description. */ com.google.protobuf.ByteString getDescriptionBytes(); /** * * *
     * The type of package; whether native or non native (e.g., ruby gems,
     * node.js packages, etc.).
     * 
* * string package_type = 3; * * @return The packageType. */ java.lang.String getPackageType(); /** * * *
     * The type of package; whether native or non native (e.g., ruby gems,
     * node.js packages, etc.).
     * 
* * string package_type = 3; * * @return The bytes for packageType. */ com.google.protobuf.ByteString getPackageTypeBytes(); /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string affected_cpe_uri = 4; * * @return The affectedCpeUri. */ java.lang.String getAffectedCpeUri(); /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string affected_cpe_uri = 4; * * @return The bytes for affectedCpeUri. */ com.google.protobuf.ByteString getAffectedCpeUriBytes(); /** * * *
     * Required. The package this vulnerability affects.
     * 
* * string affected_package = 5; * * @return The affectedPackage. */ java.lang.String getAffectedPackage(); /** * * *
     * Required. The package this vulnerability affects.
     * 
* * string affected_package = 5; * * @return The bytes for affectedPackage. */ com.google.protobuf.ByteString getAffectedPackageBytes(); /** * * *
     * The version number at the start of an interval in which this
     * vulnerability exists. A vulnerability can affect a package between
     * version numbers that are disjoint sets of intervals (example:
     * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
     * represented in its own Detail. If a specific affected version is provided
     * by a vulnerability database, affected_version_start and
     * affected_version_end will be the same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_start = 6; * * @return Whether the affectedVersionStart field is set. */ boolean hasAffectedVersionStart(); /** * * *
     * The version number at the start of an interval in which this
     * vulnerability exists. A vulnerability can affect a package between
     * version numbers that are disjoint sets of intervals (example:
     * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
     * represented in its own Detail. If a specific affected version is provided
     * by a vulnerability database, affected_version_start and
     * affected_version_end will be the same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_start = 6; * * @return The affectedVersionStart. */ io.grafeas.v1.Version getAffectedVersionStart(); /** * * *
     * The version number at the start of an interval in which this
     * vulnerability exists. A vulnerability can affect a package between
     * version numbers that are disjoint sets of intervals (example:
     * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
     * represented in its own Detail. If a specific affected version is provided
     * by a vulnerability database, affected_version_start and
     * affected_version_end will be the same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_start = 6; */ io.grafeas.v1.VersionOrBuilder getAffectedVersionStartOrBuilder(); /** * * *
     * The version number at the end of an interval in which this vulnerability
     * exists. A vulnerability can affect a package between version numbers
     * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
     * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
     * own Detail. If a specific affected version is provided by a vulnerability
     * database, affected_version_start and affected_version_end will be the
     * same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_end = 7; * * @return Whether the affectedVersionEnd field is set. */ boolean hasAffectedVersionEnd(); /** * * *
     * The version number at the end of an interval in which this vulnerability
     * exists. A vulnerability can affect a package between version numbers
     * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
     * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
     * own Detail. If a specific affected version is provided by a vulnerability
     * database, affected_version_start and affected_version_end will be the
     * same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_end = 7; * * @return The affectedVersionEnd. */ io.grafeas.v1.Version getAffectedVersionEnd(); /** * * *
     * The version number at the end of an interval in which this vulnerability
     * exists. A vulnerability can affect a package between version numbers
     * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
     * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
     * own Detail. If a specific affected version is provided by a vulnerability
     * database, affected_version_start and affected_version_end will be the
     * same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_end = 7; */ io.grafeas.v1.VersionOrBuilder getAffectedVersionEndOrBuilder(); /** * * *
     * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
     * to update to that contains a fix for this vulnerability. It is possible
     * for this to be different from the affected_cpe_uri.
     * 
* * string fixed_cpe_uri = 8; * * @return The fixedCpeUri. */ java.lang.String getFixedCpeUri(); /** * * *
     * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
     * to update to that contains a fix for this vulnerability. It is possible
     * for this to be different from the affected_cpe_uri.
     * 
* * string fixed_cpe_uri = 8; * * @return The bytes for fixedCpeUri. */ com.google.protobuf.ByteString getFixedCpeUriBytes(); /** * * *
     * The distro recommended package to update to that contains a fix for this
     * vulnerability. It is possible for this to be different from the
     * affected_package.
     * 
* * string fixed_package = 9; * * @return The fixedPackage. */ java.lang.String getFixedPackage(); /** * * *
     * The distro recommended package to update to that contains a fix for this
     * vulnerability. It is possible for this to be different from the
     * affected_package.
     * 
* * string fixed_package = 9; * * @return The bytes for fixedPackage. */ com.google.protobuf.ByteString getFixedPackageBytes(); /** * * *
     * The distro recommended version to update to that contains a
     * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
     * such version is yet available.
     * 
* * .grafeas.v1.Version fixed_version = 10; * * @return Whether the fixedVersion field is set. */ boolean hasFixedVersion(); /** * * *
     * The distro recommended version to update to that contains a
     * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
     * such version is yet available.
     * 
* * .grafeas.v1.Version fixed_version = 10; * * @return The fixedVersion. */ io.grafeas.v1.Version getFixedVersion(); /** * * *
     * The distro recommended version to update to that contains a
     * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
     * such version is yet available.
     * 
* * .grafeas.v1.Version fixed_version = 10; */ io.grafeas.v1.VersionOrBuilder getFixedVersionOrBuilder(); /** * * *
     * Whether this detail is obsolete. Occurrences are expected not to point to
     * obsolete details.
     * 
* * bool is_obsolete = 11; * * @return The isObsolete. */ boolean getIsObsolete(); /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 12; * * @return Whether the sourceUpdateTime field is set. */ boolean hasSourceUpdateTime(); /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 12; * * @return The sourceUpdateTime. */ com.google.protobuf.Timestamp getSourceUpdateTime(); /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 12; */ com.google.protobuf.TimestampOrBuilder getSourceUpdateTimeOrBuilder(); /** * * *
     * The source from which the information in this Detail was obtained.
     * 
* * string source = 13; * * @return The source. */ java.lang.String getSource(); /** * * *
     * The source from which the information in this Detail was obtained.
     * 
* * string source = 13; * * @return The bytes for source. */ com.google.protobuf.ByteString getSourceBytes(); /** * * *
     * The name of the vendor of the product.
     * 
* * string vendor = 14; * * @return The vendor. */ java.lang.String getVendor(); /** * * *
     * The name of the vendor of the product.
     * 
* * string vendor = 14; * * @return The bytes for vendor. */ com.google.protobuf.ByteString getVendorBytes(); } /** * * *
   * A detail for a distro and package affected by this vulnerability and its
   * associated fix (if one is available).
   * 
* * Protobuf type {@code grafeas.v1.VulnerabilityNote.Detail} */ public static final class Detail extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:grafeas.v1.VulnerabilityNote.Detail) DetailOrBuilder { private static final long serialVersionUID = 0L; // Use Detail.newBuilder() to construct. private Detail(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private Detail() { severityName_ = ""; description_ = ""; packageType_ = ""; affectedCpeUri_ = ""; affectedPackage_ = ""; fixedCpeUri_ = ""; fixedPackage_ = ""; source_ = ""; vendor_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new Detail(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_Detail_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_Detail_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.Detail.class, io.grafeas.v1.VulnerabilityNote.Detail.Builder.class); } public static final int SEVERITY_NAME_FIELD_NUMBER = 1; @SuppressWarnings("serial") private volatile java.lang.Object severityName_ = ""; /** * * *
     * The distro assigned severity of this vulnerability.
     * 
* * string severity_name = 1; * * @return The severityName. */ @java.lang.Override public java.lang.String getSeverityName() { java.lang.Object ref = severityName_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); severityName_ = s; return s; } } /** * * *
     * The distro assigned severity of this vulnerability.
     * 
* * string severity_name = 1; * * @return The bytes for severityName. */ @java.lang.Override public com.google.protobuf.ByteString getSeverityNameBytes() { java.lang.Object ref = severityName_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); severityName_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int DESCRIPTION_FIELD_NUMBER = 2; @SuppressWarnings("serial") private volatile java.lang.Object description_ = ""; /** * * *
     * A vendor-specific description of this vulnerability.
     * 
* * string description = 2; * * @return The description. */ @java.lang.Override public java.lang.String getDescription() { java.lang.Object ref = description_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); description_ = s; return s; } } /** * * *
     * A vendor-specific description of this vulnerability.
     * 
* * string description = 2; * * @return The bytes for description. */ @java.lang.Override public com.google.protobuf.ByteString getDescriptionBytes() { java.lang.Object ref = description_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); description_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int PACKAGE_TYPE_FIELD_NUMBER = 3; @SuppressWarnings("serial") private volatile java.lang.Object packageType_ = ""; /** * * *
     * The type of package; whether native or non native (e.g., ruby gems,
     * node.js packages, etc.).
     * 
* * string package_type = 3; * * @return The packageType. */ @java.lang.Override public java.lang.String getPackageType() { java.lang.Object ref = packageType_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); packageType_ = s; return s; } } /** * * *
     * The type of package; whether native or non native (e.g., ruby gems,
     * node.js packages, etc.).
     * 
* * string package_type = 3; * * @return The bytes for packageType. */ @java.lang.Override public com.google.protobuf.ByteString getPackageTypeBytes() { java.lang.Object ref = packageType_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); packageType_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int AFFECTED_CPE_URI_FIELD_NUMBER = 4; @SuppressWarnings("serial") private volatile java.lang.Object affectedCpeUri_ = ""; /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string affected_cpe_uri = 4; * * @return The affectedCpeUri. */ @java.lang.Override public java.lang.String getAffectedCpeUri() { java.lang.Object ref = affectedCpeUri_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); affectedCpeUri_ = s; return s; } } /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string affected_cpe_uri = 4; * * @return The bytes for affectedCpeUri. */ @java.lang.Override public com.google.protobuf.ByteString getAffectedCpeUriBytes() { java.lang.Object ref = affectedCpeUri_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); affectedCpeUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int AFFECTED_PACKAGE_FIELD_NUMBER = 5; @SuppressWarnings("serial") private volatile java.lang.Object affectedPackage_ = ""; /** * * *
     * Required. The package this vulnerability affects.
     * 
* * string affected_package = 5; * * @return The affectedPackage. */ @java.lang.Override public java.lang.String getAffectedPackage() { java.lang.Object ref = affectedPackage_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); affectedPackage_ = s; return s; } } /** * * *
     * Required. The package this vulnerability affects.
     * 
* * string affected_package = 5; * * @return The bytes for affectedPackage. */ @java.lang.Override public com.google.protobuf.ByteString getAffectedPackageBytes() { java.lang.Object ref = affectedPackage_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); affectedPackage_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int AFFECTED_VERSION_START_FIELD_NUMBER = 6; private io.grafeas.v1.Version affectedVersionStart_; /** * * *
     * The version number at the start of an interval in which this
     * vulnerability exists. A vulnerability can affect a package between
     * version numbers that are disjoint sets of intervals (example:
     * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
     * represented in its own Detail. If a specific affected version is provided
     * by a vulnerability database, affected_version_start and
     * affected_version_end will be the same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_start = 6; * * @return Whether the affectedVersionStart field is set. */ @java.lang.Override public boolean hasAffectedVersionStart() { return affectedVersionStart_ != null; } /** * * *
     * The version number at the start of an interval in which this
     * vulnerability exists. A vulnerability can affect a package between
     * version numbers that are disjoint sets of intervals (example:
     * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
     * represented in its own Detail. If a specific affected version is provided
     * by a vulnerability database, affected_version_start and
     * affected_version_end will be the same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_start = 6; * * @return The affectedVersionStart. */ @java.lang.Override public io.grafeas.v1.Version getAffectedVersionStart() { return affectedVersionStart_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionStart_; } /** * * *
     * The version number at the start of an interval in which this
     * vulnerability exists. A vulnerability can affect a package between
     * version numbers that are disjoint sets of intervals (example:
     * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
     * represented in its own Detail. If a specific affected version is provided
     * by a vulnerability database, affected_version_start and
     * affected_version_end will be the same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_start = 6; */ @java.lang.Override public io.grafeas.v1.VersionOrBuilder getAffectedVersionStartOrBuilder() { return affectedVersionStart_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionStart_; } public static final int AFFECTED_VERSION_END_FIELD_NUMBER = 7; private io.grafeas.v1.Version affectedVersionEnd_; /** * * *
     * The version number at the end of an interval in which this vulnerability
     * exists. A vulnerability can affect a package between version numbers
     * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
     * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
     * own Detail. If a specific affected version is provided by a vulnerability
     * database, affected_version_start and affected_version_end will be the
     * same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_end = 7; * * @return Whether the affectedVersionEnd field is set. */ @java.lang.Override public boolean hasAffectedVersionEnd() { return affectedVersionEnd_ != null; } /** * * *
     * The version number at the end of an interval in which this vulnerability
     * exists. A vulnerability can affect a package between version numbers
     * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
     * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
     * own Detail. If a specific affected version is provided by a vulnerability
     * database, affected_version_start and affected_version_end will be the
     * same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_end = 7; * * @return The affectedVersionEnd. */ @java.lang.Override public io.grafeas.v1.Version getAffectedVersionEnd() { return affectedVersionEnd_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionEnd_; } /** * * *
     * The version number at the end of an interval in which this vulnerability
     * exists. A vulnerability can affect a package between version numbers
     * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
     * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
     * own Detail. If a specific affected version is provided by a vulnerability
     * database, affected_version_start and affected_version_end will be the
     * same in that Detail.
     * 
* * .grafeas.v1.Version affected_version_end = 7; */ @java.lang.Override public io.grafeas.v1.VersionOrBuilder getAffectedVersionEndOrBuilder() { return affectedVersionEnd_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionEnd_; } public static final int FIXED_CPE_URI_FIELD_NUMBER = 8; @SuppressWarnings("serial") private volatile java.lang.Object fixedCpeUri_ = ""; /** * * *
     * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
     * to update to that contains a fix for this vulnerability. It is possible
     * for this to be different from the affected_cpe_uri.
     * 
* * string fixed_cpe_uri = 8; * * @return The fixedCpeUri. */ @java.lang.Override public java.lang.String getFixedCpeUri() { java.lang.Object ref = fixedCpeUri_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); fixedCpeUri_ = s; return s; } } /** * * *
     * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
     * to update to that contains a fix for this vulnerability. It is possible
     * for this to be different from the affected_cpe_uri.
     * 
* * string fixed_cpe_uri = 8; * * @return The bytes for fixedCpeUri. */ @java.lang.Override public com.google.protobuf.ByteString getFixedCpeUriBytes() { java.lang.Object ref = fixedCpeUri_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); fixedCpeUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int FIXED_PACKAGE_FIELD_NUMBER = 9; @SuppressWarnings("serial") private volatile java.lang.Object fixedPackage_ = ""; /** * * *
     * The distro recommended package to update to that contains a fix for this
     * vulnerability. It is possible for this to be different from the
     * affected_package.
     * 
* * string fixed_package = 9; * * @return The fixedPackage. */ @java.lang.Override public java.lang.String getFixedPackage() { java.lang.Object ref = fixedPackage_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); fixedPackage_ = s; return s; } } /** * * *
     * The distro recommended package to update to that contains a fix for this
     * vulnerability. It is possible for this to be different from the
     * affected_package.
     * 
* * string fixed_package = 9; * * @return The bytes for fixedPackage. */ @java.lang.Override public com.google.protobuf.ByteString getFixedPackageBytes() { java.lang.Object ref = fixedPackage_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); fixedPackage_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int FIXED_VERSION_FIELD_NUMBER = 10; private io.grafeas.v1.Version fixedVersion_; /** * * *
     * The distro recommended version to update to that contains a
     * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
     * such version is yet available.
     * 
* * .grafeas.v1.Version fixed_version = 10; * * @return Whether the fixedVersion field is set. */ @java.lang.Override public boolean hasFixedVersion() { return fixedVersion_ != null; } /** * * *
     * The distro recommended version to update to that contains a
     * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
     * such version is yet available.
     * 
* * .grafeas.v1.Version fixed_version = 10; * * @return The fixedVersion. */ @java.lang.Override public io.grafeas.v1.Version getFixedVersion() { return fixedVersion_ == null ? io.grafeas.v1.Version.getDefaultInstance() : fixedVersion_; } /** * * *
     * The distro recommended version to update to that contains a
     * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
     * such version is yet available.
     * 
* * .grafeas.v1.Version fixed_version = 10; */ @java.lang.Override public io.grafeas.v1.VersionOrBuilder getFixedVersionOrBuilder() { return fixedVersion_ == null ? io.grafeas.v1.Version.getDefaultInstance() : fixedVersion_; } public static final int IS_OBSOLETE_FIELD_NUMBER = 11; private boolean isObsolete_ = false; /** * * *
     * Whether this detail is obsolete. Occurrences are expected not to point to
     * obsolete details.
     * 
* * bool is_obsolete = 11; * * @return The isObsolete. */ @java.lang.Override public boolean getIsObsolete() { return isObsolete_; } public static final int SOURCE_UPDATE_TIME_FIELD_NUMBER = 12; private com.google.protobuf.Timestamp sourceUpdateTime_; /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 12; * * @return Whether the sourceUpdateTime field is set. */ @java.lang.Override public boolean hasSourceUpdateTime() { return sourceUpdateTime_ != null; } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 12; * * @return The sourceUpdateTime. */ @java.lang.Override public com.google.protobuf.Timestamp getSourceUpdateTime() { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 12; */ @java.lang.Override public com.google.protobuf.TimestampOrBuilder getSourceUpdateTimeOrBuilder() { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } public static final int SOURCE_FIELD_NUMBER = 13; @SuppressWarnings("serial") private volatile java.lang.Object source_ = ""; /** * * *
     * The source from which the information in this Detail was obtained.
     * 
* * string source = 13; * * @return The source. */ @java.lang.Override public java.lang.String getSource() { java.lang.Object ref = source_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); source_ = s; return s; } } /** * * *
     * The source from which the information in this Detail was obtained.
     * 
* * string source = 13; * * @return The bytes for source. */ @java.lang.Override public com.google.protobuf.ByteString getSourceBytes() { java.lang.Object ref = source_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); source_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int VENDOR_FIELD_NUMBER = 14; @SuppressWarnings("serial") private volatile java.lang.Object vendor_ = ""; /** * * *
     * The name of the vendor of the product.
     * 
* * string vendor = 14; * * @return The vendor. */ @java.lang.Override public java.lang.String getVendor() { java.lang.Object ref = vendor_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); vendor_ = s; return s; } } /** * * *
     * The name of the vendor of the product.
     * 
* * string vendor = 14; * * @return The bytes for vendor. */ @java.lang.Override public com.google.protobuf.ByteString getVendorBytes() { java.lang.Object ref = vendor_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); vendor_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(severityName_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, severityName_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, description_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(packageType_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, packageType_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(affectedCpeUri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 4, affectedCpeUri_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(affectedPackage_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 5, affectedPackage_); } if (affectedVersionStart_ != null) { output.writeMessage(6, getAffectedVersionStart()); } if (affectedVersionEnd_ != null) { output.writeMessage(7, getAffectedVersionEnd()); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fixedCpeUri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 8, fixedCpeUri_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fixedPackage_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 9, fixedPackage_); } if (fixedVersion_ != null) { output.writeMessage(10, getFixedVersion()); } if (isObsolete_ != false) { output.writeBool(11, isObsolete_); } if (sourceUpdateTime_ != null) { output.writeMessage(12, getSourceUpdateTime()); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(source_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 13, source_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(vendor_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 14, vendor_); } getUnknownFields().writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(severityName_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, severityName_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, description_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(packageType_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, packageType_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(affectedCpeUri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, affectedCpeUri_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(affectedPackage_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, affectedPackage_); } if (affectedVersionStart_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getAffectedVersionStart()); } if (affectedVersionEnd_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(7, getAffectedVersionEnd()); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fixedCpeUri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, fixedCpeUri_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(fixedPackage_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, fixedPackage_); } if (fixedVersion_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(10, getFixedVersion()); } if (isObsolete_ != false) { size += com.google.protobuf.CodedOutputStream.computeBoolSize(11, isObsolete_); } if (sourceUpdateTime_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getSourceUpdateTime()); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(source_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, source_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(vendor_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, vendor_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof io.grafeas.v1.VulnerabilityNote.Detail)) { return super.equals(obj); } io.grafeas.v1.VulnerabilityNote.Detail other = (io.grafeas.v1.VulnerabilityNote.Detail) obj; if (!getSeverityName().equals(other.getSeverityName())) return false; if (!getDescription().equals(other.getDescription())) return false; if (!getPackageType().equals(other.getPackageType())) return false; if (!getAffectedCpeUri().equals(other.getAffectedCpeUri())) return false; if (!getAffectedPackage().equals(other.getAffectedPackage())) return false; if (hasAffectedVersionStart() != other.hasAffectedVersionStart()) return false; if (hasAffectedVersionStart()) { if (!getAffectedVersionStart().equals(other.getAffectedVersionStart())) return false; } if (hasAffectedVersionEnd() != other.hasAffectedVersionEnd()) return false; if (hasAffectedVersionEnd()) { if (!getAffectedVersionEnd().equals(other.getAffectedVersionEnd())) return false; } if (!getFixedCpeUri().equals(other.getFixedCpeUri())) return false; if (!getFixedPackage().equals(other.getFixedPackage())) return false; if (hasFixedVersion() != other.hasFixedVersion()) return false; if (hasFixedVersion()) { if (!getFixedVersion().equals(other.getFixedVersion())) return false; } if (getIsObsolete() != other.getIsObsolete()) return false; if (hasSourceUpdateTime() != other.hasSourceUpdateTime()) return false; if (hasSourceUpdateTime()) { if (!getSourceUpdateTime().equals(other.getSourceUpdateTime())) return false; } if (!getSource().equals(other.getSource())) return false; if (!getVendor().equals(other.getVendor())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + SEVERITY_NAME_FIELD_NUMBER; hash = (53 * hash) + getSeverityName().hashCode(); hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER; hash = (53 * hash) + getDescription().hashCode(); hash = (37 * hash) + PACKAGE_TYPE_FIELD_NUMBER; hash = (53 * hash) + getPackageType().hashCode(); hash = (37 * hash) + AFFECTED_CPE_URI_FIELD_NUMBER; hash = (53 * hash) + getAffectedCpeUri().hashCode(); hash = (37 * hash) + AFFECTED_PACKAGE_FIELD_NUMBER; hash = (53 * hash) + getAffectedPackage().hashCode(); if (hasAffectedVersionStart()) { hash = (37 * hash) + AFFECTED_VERSION_START_FIELD_NUMBER; hash = (53 * hash) + getAffectedVersionStart().hashCode(); } if (hasAffectedVersionEnd()) { hash = (37 * hash) + AFFECTED_VERSION_END_FIELD_NUMBER; hash = (53 * hash) + getAffectedVersionEnd().hashCode(); } hash = (37 * hash) + FIXED_CPE_URI_FIELD_NUMBER; hash = (53 * hash) + getFixedCpeUri().hashCode(); hash = (37 * hash) + FIXED_PACKAGE_FIELD_NUMBER; hash = (53 * hash) + getFixedPackage().hashCode(); if (hasFixedVersion()) { hash = (37 * hash) + FIXED_VERSION_FIELD_NUMBER; hash = (53 * hash) + getFixedVersion().hashCode(); } hash = (37 * hash) + IS_OBSOLETE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getIsObsolete()); if (hasSourceUpdateTime()) { hash = (37 * hash) + SOURCE_UPDATE_TIME_FIELD_NUMBER; hash = (53 * hash) + getSourceUpdateTime().hashCode(); } hash = (37 * hash) + SOURCE_FIELD_NUMBER; hash = (53 * hash) + getSource().hashCode(); hash = (37 * hash) + VENDOR_FIELD_NUMBER; hash = (53 * hash) + getVendor().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.Detail parseDelimitedFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.Detail parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.Detail parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(io.grafeas.v1.VulnerabilityNote.Detail prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * * *
     * A detail for a distro and package affected by this vulnerability and its
     * associated fix (if one is available).
     * 
* * Protobuf type {@code grafeas.v1.VulnerabilityNote.Detail} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:grafeas.v1.VulnerabilityNote.Detail) io.grafeas.v1.VulnerabilityNote.DetailOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_Detail_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_Detail_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.Detail.class, io.grafeas.v1.VulnerabilityNote.Detail.Builder.class); } // Construct using io.grafeas.v1.VulnerabilityNote.Detail.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; severityName_ = ""; description_ = ""; packageType_ = ""; affectedCpeUri_ = ""; affectedPackage_ = ""; affectedVersionStart_ = null; if (affectedVersionStartBuilder_ != null) { affectedVersionStartBuilder_.dispose(); affectedVersionStartBuilder_ = null; } affectedVersionEnd_ = null; if (affectedVersionEndBuilder_ != null) { affectedVersionEndBuilder_.dispose(); affectedVersionEndBuilder_ = null; } fixedCpeUri_ = ""; fixedPackage_ = ""; fixedVersion_ = null; if (fixedVersionBuilder_ != null) { fixedVersionBuilder_.dispose(); fixedVersionBuilder_ = null; } isObsolete_ = false; sourceUpdateTime_ = null; if (sourceUpdateTimeBuilder_ != null) { sourceUpdateTimeBuilder_.dispose(); sourceUpdateTimeBuilder_ = null; } source_ = ""; vendor_ = ""; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_Detail_descriptor; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.Detail getDefaultInstanceForType() { return io.grafeas.v1.VulnerabilityNote.Detail.getDefaultInstance(); } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.Detail build() { io.grafeas.v1.VulnerabilityNote.Detail result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.Detail buildPartial() { io.grafeas.v1.VulnerabilityNote.Detail result = new io.grafeas.v1.VulnerabilityNote.Detail(this); if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } private void buildPartial0(io.grafeas.v1.VulnerabilityNote.Detail result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.severityName_ = severityName_; } if (((from_bitField0_ & 0x00000002) != 0)) { result.description_ = description_; } if (((from_bitField0_ & 0x00000004) != 0)) { result.packageType_ = packageType_; } if (((from_bitField0_ & 0x00000008) != 0)) { result.affectedCpeUri_ = affectedCpeUri_; } if (((from_bitField0_ & 0x00000010) != 0)) { result.affectedPackage_ = affectedPackage_; } if (((from_bitField0_ & 0x00000020) != 0)) { result.affectedVersionStart_ = affectedVersionStartBuilder_ == null ? affectedVersionStart_ : affectedVersionStartBuilder_.build(); } if (((from_bitField0_ & 0x00000040) != 0)) { result.affectedVersionEnd_ = affectedVersionEndBuilder_ == null ? affectedVersionEnd_ : affectedVersionEndBuilder_.build(); } if (((from_bitField0_ & 0x00000080) != 0)) { result.fixedCpeUri_ = fixedCpeUri_; } if (((from_bitField0_ & 0x00000100) != 0)) { result.fixedPackage_ = fixedPackage_; } if (((from_bitField0_ & 0x00000200) != 0)) { result.fixedVersion_ = fixedVersionBuilder_ == null ? fixedVersion_ : fixedVersionBuilder_.build(); } if (((from_bitField0_ & 0x00000400) != 0)) { result.isObsolete_ = isObsolete_; } if (((from_bitField0_ & 0x00000800) != 0)) { result.sourceUpdateTime_ = sourceUpdateTimeBuilder_ == null ? sourceUpdateTime_ : sourceUpdateTimeBuilder_.build(); } if (((from_bitField0_ & 0x00001000) != 0)) { result.source_ = source_; } if (((from_bitField0_ & 0x00002000) != 0)) { result.vendor_ = vendor_; } } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof io.grafeas.v1.VulnerabilityNote.Detail) { return mergeFrom((io.grafeas.v1.VulnerabilityNote.Detail) other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(io.grafeas.v1.VulnerabilityNote.Detail other) { if (other == io.grafeas.v1.VulnerabilityNote.Detail.getDefaultInstance()) return this; if (!other.getSeverityName().isEmpty()) { severityName_ = other.severityName_; bitField0_ |= 0x00000001; onChanged(); } if (!other.getDescription().isEmpty()) { description_ = other.description_; bitField0_ |= 0x00000002; onChanged(); } if (!other.getPackageType().isEmpty()) { packageType_ = other.packageType_; bitField0_ |= 0x00000004; onChanged(); } if (!other.getAffectedCpeUri().isEmpty()) { affectedCpeUri_ = other.affectedCpeUri_; bitField0_ |= 0x00000008; onChanged(); } if (!other.getAffectedPackage().isEmpty()) { affectedPackage_ = other.affectedPackage_; bitField0_ |= 0x00000010; onChanged(); } if (other.hasAffectedVersionStart()) { mergeAffectedVersionStart(other.getAffectedVersionStart()); } if (other.hasAffectedVersionEnd()) { mergeAffectedVersionEnd(other.getAffectedVersionEnd()); } if (!other.getFixedCpeUri().isEmpty()) { fixedCpeUri_ = other.fixedCpeUri_; bitField0_ |= 0x00000080; onChanged(); } if (!other.getFixedPackage().isEmpty()) { fixedPackage_ = other.fixedPackage_; bitField0_ |= 0x00000100; onChanged(); } if (other.hasFixedVersion()) { mergeFixedVersion(other.getFixedVersion()); } if (other.getIsObsolete() != false) { setIsObsolete(other.getIsObsolete()); } if (other.hasSourceUpdateTime()) { mergeSourceUpdateTime(other.getSourceUpdateTime()); } if (!other.getSource().isEmpty()) { source_ = other.source_; bitField0_ |= 0x00001000; onChanged(); } if (!other.getVendor().isEmpty()) { vendor_ = other.vendor_; bitField0_ |= 0x00002000; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { severityName_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; } // case 10 case 18: { description_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000002; break; } // case 18 case 26: { packageType_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000004; break; } // case 26 case 34: { affectedCpeUri_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000008; break; } // case 34 case 42: { affectedPackage_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000010; break; } // case 42 case 50: { input.readMessage( getAffectedVersionStartFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000020; break; } // case 50 case 58: { input.readMessage( getAffectedVersionEndFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000040; break; } // case 58 case 66: { fixedCpeUri_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000080; break; } // case 66 case 74: { fixedPackage_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000100; break; } // case 74 case 82: { input.readMessage(getFixedVersionFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000200; break; } // case 82 case 88: { isObsolete_ = input.readBool(); bitField0_ |= 0x00000400; break; } // case 88 case 98: { input.readMessage( getSourceUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000800; break; } // case 98 case 106: { source_ = input.readStringRequireUtf8(); bitField0_ |= 0x00001000; break; } // case 106 case 114: { vendor_ = input.readStringRequireUtf8(); bitField0_ |= 0x00002000; break; } // case 114 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag } break; } // default: } // switch (tag) } // while (!done) } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.unwrapIOException(); } finally { onChanged(); } // finally return this; } private int bitField0_; private java.lang.Object severityName_ = ""; /** * * *
       * The distro assigned severity of this vulnerability.
       * 
* * string severity_name = 1; * * @return The severityName. */ public java.lang.String getSeverityName() { java.lang.Object ref = severityName_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); severityName_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The distro assigned severity of this vulnerability.
       * 
* * string severity_name = 1; * * @return The bytes for severityName. */ public com.google.protobuf.ByteString getSeverityNameBytes() { java.lang.Object ref = severityName_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); severityName_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The distro assigned severity of this vulnerability.
       * 
* * string severity_name = 1; * * @param value The severityName to set. * @return This builder for chaining. */ public Builder setSeverityName(java.lang.String value) { if (value == null) { throw new NullPointerException(); } severityName_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } /** * * *
       * The distro assigned severity of this vulnerability.
       * 
* * string severity_name = 1; * * @return This builder for chaining. */ public Builder clearSeverityName() { severityName_ = getDefaultInstance().getSeverityName(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** * * *
       * The distro assigned severity of this vulnerability.
       * 
* * string severity_name = 1; * * @param value The bytes for severityName to set. * @return This builder for chaining. */ public Builder setSeverityNameBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); severityName_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } private java.lang.Object description_ = ""; /** * * *
       * A vendor-specific description of this vulnerability.
       * 
* * string description = 2; * * @return The description. */ public java.lang.String getDescription() { java.lang.Object ref = description_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); description_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * A vendor-specific description of this vulnerability.
       * 
* * string description = 2; * * @return The bytes for description. */ public com.google.protobuf.ByteString getDescriptionBytes() { java.lang.Object ref = description_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); description_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * A vendor-specific description of this vulnerability.
       * 
* * string description = 2; * * @param value The description to set. * @return This builder for chaining. */ public Builder setDescription(java.lang.String value) { if (value == null) { throw new NullPointerException(); } description_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } /** * * *
       * A vendor-specific description of this vulnerability.
       * 
* * string description = 2; * * @return This builder for chaining. */ public Builder clearDescription() { description_ = getDefaultInstance().getDescription(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** * * *
       * A vendor-specific description of this vulnerability.
       * 
* * string description = 2; * * @param value The bytes for description to set. * @return This builder for chaining. */ public Builder setDescriptionBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); description_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } private java.lang.Object packageType_ = ""; /** * * *
       * The type of package; whether native or non native (e.g., ruby gems,
       * node.js packages, etc.).
       * 
* * string package_type = 3; * * @return The packageType. */ public java.lang.String getPackageType() { java.lang.Object ref = packageType_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); packageType_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The type of package; whether native or non native (e.g., ruby gems,
       * node.js packages, etc.).
       * 
* * string package_type = 3; * * @return The bytes for packageType. */ public com.google.protobuf.ByteString getPackageTypeBytes() { java.lang.Object ref = packageType_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); packageType_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The type of package; whether native or non native (e.g., ruby gems,
       * node.js packages, etc.).
       * 
* * string package_type = 3; * * @param value The packageType to set. * @return This builder for chaining. */ public Builder setPackageType(java.lang.String value) { if (value == null) { throw new NullPointerException(); } packageType_ = value; bitField0_ |= 0x00000004; onChanged(); return this; } /** * * *
       * The type of package; whether native or non native (e.g., ruby gems,
       * node.js packages, etc.).
       * 
* * string package_type = 3; * * @return This builder for chaining. */ public Builder clearPackageType() { packageType_ = getDefaultInstance().getPackageType(); bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** * * *
       * The type of package; whether native or non native (e.g., ruby gems,
       * node.js packages, etc.).
       * 
* * string package_type = 3; * * @param value The bytes for packageType to set. * @return This builder for chaining. */ public Builder setPackageTypeBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); packageType_ = value; bitField0_ |= 0x00000004; onChanged(); return this; } private java.lang.Object affectedCpeUri_ = ""; /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string affected_cpe_uri = 4; * * @return The affectedCpeUri. */ public java.lang.String getAffectedCpeUri() { java.lang.Object ref = affectedCpeUri_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); affectedCpeUri_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string affected_cpe_uri = 4; * * @return The bytes for affectedCpeUri. */ public com.google.protobuf.ByteString getAffectedCpeUriBytes() { java.lang.Object ref = affectedCpeUri_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); affectedCpeUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string affected_cpe_uri = 4; * * @param value The affectedCpeUri to set. * @return This builder for chaining. */ public Builder setAffectedCpeUri(java.lang.String value) { if (value == null) { throw new NullPointerException(); } affectedCpeUri_ = value; bitField0_ |= 0x00000008; onChanged(); return this; } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string affected_cpe_uri = 4; * * @return This builder for chaining. */ public Builder clearAffectedCpeUri() { affectedCpeUri_ = getDefaultInstance().getAffectedCpeUri(); bitField0_ = (bitField0_ & ~0x00000008); onChanged(); return this; } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string affected_cpe_uri = 4; * * @param value The bytes for affectedCpeUri to set. * @return This builder for chaining. */ public Builder setAffectedCpeUriBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); affectedCpeUri_ = value; bitField0_ |= 0x00000008; onChanged(); return this; } private java.lang.Object affectedPackage_ = ""; /** * * *
       * Required. The package this vulnerability affects.
       * 
* * string affected_package = 5; * * @return The affectedPackage. */ public java.lang.String getAffectedPackage() { java.lang.Object ref = affectedPackage_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); affectedPackage_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * Required. The package this vulnerability affects.
       * 
* * string affected_package = 5; * * @return The bytes for affectedPackage. */ public com.google.protobuf.ByteString getAffectedPackageBytes() { java.lang.Object ref = affectedPackage_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); affectedPackage_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * Required. The package this vulnerability affects.
       * 
* * string affected_package = 5; * * @param value The affectedPackage to set. * @return This builder for chaining. */ public Builder setAffectedPackage(java.lang.String value) { if (value == null) { throw new NullPointerException(); } affectedPackage_ = value; bitField0_ |= 0x00000010; onChanged(); return this; } /** * * *
       * Required. The package this vulnerability affects.
       * 
* * string affected_package = 5; * * @return This builder for chaining. */ public Builder clearAffectedPackage() { affectedPackage_ = getDefaultInstance().getAffectedPackage(); bitField0_ = (bitField0_ & ~0x00000010); onChanged(); return this; } /** * * *
       * Required. The package this vulnerability affects.
       * 
* * string affected_package = 5; * * @param value The bytes for affectedPackage to set. * @return This builder for chaining. */ public Builder setAffectedPackageBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); affectedPackage_ = value; bitField0_ |= 0x00000010; onChanged(); return this; } private io.grafeas.v1.Version affectedVersionStart_; private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder> affectedVersionStartBuilder_; /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; * * @return Whether the affectedVersionStart field is set. */ public boolean hasAffectedVersionStart() { return ((bitField0_ & 0x00000020) != 0); } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; * * @return The affectedVersionStart. */ public io.grafeas.v1.Version getAffectedVersionStart() { if (affectedVersionStartBuilder_ == null) { return affectedVersionStart_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionStart_; } else { return affectedVersionStartBuilder_.getMessage(); } } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ public Builder setAffectedVersionStart(io.grafeas.v1.Version value) { if (affectedVersionStartBuilder_ == null) { if (value == null) { throw new NullPointerException(); } affectedVersionStart_ = value; } else { affectedVersionStartBuilder_.setMessage(value); } bitField0_ |= 0x00000020; onChanged(); return this; } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ public Builder setAffectedVersionStart(io.grafeas.v1.Version.Builder builderForValue) { if (affectedVersionStartBuilder_ == null) { affectedVersionStart_ = builderForValue.build(); } else { affectedVersionStartBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000020; onChanged(); return this; } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ public Builder mergeAffectedVersionStart(io.grafeas.v1.Version value) { if (affectedVersionStartBuilder_ == null) { if (((bitField0_ & 0x00000020) != 0) && affectedVersionStart_ != null && affectedVersionStart_ != io.grafeas.v1.Version.getDefaultInstance()) { getAffectedVersionStartBuilder().mergeFrom(value); } else { affectedVersionStart_ = value; } } else { affectedVersionStartBuilder_.mergeFrom(value); } bitField0_ |= 0x00000020; onChanged(); return this; } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ public Builder clearAffectedVersionStart() { bitField0_ = (bitField0_ & ~0x00000020); affectedVersionStart_ = null; if (affectedVersionStartBuilder_ != null) { affectedVersionStartBuilder_.dispose(); affectedVersionStartBuilder_ = null; } onChanged(); return this; } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ public io.grafeas.v1.Version.Builder getAffectedVersionStartBuilder() { bitField0_ |= 0x00000020; onChanged(); return getAffectedVersionStartFieldBuilder().getBuilder(); } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ public io.grafeas.v1.VersionOrBuilder getAffectedVersionStartOrBuilder() { if (affectedVersionStartBuilder_ != null) { return affectedVersionStartBuilder_.getMessageOrBuilder(); } else { return affectedVersionStart_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionStart_; } } /** * * *
       * The version number at the start of an interval in which this
       * vulnerability exists. A vulnerability can affect a package between
       * version numbers that are disjoint sets of intervals (example:
       * [1.0.0-1.1.0], [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be
       * represented in its own Detail. If a specific affected version is provided
       * by a vulnerability database, affected_version_start and
       * affected_version_end will be the same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_start = 6; */ private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder> getAffectedVersionStartFieldBuilder() { if (affectedVersionStartBuilder_ == null) { affectedVersionStartBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder>( getAffectedVersionStart(), getParentForChildren(), isClean()); affectedVersionStart_ = null; } return affectedVersionStartBuilder_; } private io.grafeas.v1.Version affectedVersionEnd_; private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder> affectedVersionEndBuilder_; /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; * * @return Whether the affectedVersionEnd field is set. */ public boolean hasAffectedVersionEnd() { return ((bitField0_ & 0x00000040) != 0); } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; * * @return The affectedVersionEnd. */ public io.grafeas.v1.Version getAffectedVersionEnd() { if (affectedVersionEndBuilder_ == null) { return affectedVersionEnd_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionEnd_; } else { return affectedVersionEndBuilder_.getMessage(); } } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ public Builder setAffectedVersionEnd(io.grafeas.v1.Version value) { if (affectedVersionEndBuilder_ == null) { if (value == null) { throw new NullPointerException(); } affectedVersionEnd_ = value; } else { affectedVersionEndBuilder_.setMessage(value); } bitField0_ |= 0x00000040; onChanged(); return this; } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ public Builder setAffectedVersionEnd(io.grafeas.v1.Version.Builder builderForValue) { if (affectedVersionEndBuilder_ == null) { affectedVersionEnd_ = builderForValue.build(); } else { affectedVersionEndBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000040; onChanged(); return this; } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ public Builder mergeAffectedVersionEnd(io.grafeas.v1.Version value) { if (affectedVersionEndBuilder_ == null) { if (((bitField0_ & 0x00000040) != 0) && affectedVersionEnd_ != null && affectedVersionEnd_ != io.grafeas.v1.Version.getDefaultInstance()) { getAffectedVersionEndBuilder().mergeFrom(value); } else { affectedVersionEnd_ = value; } } else { affectedVersionEndBuilder_.mergeFrom(value); } bitField0_ |= 0x00000040; onChanged(); return this; } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ public Builder clearAffectedVersionEnd() { bitField0_ = (bitField0_ & ~0x00000040); affectedVersionEnd_ = null; if (affectedVersionEndBuilder_ != null) { affectedVersionEndBuilder_.dispose(); affectedVersionEndBuilder_ = null; } onChanged(); return this; } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ public io.grafeas.v1.Version.Builder getAffectedVersionEndBuilder() { bitField0_ |= 0x00000040; onChanged(); return getAffectedVersionEndFieldBuilder().getBuilder(); } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ public io.grafeas.v1.VersionOrBuilder getAffectedVersionEndOrBuilder() { if (affectedVersionEndBuilder_ != null) { return affectedVersionEndBuilder_.getMessageOrBuilder(); } else { return affectedVersionEnd_ == null ? io.grafeas.v1.Version.getDefaultInstance() : affectedVersionEnd_; } } /** * * *
       * The version number at the end of an interval in which this vulnerability
       * exists. A vulnerability can affect a package between version numbers
       * that are disjoint sets of intervals (example: [1.0.0-1.1.0],
       * [2.4.6-2.4.8] and [4.5.6-4.6.8]) each of which will be represented in its
       * own Detail. If a specific affected version is provided by a vulnerability
       * database, affected_version_start and affected_version_end will be the
       * same in that Detail.
       * 
* * .grafeas.v1.Version affected_version_end = 7; */ private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder> getAffectedVersionEndFieldBuilder() { if (affectedVersionEndBuilder_ == null) { affectedVersionEndBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder>( getAffectedVersionEnd(), getParentForChildren(), isClean()); affectedVersionEnd_ = null; } return affectedVersionEndBuilder_; } private java.lang.Object fixedCpeUri_ = ""; /** * * *
       * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
       * to update to that contains a fix for this vulnerability. It is possible
       * for this to be different from the affected_cpe_uri.
       * 
* * string fixed_cpe_uri = 8; * * @return The fixedCpeUri. */ public java.lang.String getFixedCpeUri() { java.lang.Object ref = fixedCpeUri_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); fixedCpeUri_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
       * to update to that contains a fix for this vulnerability. It is possible
       * for this to be different from the affected_cpe_uri.
       * 
* * string fixed_cpe_uri = 8; * * @return The bytes for fixedCpeUri. */ public com.google.protobuf.ByteString getFixedCpeUriBytes() { java.lang.Object ref = fixedCpeUri_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); fixedCpeUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
       * to update to that contains a fix for this vulnerability. It is possible
       * for this to be different from the affected_cpe_uri.
       * 
* * string fixed_cpe_uri = 8; * * @param value The fixedCpeUri to set. * @return This builder for chaining. */ public Builder setFixedCpeUri(java.lang.String value) { if (value == null) { throw new NullPointerException(); } fixedCpeUri_ = value; bitField0_ |= 0x00000080; onChanged(); return this; } /** * * *
       * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
       * to update to that contains a fix for this vulnerability. It is possible
       * for this to be different from the affected_cpe_uri.
       * 
* * string fixed_cpe_uri = 8; * * @return This builder for chaining. */ public Builder clearFixedCpeUri() { fixedCpeUri_ = getDefaultInstance().getFixedCpeUri(); bitField0_ = (bitField0_ & ~0x00000080); onChanged(); return this; } /** * * *
       * The distro recommended [CPE URI](https://cpe.mitre.org/specification/)
       * to update to that contains a fix for this vulnerability. It is possible
       * for this to be different from the affected_cpe_uri.
       * 
* * string fixed_cpe_uri = 8; * * @param value The bytes for fixedCpeUri to set. * @return This builder for chaining. */ public Builder setFixedCpeUriBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); fixedCpeUri_ = value; bitField0_ |= 0x00000080; onChanged(); return this; } private java.lang.Object fixedPackage_ = ""; /** * * *
       * The distro recommended package to update to that contains a fix for this
       * vulnerability. It is possible for this to be different from the
       * affected_package.
       * 
* * string fixed_package = 9; * * @return The fixedPackage. */ public java.lang.String getFixedPackage() { java.lang.Object ref = fixedPackage_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); fixedPackage_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The distro recommended package to update to that contains a fix for this
       * vulnerability. It is possible for this to be different from the
       * affected_package.
       * 
* * string fixed_package = 9; * * @return The bytes for fixedPackage. */ public com.google.protobuf.ByteString getFixedPackageBytes() { java.lang.Object ref = fixedPackage_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); fixedPackage_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The distro recommended package to update to that contains a fix for this
       * vulnerability. It is possible for this to be different from the
       * affected_package.
       * 
* * string fixed_package = 9; * * @param value The fixedPackage to set. * @return This builder for chaining. */ public Builder setFixedPackage(java.lang.String value) { if (value == null) { throw new NullPointerException(); } fixedPackage_ = value; bitField0_ |= 0x00000100; onChanged(); return this; } /** * * *
       * The distro recommended package to update to that contains a fix for this
       * vulnerability. It is possible for this to be different from the
       * affected_package.
       * 
* * string fixed_package = 9; * * @return This builder for chaining. */ public Builder clearFixedPackage() { fixedPackage_ = getDefaultInstance().getFixedPackage(); bitField0_ = (bitField0_ & ~0x00000100); onChanged(); return this; } /** * * *
       * The distro recommended package to update to that contains a fix for this
       * vulnerability. It is possible for this to be different from the
       * affected_package.
       * 
* * string fixed_package = 9; * * @param value The bytes for fixedPackage to set. * @return This builder for chaining. */ public Builder setFixedPackageBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); fixedPackage_ = value; bitField0_ |= 0x00000100; onChanged(); return this; } private io.grafeas.v1.Version fixedVersion_; private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder> fixedVersionBuilder_; /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; * * @return Whether the fixedVersion field is set. */ public boolean hasFixedVersion() { return ((bitField0_ & 0x00000200) != 0); } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; * * @return The fixedVersion. */ public io.grafeas.v1.Version getFixedVersion() { if (fixedVersionBuilder_ == null) { return fixedVersion_ == null ? io.grafeas.v1.Version.getDefaultInstance() : fixedVersion_; } else { return fixedVersionBuilder_.getMessage(); } } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ public Builder setFixedVersion(io.grafeas.v1.Version value) { if (fixedVersionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } fixedVersion_ = value; } else { fixedVersionBuilder_.setMessage(value); } bitField0_ |= 0x00000200; onChanged(); return this; } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ public Builder setFixedVersion(io.grafeas.v1.Version.Builder builderForValue) { if (fixedVersionBuilder_ == null) { fixedVersion_ = builderForValue.build(); } else { fixedVersionBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000200; onChanged(); return this; } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ public Builder mergeFixedVersion(io.grafeas.v1.Version value) { if (fixedVersionBuilder_ == null) { if (((bitField0_ & 0x00000200) != 0) && fixedVersion_ != null && fixedVersion_ != io.grafeas.v1.Version.getDefaultInstance()) { getFixedVersionBuilder().mergeFrom(value); } else { fixedVersion_ = value; } } else { fixedVersionBuilder_.mergeFrom(value); } bitField0_ |= 0x00000200; onChanged(); return this; } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ public Builder clearFixedVersion() { bitField0_ = (bitField0_ & ~0x00000200); fixedVersion_ = null; if (fixedVersionBuilder_ != null) { fixedVersionBuilder_.dispose(); fixedVersionBuilder_ = null; } onChanged(); return this; } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ public io.grafeas.v1.Version.Builder getFixedVersionBuilder() { bitField0_ |= 0x00000200; onChanged(); return getFixedVersionFieldBuilder().getBuilder(); } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ public io.grafeas.v1.VersionOrBuilder getFixedVersionOrBuilder() { if (fixedVersionBuilder_ != null) { return fixedVersionBuilder_.getMessageOrBuilder(); } else { return fixedVersion_ == null ? io.grafeas.v1.Version.getDefaultInstance() : fixedVersion_; } } /** * * *
       * The distro recommended version to update to that contains a
       * fix for this vulnerability. Setting this to VersionKind.MAXIMUM means no
       * such version is yet available.
       * 
* * .grafeas.v1.Version fixed_version = 10; */ private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder> getFixedVersionFieldBuilder() { if (fixedVersionBuilder_ == null) { fixedVersionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.Version, io.grafeas.v1.Version.Builder, io.grafeas.v1.VersionOrBuilder>( getFixedVersion(), getParentForChildren(), isClean()); fixedVersion_ = null; } return fixedVersionBuilder_; } private boolean isObsolete_; /** * * *
       * Whether this detail is obsolete. Occurrences are expected not to point to
       * obsolete details.
       * 
* * bool is_obsolete = 11; * * @return The isObsolete. */ @java.lang.Override public boolean getIsObsolete() { return isObsolete_; } /** * * *
       * Whether this detail is obsolete. Occurrences are expected not to point to
       * obsolete details.
       * 
* * bool is_obsolete = 11; * * @param value The isObsolete to set. * @return This builder for chaining. */ public Builder setIsObsolete(boolean value) { isObsolete_ = value; bitField0_ |= 0x00000400; onChanged(); return this; } /** * * *
       * Whether this detail is obsolete. Occurrences are expected not to point to
       * obsolete details.
       * 
* * bool is_obsolete = 11; * * @return This builder for chaining. */ public Builder clearIsObsolete() { bitField0_ = (bitField0_ & ~0x00000400); isObsolete_ = false; onChanged(); return this; } private com.google.protobuf.Timestamp sourceUpdateTime_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> sourceUpdateTimeBuilder_; /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; * * @return Whether the sourceUpdateTime field is set. */ public boolean hasSourceUpdateTime() { return ((bitField0_ & 0x00000800) != 0); } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; * * @return The sourceUpdateTime. */ public com.google.protobuf.Timestamp getSourceUpdateTime() { if (sourceUpdateTimeBuilder_ == null) { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } else { return sourceUpdateTimeBuilder_.getMessage(); } } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ public Builder setSourceUpdateTime(com.google.protobuf.Timestamp value) { if (sourceUpdateTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } sourceUpdateTime_ = value; } else { sourceUpdateTimeBuilder_.setMessage(value); } bitField0_ |= 0x00000800; onChanged(); return this; } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ public Builder setSourceUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { if (sourceUpdateTimeBuilder_ == null) { sourceUpdateTime_ = builderForValue.build(); } else { sourceUpdateTimeBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000800; onChanged(); return this; } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ public Builder mergeSourceUpdateTime(com.google.protobuf.Timestamp value) { if (sourceUpdateTimeBuilder_ == null) { if (((bitField0_ & 0x00000800) != 0) && sourceUpdateTime_ != null && sourceUpdateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { getSourceUpdateTimeBuilder().mergeFrom(value); } else { sourceUpdateTime_ = value; } } else { sourceUpdateTimeBuilder_.mergeFrom(value); } bitField0_ |= 0x00000800; onChanged(); return this; } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ public Builder clearSourceUpdateTime() { bitField0_ = (bitField0_ & ~0x00000800); sourceUpdateTime_ = null; if (sourceUpdateTimeBuilder_ != null) { sourceUpdateTimeBuilder_.dispose(); sourceUpdateTimeBuilder_ = null; } onChanged(); return this; } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ public com.google.protobuf.Timestamp.Builder getSourceUpdateTimeBuilder() { bitField0_ |= 0x00000800; onChanged(); return getSourceUpdateTimeFieldBuilder().getBuilder(); } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ public com.google.protobuf.TimestampOrBuilder getSourceUpdateTimeOrBuilder() { if (sourceUpdateTimeBuilder_ != null) { return sourceUpdateTimeBuilder_.getMessageOrBuilder(); } else { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } } /** * * *
       * The time this information was last changed at the source. This is an
       * upstream timestamp from the underlying information source - e.g. Ubuntu
       * security tracker.
       * 
* * .google.protobuf.Timestamp source_update_time = 12; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> getSourceUpdateTimeFieldBuilder() { if (sourceUpdateTimeBuilder_ == null) { sourceUpdateTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( getSourceUpdateTime(), getParentForChildren(), isClean()); sourceUpdateTime_ = null; } return sourceUpdateTimeBuilder_; } private java.lang.Object source_ = ""; /** * * *
       * The source from which the information in this Detail was obtained.
       * 
* * string source = 13; * * @return The source. */ public java.lang.String getSource() { java.lang.Object ref = source_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); source_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The source from which the information in this Detail was obtained.
       * 
* * string source = 13; * * @return The bytes for source. */ public com.google.protobuf.ByteString getSourceBytes() { java.lang.Object ref = source_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); source_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The source from which the information in this Detail was obtained.
       * 
* * string source = 13; * * @param value The source to set. * @return This builder for chaining. */ public Builder setSource(java.lang.String value) { if (value == null) { throw new NullPointerException(); } source_ = value; bitField0_ |= 0x00001000; onChanged(); return this; } /** * * *
       * The source from which the information in this Detail was obtained.
       * 
* * string source = 13; * * @return This builder for chaining. */ public Builder clearSource() { source_ = getDefaultInstance().getSource(); bitField0_ = (bitField0_ & ~0x00001000); onChanged(); return this; } /** * * *
       * The source from which the information in this Detail was obtained.
       * 
* * string source = 13; * * @param value The bytes for source to set. * @return This builder for chaining. */ public Builder setSourceBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); source_ = value; bitField0_ |= 0x00001000; onChanged(); return this; } private java.lang.Object vendor_ = ""; /** * * *
       * The name of the vendor of the product.
       * 
* * string vendor = 14; * * @return The vendor. */ public java.lang.String getVendor() { java.lang.Object ref = vendor_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); vendor_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The name of the vendor of the product.
       * 
* * string vendor = 14; * * @return The bytes for vendor. */ public com.google.protobuf.ByteString getVendorBytes() { java.lang.Object ref = vendor_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); vendor_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The name of the vendor of the product.
       * 
* * string vendor = 14; * * @param value The vendor to set. * @return This builder for chaining. */ public Builder setVendor(java.lang.String value) { if (value == null) { throw new NullPointerException(); } vendor_ = value; bitField0_ |= 0x00002000; onChanged(); return this; } /** * * *
       * The name of the vendor of the product.
       * 
* * string vendor = 14; * * @return This builder for chaining. */ public Builder clearVendor() { vendor_ = getDefaultInstance().getVendor(); bitField0_ = (bitField0_ & ~0x00002000); onChanged(); return this; } /** * * *
       * The name of the vendor of the product.
       * 
* * string vendor = 14; * * @param value The bytes for vendor to set. * @return This builder for chaining. */ public Builder setVendorBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); vendor_ = value; bitField0_ |= 0x00002000; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:grafeas.v1.VulnerabilityNote.Detail) } // @@protoc_insertion_point(class_scope:grafeas.v1.VulnerabilityNote.Detail) private static final io.grafeas.v1.VulnerabilityNote.Detail DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new io.grafeas.v1.VulnerabilityNote.Detail(); } public static io.grafeas.v1.VulnerabilityNote.Detail getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public Detail parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { Builder builder = newBuilder(); try { builder.mergeFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(builder.buildPartial()); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException() .setUnfinishedMessage(builder.buildPartial()); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException(e) .setUnfinishedMessage(builder.buildPartial()); } return builder.buildPartial(); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.Detail getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public interface WindowsDetailOrBuilder extends // @@protoc_insertion_point(interface_extends:grafeas.v1.VulnerabilityNote.WindowsDetail) com.google.protobuf.MessageOrBuilder { /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string cpe_uri = 1; * * @return The cpeUri. */ java.lang.String getCpeUri(); /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string cpe_uri = 1; * * @return The bytes for cpeUri. */ com.google.protobuf.ByteString getCpeUriBytes(); /** * * *
     * Required. The name of this vulnerability.
     * 
* * string name = 2; * * @return The name. */ java.lang.String getName(); /** * * *
     * Required. The name of this vulnerability.
     * 
* * string name = 2; * * @return The bytes for name. */ com.google.protobuf.ByteString getNameBytes(); /** * * *
     * The description of this vulnerability.
     * 
* * string description = 3; * * @return The description. */ java.lang.String getDescription(); /** * * *
     * The description of this vulnerability.
     * 
* * string description = 3; * * @return The bytes for description. */ com.google.protobuf.ByteString getDescriptionBytes(); /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ java.util.List getFixingKbsList(); /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase getFixingKbs(int index); /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ int getFixingKbsCount(); /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ java.util.List getFixingKbsOrBuilderList(); /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder getFixingKbsOrBuilder( int index); } /** Protobuf type {@code grafeas.v1.VulnerabilityNote.WindowsDetail} */ public static final class WindowsDetail extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:grafeas.v1.VulnerabilityNote.WindowsDetail) WindowsDetailOrBuilder { private static final long serialVersionUID = 0L; // Use WindowsDetail.newBuilder() to construct. private WindowsDetail(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private WindowsDetail() { cpeUri_ = ""; name_ = ""; description_ = ""; fixingKbs_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new WindowsDetail(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.WindowsDetail.class, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder.class); } public interface KnowledgeBaseOrBuilder extends // @@protoc_insertion_point(interface_extends:grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) com.google.protobuf.MessageOrBuilder { /** * * *
       * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
       * 
* * string name = 1; * * @return The name. */ java.lang.String getName(); /** * * *
       * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
       * 
* * string name = 1; * * @return The bytes for name. */ com.google.protobuf.ByteString getNameBytes(); /** * * *
       * A link to the KB in the [Windows update catalog]
       * (https://www.catalog.update.microsoft.com/).
       * 
* * string url = 2; * * @return The url. */ java.lang.String getUrl(); /** * * *
       * A link to the KB in the [Windows update catalog]
       * (https://www.catalog.update.microsoft.com/).
       * 
* * string url = 2; * * @return The bytes for url. */ com.google.protobuf.ByteString getUrlBytes(); } /** Protobuf type {@code grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase} */ public static final class KnowledgeBase extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) KnowledgeBaseOrBuilder { private static final long serialVersionUID = 0L; // Use KnowledgeBase.newBuilder() to construct. private KnowledgeBase(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private KnowledgeBase() { name_ = ""; url_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance(UnusedPrivateParameter unused) { return new KnowledgeBase(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_KnowledgeBase_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_KnowledgeBase_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.class, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder.class); } public static final int NAME_FIELD_NUMBER = 1; @SuppressWarnings("serial") private volatile java.lang.Object name_ = ""; /** * * *
       * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
       * 
* * string name = 1; * * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** * * *
       * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
       * 
* * string name = 1; * * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int URL_FIELD_NUMBER = 2; @SuppressWarnings("serial") private volatile java.lang.Object url_ = ""; /** * * *
       * A link to the KB in the [Windows update catalog]
       * (https://www.catalog.update.microsoft.com/).
       * 
* * string url = 2; * * @return The url. */ @java.lang.Override public java.lang.String getUrl() { java.lang.Object ref = url_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); url_ = s; return s; } } /** * * *
       * A link to the KB in the [Windows update catalog]
       * (https://www.catalog.update.microsoft.com/).
       * 
* * string url = 2; * * @return The bytes for url. */ @java.lang.Override public com.google.protobuf.ByteString getUrlBytes() { java.lang.Object ref = url_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); url_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, name_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(url_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, url_); } getUnknownFields().writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, name_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(url_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, url_); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase)) { return super.equals(obj); } io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase other = (io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) obj; if (!getName().equals(other.getName())) return false; if (!getUrl().equals(other.getUrl())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); hash = (37 * hash) + URL_FIELD_NUMBER; hash = (53 * hash) + getUrl().hashCode(); hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseDelimitedFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** Protobuf type {@code grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_KnowledgeBase_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_KnowledgeBase_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.class, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder.class); } // Construct using io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; name_ = ""; url_ = ""; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_KnowledgeBase_descriptor; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase getDefaultInstanceForType() { return io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.getDefaultInstance(); } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase build() { io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase buildPartial() { io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase result = new io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase(this); if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } private void buildPartial0( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.name_ = name_; } if (((from_bitField0_ & 0x00000002) != 0)) { result.url_ = url_; } } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) { return mergeFrom((io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase other) { if (other == io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.getDefaultInstance()) return this; if (!other.getName().isEmpty()) { name_ = other.name_; bitField0_ |= 0x00000001; onChanged(); } if (!other.getUrl().isEmpty()) { url_ = other.url_; bitField0_ |= 0x00000002; onChanged(); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { name_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; } // case 10 case 18: { url_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000002; break; } // case 18 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag } break; } // default: } // switch (tag) } // while (!done) } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.unwrapIOException(); } finally { onChanged(); } // finally return this; } private int bitField0_; private java.lang.Object name_ = ""; /** * * *
         * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
         * 
* * string name = 1; * * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
         * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
         * 
* * string name = 1; * * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
         * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
         * 
* * string name = 1; * * @param value The name to set. * @return This builder for chaining. */ public Builder setName(java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } /** * * *
         * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
         * 
* * string name = 1; * * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** * * *
         * The KB name (generally of the form KB[0-9]+ (e.g., KB123456)).
         * 
* * string name = 1; * * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } private java.lang.Object url_ = ""; /** * * *
         * A link to the KB in the [Windows update catalog]
         * (https://www.catalog.update.microsoft.com/).
         * 
* * string url = 2; * * @return The url. */ public java.lang.String getUrl() { java.lang.Object ref = url_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); url_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
         * A link to the KB in the [Windows update catalog]
         * (https://www.catalog.update.microsoft.com/).
         * 
* * string url = 2; * * @return The bytes for url. */ public com.google.protobuf.ByteString getUrlBytes() { java.lang.Object ref = url_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); url_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
         * A link to the KB in the [Windows update catalog]
         * (https://www.catalog.update.microsoft.com/).
         * 
* * string url = 2; * * @param value The url to set. * @return This builder for chaining. */ public Builder setUrl(java.lang.String value) { if (value == null) { throw new NullPointerException(); } url_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } /** * * *
         * A link to the KB in the [Windows update catalog]
         * (https://www.catalog.update.microsoft.com/).
         * 
* * string url = 2; * * @return This builder for chaining. */ public Builder clearUrl() { url_ = getDefaultInstance().getUrl(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** * * *
         * A link to the KB in the [Windows update catalog]
         * (https://www.catalog.update.microsoft.com/).
         * 
* * string url = 2; * * @param value The bytes for url to set. * @return This builder for chaining. */ public Builder setUrlBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); url_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) } // @@protoc_insertion_point(class_scope:grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase) private static final io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase(); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public KnowledgeBase parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { Builder builder = newBuilder(); try { builder.mergeFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(builder.buildPartial()); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException() .setUnfinishedMessage(builder.buildPartial()); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException(e) .setUnfinishedMessage(builder.buildPartial()); } return builder.buildPartial(); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public static final int CPE_URI_FIELD_NUMBER = 1; @SuppressWarnings("serial") private volatile java.lang.Object cpeUri_ = ""; /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string cpe_uri = 1; * * @return The cpeUri. */ @java.lang.Override public java.lang.String getCpeUri() { java.lang.Object ref = cpeUri_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); cpeUri_ = s; return s; } } /** * * *
     * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
     * vulnerability affects.
     * 
* * string cpe_uri = 1; * * @return The bytes for cpeUri. */ @java.lang.Override public com.google.protobuf.ByteString getCpeUriBytes() { java.lang.Object ref = cpeUri_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); cpeUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int NAME_FIELD_NUMBER = 2; @SuppressWarnings("serial") private volatile java.lang.Object name_ = ""; /** * * *
     * Required. The name of this vulnerability.
     * 
* * string name = 2; * * @return The name. */ @java.lang.Override public java.lang.String getName() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } } /** * * *
     * Required. The name of this vulnerability.
     * 
* * string name = 2; * * @return The bytes for name. */ @java.lang.Override public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int DESCRIPTION_FIELD_NUMBER = 3; @SuppressWarnings("serial") private volatile java.lang.Object description_ = ""; /** * * *
     * The description of this vulnerability.
     * 
* * string description = 3; * * @return The description. */ @java.lang.Override public java.lang.String getDescription() { java.lang.Object ref = description_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); description_ = s; return s; } } /** * * *
     * The description of this vulnerability.
     * 
* * string description = 3; * * @return The bytes for description. */ @java.lang.Override public com.google.protobuf.ByteString getDescriptionBytes() { java.lang.Object ref = description_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); description_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int FIXING_KBS_FIELD_NUMBER = 4; @SuppressWarnings("serial") private java.util.List fixingKbs_; /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ @java.lang.Override public java.util.List getFixingKbsList() { return fixingKbs_; } /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ @java.lang.Override public java.util.List< ? extends io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder> getFixingKbsOrBuilderList() { return fixingKbs_; } /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ @java.lang.Override public int getFixingKbsCount() { return fixingKbs_.size(); } /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase getFixingKbs(int index) { return fixingKbs_.get(index); } /** * * *
     * Required. The names of the KBs which have hotfixes to mitigate this
     * vulnerability. Note that there may be multiple hotfixes (and thus
     * multiple KBs) that mitigate a given vulnerability. Currently any listed
     * KBs presence is considered a fix.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder getFixingKbsOrBuilder(int index) { return fixingKbs_.get(index); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cpeUri_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 1, cpeUri_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, name_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { com.google.protobuf.GeneratedMessageV3.writeString(output, 3, description_); } for (int i = 0; i < fixingKbs_.size(); i++) { output.writeMessage(4, fixingKbs_.get(i)); } getUnknownFields().writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(cpeUri_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, cpeUri_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(name_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, name_); } if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(description_)) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, description_); } for (int i = 0; i < fixingKbs_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, fixingKbs_.get(i)); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof io.grafeas.v1.VulnerabilityNote.WindowsDetail)) { return super.equals(obj); } io.grafeas.v1.VulnerabilityNote.WindowsDetail other = (io.grafeas.v1.VulnerabilityNote.WindowsDetail) obj; if (!getCpeUri().equals(other.getCpeUri())) return false; if (!getName().equals(other.getName())) return false; if (!getDescription().equals(other.getDescription())) return false; if (!getFixingKbsList().equals(other.getFixingKbsList())) return false; if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + CPE_URI_FIELD_NUMBER; hash = (53 * hash) + getCpeUri().hashCode(); hash = (37 * hash) + NAME_FIELD_NUMBER; hash = (53 * hash) + getName().hashCode(); hash = (37 * hash) + DESCRIPTION_FIELD_NUMBER; hash = (53 * hash) + getDescription().hashCode(); if (getFixingKbsCount() > 0) { hash = (37 * hash) + FIXING_KBS_FIELD_NUMBER; hash = (53 * hash) + getFixingKbsList().hashCode(); } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseDelimitedFrom( java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(io.grafeas.v1.VulnerabilityNote.WindowsDetail prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** Protobuf type {@code grafeas.v1.VulnerabilityNote.WindowsDetail} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:grafeas.v1.VulnerabilityNote.WindowsDetail) io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.WindowsDetail.class, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder.class); } // Construct using io.grafeas.v1.VulnerabilityNote.WindowsDetail.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; cpeUri_ = ""; name_ = ""; description_ = ""; if (fixingKbsBuilder_ == null) { fixingKbs_ = java.util.Collections.emptyList(); } else { fixingKbs_ = null; fixingKbsBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000008); return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_WindowsDetail_descriptor; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail getDefaultInstanceForType() { return io.grafeas.v1.VulnerabilityNote.WindowsDetail.getDefaultInstance(); } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail build() { io.grafeas.v1.VulnerabilityNote.WindowsDetail result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail buildPartial() { io.grafeas.v1.VulnerabilityNote.WindowsDetail result = new io.grafeas.v1.VulnerabilityNote.WindowsDetail(this); buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } private void buildPartialRepeatedFields( io.grafeas.v1.VulnerabilityNote.WindowsDetail result) { if (fixingKbsBuilder_ == null) { if (((bitField0_ & 0x00000008) != 0)) { fixingKbs_ = java.util.Collections.unmodifiableList(fixingKbs_); bitField0_ = (bitField0_ & ~0x00000008); } result.fixingKbs_ = fixingKbs_; } else { result.fixingKbs_ = fixingKbsBuilder_.build(); } } private void buildPartial0(io.grafeas.v1.VulnerabilityNote.WindowsDetail result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.cpeUri_ = cpeUri_; } if (((from_bitField0_ & 0x00000002) != 0)) { result.name_ = name_; } if (((from_bitField0_ & 0x00000004) != 0)) { result.description_ = description_; } } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof io.grafeas.v1.VulnerabilityNote.WindowsDetail) { return mergeFrom((io.grafeas.v1.VulnerabilityNote.WindowsDetail) other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(io.grafeas.v1.VulnerabilityNote.WindowsDetail other) { if (other == io.grafeas.v1.VulnerabilityNote.WindowsDetail.getDefaultInstance()) return this; if (!other.getCpeUri().isEmpty()) { cpeUri_ = other.cpeUri_; bitField0_ |= 0x00000001; onChanged(); } if (!other.getName().isEmpty()) { name_ = other.name_; bitField0_ |= 0x00000002; onChanged(); } if (!other.getDescription().isEmpty()) { description_ = other.description_; bitField0_ |= 0x00000004; onChanged(); } if (fixingKbsBuilder_ == null) { if (!other.fixingKbs_.isEmpty()) { if (fixingKbs_.isEmpty()) { fixingKbs_ = other.fixingKbs_; bitField0_ = (bitField0_ & ~0x00000008); } else { ensureFixingKbsIsMutable(); fixingKbs_.addAll(other.fixingKbs_); } onChanged(); } } else { if (!other.fixingKbs_.isEmpty()) { if (fixingKbsBuilder_.isEmpty()) { fixingKbsBuilder_.dispose(); fixingKbsBuilder_ = null; fixingKbs_ = other.fixingKbs_; bitField0_ = (bitField0_ & ~0x00000008); fixingKbsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getFixingKbsFieldBuilder() : null; } else { fixingKbsBuilder_.addAllMessages(other.fixingKbs_); } } } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 10: { cpeUri_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000001; break; } // case 10 case 18: { name_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000002; break; } // case 18 case 26: { description_ = input.readStringRequireUtf8(); bitField0_ |= 0x00000004; break; } // case 26 case 34: { io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase m = input.readMessage( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.parser(), extensionRegistry); if (fixingKbsBuilder_ == null) { ensureFixingKbsIsMutable(); fixingKbs_.add(m); } else { fixingKbsBuilder_.addMessage(m); } break; } // case 34 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag } break; } // default: } // switch (tag) } // while (!done) } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.unwrapIOException(); } finally { onChanged(); } // finally return this; } private int bitField0_; private java.lang.Object cpeUri_ = ""; /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string cpe_uri = 1; * * @return The cpeUri. */ public java.lang.String getCpeUri() { java.lang.Object ref = cpeUri_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); cpeUri_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string cpe_uri = 1; * * @return The bytes for cpeUri. */ public com.google.protobuf.ByteString getCpeUriBytes() { java.lang.Object ref = cpeUri_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); cpeUri_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string cpe_uri = 1; * * @param value The cpeUri to set. * @return This builder for chaining. */ public Builder setCpeUri(java.lang.String value) { if (value == null) { throw new NullPointerException(); } cpeUri_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string cpe_uri = 1; * * @return This builder for chaining. */ public Builder clearCpeUri() { cpeUri_ = getDefaultInstance().getCpeUri(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } /** * * *
       * Required. The [CPE URI](https://cpe.mitre.org/specification/) this
       * vulnerability affects.
       * 
* * string cpe_uri = 1; * * @param value The bytes for cpeUri to set. * @return This builder for chaining. */ public Builder setCpeUriBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); cpeUri_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } private java.lang.Object name_ = ""; /** * * *
       * Required. The name of this vulnerability.
       * 
* * string name = 2; * * @return The name. */ public java.lang.String getName() { java.lang.Object ref = name_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); name_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * Required. The name of this vulnerability.
       * 
* * string name = 2; * * @return The bytes for name. */ public com.google.protobuf.ByteString getNameBytes() { java.lang.Object ref = name_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); name_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * Required. The name of this vulnerability.
       * 
* * string name = 2; * * @param value The name to set. * @return This builder for chaining. */ public Builder setName(java.lang.String value) { if (value == null) { throw new NullPointerException(); } name_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } /** * * *
       * Required. The name of this vulnerability.
       * 
* * string name = 2; * * @return This builder for chaining. */ public Builder clearName() { name_ = getDefaultInstance().getName(); bitField0_ = (bitField0_ & ~0x00000002); onChanged(); return this; } /** * * *
       * Required. The name of this vulnerability.
       * 
* * string name = 2; * * @param value The bytes for name to set. * @return This builder for chaining. */ public Builder setNameBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); name_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } private java.lang.Object description_ = ""; /** * * *
       * The description of this vulnerability.
       * 
* * string description = 3; * * @return The description. */ public java.lang.String getDescription() { java.lang.Object ref = description_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); description_ = s; return s; } else { return (java.lang.String) ref; } } /** * * *
       * The description of this vulnerability.
       * 
* * string description = 3; * * @return The bytes for description. */ public com.google.protobuf.ByteString getDescriptionBytes() { java.lang.Object ref = description_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); description_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** * * *
       * The description of this vulnerability.
       * 
* * string description = 3; * * @param value The description to set. * @return This builder for chaining. */ public Builder setDescription(java.lang.String value) { if (value == null) { throw new NullPointerException(); } description_ = value; bitField0_ |= 0x00000004; onChanged(); return this; } /** * * *
       * The description of this vulnerability.
       * 
* * string description = 3; * * @return This builder for chaining. */ public Builder clearDescription() { description_ = getDefaultInstance().getDescription(); bitField0_ = (bitField0_ & ~0x00000004); onChanged(); return this; } /** * * *
       * The description of this vulnerability.
       * 
* * string description = 3; * * @param value The bytes for description to set. * @return This builder for chaining. */ public Builder setDescriptionBytes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); description_ = value; bitField0_ |= 0x00000004; onChanged(); return this; } private java.util.List fixingKbs_ = java.util.Collections.emptyList(); private void ensureFixingKbsIsMutable() { if (!((bitField0_ & 0x00000008) != 0)) { fixingKbs_ = new java.util.ArrayList( fixingKbs_); bitField0_ |= 0x00000008; } } private com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder> fixingKbsBuilder_; /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public java.util.List getFixingKbsList() { if (fixingKbsBuilder_ == null) { return java.util.Collections.unmodifiableList(fixingKbs_); } else { return fixingKbsBuilder_.getMessageList(); } } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public int getFixingKbsCount() { if (fixingKbsBuilder_ == null) { return fixingKbs_.size(); } else { return fixingKbsBuilder_.getCount(); } } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase getFixingKbs(int index) { if (fixingKbsBuilder_ == null) { return fixingKbs_.get(index); } else { return fixingKbsBuilder_.getMessage(index); } } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder setFixingKbs( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase value) { if (fixingKbsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureFixingKbsIsMutable(); fixingKbs_.set(index, value); onChanged(); } else { fixingKbsBuilder_.setMessage(index, value); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder setFixingKbs( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder builderForValue) { if (fixingKbsBuilder_ == null) { ensureFixingKbsIsMutable(); fixingKbs_.set(index, builderForValue.build()); onChanged(); } else { fixingKbsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder addFixingKbs( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase value) { if (fixingKbsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureFixingKbsIsMutable(); fixingKbs_.add(value); onChanged(); } else { fixingKbsBuilder_.addMessage(value); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder addFixingKbs( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase value) { if (fixingKbsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureFixingKbsIsMutable(); fixingKbs_.add(index, value); onChanged(); } else { fixingKbsBuilder_.addMessage(index, value); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder addFixingKbs( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder builderForValue) { if (fixingKbsBuilder_ == null) { ensureFixingKbsIsMutable(); fixingKbs_.add(builderForValue.build()); onChanged(); } else { fixingKbsBuilder_.addMessage(builderForValue.build()); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder addFixingKbs( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder builderForValue) { if (fixingKbsBuilder_ == null) { ensureFixingKbsIsMutable(); fixingKbs_.add(index, builderForValue.build()); onChanged(); } else { fixingKbsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder addAllFixingKbs( java.lang.Iterable values) { if (fixingKbsBuilder_ == null) { ensureFixingKbsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll(values, fixingKbs_); onChanged(); } else { fixingKbsBuilder_.addAllMessages(values); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder clearFixingKbs() { if (fixingKbsBuilder_ == null) { fixingKbs_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000008); onChanged(); } else { fixingKbsBuilder_.clear(); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public Builder removeFixingKbs(int index) { if (fixingKbsBuilder_ == null) { ensureFixingKbsIsMutable(); fixingKbs_.remove(index); onChanged(); } else { fixingKbsBuilder_.remove(index); } return this; } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder getFixingKbsBuilder(int index) { return getFixingKbsFieldBuilder().getBuilder(index); } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder getFixingKbsOrBuilder(int index) { if (fixingKbsBuilder_ == null) { return fixingKbs_.get(index); } else { return fixingKbsBuilder_.getMessageOrBuilder(index); } } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public java.util.List< ? extends io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder> getFixingKbsOrBuilderList() { if (fixingKbsBuilder_ != null) { return fixingKbsBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(fixingKbs_); } } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder addFixingKbsBuilder() { return getFixingKbsFieldBuilder() .addBuilder( io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.getDefaultInstance()); } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder addFixingKbsBuilder(int index) { return getFixingKbsFieldBuilder() .addBuilder( index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.getDefaultInstance()); } /** * * *
       * Required. The names of the KBs which have hotfixes to mitigate this
       * vulnerability. Note that there may be multiple hotfixes (and thus
       * multiple KBs) that mitigate a given vulnerability. Currently any listed
       * KBs presence is considered a fix.
       * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase fixing_kbs = 4; * */ public java.util.List getFixingKbsBuilderList() { return getFixingKbsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder> getFixingKbsFieldBuilder() { if (fixingKbsBuilder_ == null) { fixingKbsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBase.Builder, io.grafeas.v1.VulnerabilityNote.WindowsDetail.KnowledgeBaseOrBuilder>( fixingKbs_, ((bitField0_ & 0x00000008) != 0), getParentForChildren(), isClean()); fixingKbs_ = null; } return fixingKbsBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:grafeas.v1.VulnerabilityNote.WindowsDetail) } // @@protoc_insertion_point(class_scope:grafeas.v1.VulnerabilityNote.WindowsDetail) private static final io.grafeas.v1.VulnerabilityNote.WindowsDetail DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new io.grafeas.v1.VulnerabilityNote.WindowsDetail(); } public static io.grafeas.v1.VulnerabilityNote.WindowsDetail getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public WindowsDetail parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { Builder builder = newBuilder(); try { builder.mergeFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(builder.buildPartial()); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException() .setUnfinishedMessage(builder.buildPartial()); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException(e) .setUnfinishedMessage(builder.buildPartial()); } return builder.buildPartial(); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail getDefaultInstanceForType() { return DEFAULT_INSTANCE; } } public static final int CVSS_SCORE_FIELD_NUMBER = 1; private float cvssScore_ = 0F; /** * * *
   * The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
   * where 0 indicates low severity and 10 indicates high severity.
   * 
* * float cvss_score = 1; * * @return The cvssScore. */ @java.lang.Override public float getCvssScore() { return cvssScore_; } public static final int SEVERITY_FIELD_NUMBER = 2; private int severity_ = 0; /** * * *
   * The note provider assigned severity of this vulnerability.
   * 
* * .grafeas.v1.Severity severity = 2; * * @return The enum numeric value on the wire for severity. */ @java.lang.Override public int getSeverityValue() { return severity_; } /** * * *
   * The note provider assigned severity of this vulnerability.
   * 
* * .grafeas.v1.Severity severity = 2; * * @return The severity. */ @java.lang.Override public io.grafeas.v1.Severity getSeverity() { io.grafeas.v1.Severity result = io.grafeas.v1.Severity.forNumber(severity_); return result == null ? io.grafeas.v1.Severity.UNRECOGNIZED : result; } public static final int DETAILS_FIELD_NUMBER = 3; @SuppressWarnings("serial") private java.util.List details_; /** * * *
   * Details of all known distros and packages affected by this vulnerability.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ @java.lang.Override public java.util.List getDetailsList() { return details_; } /** * * *
   * Details of all known distros and packages affected by this vulnerability.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ @java.lang.Override public java.util.List getDetailsOrBuilderList() { return details_; } /** * * *
   * Details of all known distros and packages affected by this vulnerability.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ @java.lang.Override public int getDetailsCount() { return details_.size(); } /** * * *
   * Details of all known distros and packages affected by this vulnerability.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ @java.lang.Override public io.grafeas.v1.VulnerabilityNote.Detail getDetails(int index) { return details_.get(index); } /** * * *
   * Details of all known distros and packages affected by this vulnerability.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ @java.lang.Override public io.grafeas.v1.VulnerabilityNote.DetailOrBuilder getDetailsOrBuilder(int index) { return details_.get(index); } public static final int CVSS_V3_FIELD_NUMBER = 4; private io.grafeas.v1.CVSSv3 cvssV3_; /** * * *
   * The full description of the CVSSv3 for this vulnerability.
   * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; * * @return Whether the cvssV3 field is set. */ @java.lang.Override public boolean hasCvssV3() { return cvssV3_ != null; } /** * * *
   * The full description of the CVSSv3 for this vulnerability.
   * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; * * @return The cvssV3. */ @java.lang.Override public io.grafeas.v1.CVSSv3 getCvssV3() { return cvssV3_ == null ? io.grafeas.v1.CVSSv3.getDefaultInstance() : cvssV3_; } /** * * *
   * The full description of the CVSSv3 for this vulnerability.
   * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ @java.lang.Override public io.grafeas.v1.CVSSv3OrBuilder getCvssV3OrBuilder() { return cvssV3_ == null ? io.grafeas.v1.CVSSv3.getDefaultInstance() : cvssV3_; } public static final int WINDOWS_DETAILS_FIELD_NUMBER = 5; @SuppressWarnings("serial") private java.util.List windowsDetails_; /** * * *
   * Windows details get their own format because the information format and
   * model don't match a normal detail. Specifically Windows updates are done as
   * patches, thus Windows vulnerabilities really are a missing package, rather
   * than a package being at an incorrect version.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ @java.lang.Override public java.util.List getWindowsDetailsList() { return windowsDetails_; } /** * * *
   * Windows details get their own format because the information format and
   * model don't match a normal detail. Specifically Windows updates are done as
   * patches, thus Windows vulnerabilities really are a missing package, rather
   * than a package being at an incorrect version.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ @java.lang.Override public java.util.List getWindowsDetailsOrBuilderList() { return windowsDetails_; } /** * * *
   * Windows details get their own format because the information format and
   * model don't match a normal detail. Specifically Windows updates are done as
   * patches, thus Windows vulnerabilities really are a missing package, rather
   * than a package being at an incorrect version.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ @java.lang.Override public int getWindowsDetailsCount() { return windowsDetails_.size(); } /** * * *
   * Windows details get their own format because the information format and
   * model don't match a normal detail. Specifically Windows updates are done as
   * patches, thus Windows vulnerabilities really are a missing package, rather
   * than a package being at an incorrect version.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetail getWindowsDetails(int index) { return windowsDetails_.get(index); } /** * * *
   * Windows details get their own format because the information format and
   * model don't match a normal detail. Specifically Windows updates are done as
   * patches, thus Windows vulnerabilities really are a missing package, rather
   * than a package being at an incorrect version.
   * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ @java.lang.Override public io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder getWindowsDetailsOrBuilder( int index) { return windowsDetails_.get(index); } public static final int SOURCE_UPDATE_TIME_FIELD_NUMBER = 6; private com.google.protobuf.Timestamp sourceUpdateTime_; /** * * *
   * The time this information was last changed at the source. This is an
   * upstream timestamp from the underlying information source - e.g. Ubuntu
   * security tracker.
   * 
* * .google.protobuf.Timestamp source_update_time = 6; * * @return Whether the sourceUpdateTime field is set. */ @java.lang.Override public boolean hasSourceUpdateTime() { return sourceUpdateTime_ != null; } /** * * *
   * The time this information was last changed at the source. This is an
   * upstream timestamp from the underlying information source - e.g. Ubuntu
   * security tracker.
   * 
* * .google.protobuf.Timestamp source_update_time = 6; * * @return The sourceUpdateTime. */ @java.lang.Override public com.google.protobuf.Timestamp getSourceUpdateTime() { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } /** * * *
   * The time this information was last changed at the source. This is an
   * upstream timestamp from the underlying information source - e.g. Ubuntu
   * security tracker.
   * 
* * .google.protobuf.Timestamp source_update_time = 6; */ @java.lang.Override public com.google.protobuf.TimestampOrBuilder getSourceUpdateTimeOrBuilder() { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } public static final int CVSS_VERSION_FIELD_NUMBER = 7; private int cvssVersion_ = 0; /** * * *
   * CVSS version used to populate cvss_score and severity.
   * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @return The enum numeric value on the wire for cvssVersion. */ @java.lang.Override public int getCvssVersionValue() { return cvssVersion_; } /** * * *
   * CVSS version used to populate cvss_score and severity.
   * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @return The cvssVersion. */ @java.lang.Override public io.grafeas.v1.CVSSVersion getCvssVersion() { io.grafeas.v1.CVSSVersion result = io.grafeas.v1.CVSSVersion.forNumber(cvssVersion_); return result == null ? io.grafeas.v1.CVSSVersion.UNRECOGNIZED : result; } public static final int CVSS_V2_FIELD_NUMBER = 8; private io.grafeas.v1.CVSS cvssV2_; /** * * *
   * The full description of the v2 CVSS for this vulnerability.
   * 
* * .grafeas.v1.CVSS cvss_v2 = 8; * * @return Whether the cvssV2 field is set. */ @java.lang.Override public boolean hasCvssV2() { return cvssV2_ != null; } /** * * *
   * The full description of the v2 CVSS for this vulnerability.
   * 
* * .grafeas.v1.CVSS cvss_v2 = 8; * * @return The cvssV2. */ @java.lang.Override public io.grafeas.v1.CVSS getCvssV2() { return cvssV2_ == null ? io.grafeas.v1.CVSS.getDefaultInstance() : cvssV2_; } /** * * *
   * The full description of the v2 CVSS for this vulnerability.
   * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ @java.lang.Override public io.grafeas.v1.CVSSOrBuilder getCvssV2OrBuilder() { return cvssV2_ == null ? io.grafeas.v1.CVSS.getDefaultInstance() : cvssV2_; } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (java.lang.Float.floatToRawIntBits(cvssScore_) != 0) { output.writeFloat(1, cvssScore_); } if (severity_ != io.grafeas.v1.Severity.SEVERITY_UNSPECIFIED.getNumber()) { output.writeEnum(2, severity_); } for (int i = 0; i < details_.size(); i++) { output.writeMessage(3, details_.get(i)); } if (cvssV3_ != null) { output.writeMessage(4, getCvssV3()); } for (int i = 0; i < windowsDetails_.size(); i++) { output.writeMessage(5, windowsDetails_.get(i)); } if (sourceUpdateTime_ != null) { output.writeMessage(6, getSourceUpdateTime()); } if (cvssVersion_ != io.grafeas.v1.CVSSVersion.CVSS_VERSION_UNSPECIFIED.getNumber()) { output.writeEnum(7, cvssVersion_); } if (cvssV2_ != null) { output.writeMessage(8, getCvssV2()); } getUnknownFields().writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (java.lang.Float.floatToRawIntBits(cvssScore_) != 0) { size += com.google.protobuf.CodedOutputStream.computeFloatSize(1, cvssScore_); } if (severity_ != io.grafeas.v1.Severity.SEVERITY_UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(2, severity_); } for (int i = 0; i < details_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, details_.get(i)); } if (cvssV3_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(4, getCvssV3()); } for (int i = 0; i < windowsDetails_.size(); i++) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(5, windowsDetails_.get(i)); } if (sourceUpdateTime_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(6, getSourceUpdateTime()); } if (cvssVersion_ != io.grafeas.v1.CVSSVersion.CVSS_VERSION_UNSPECIFIED.getNumber()) { size += com.google.protobuf.CodedOutputStream.computeEnumSize(7, cvssVersion_); } if (cvssV2_ != null) { size += com.google.protobuf.CodedOutputStream.computeMessageSize(8, getCvssV2()); } size += getUnknownFields().getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof io.grafeas.v1.VulnerabilityNote)) { return super.equals(obj); } io.grafeas.v1.VulnerabilityNote other = (io.grafeas.v1.VulnerabilityNote) obj; if (java.lang.Float.floatToIntBits(getCvssScore()) != java.lang.Float.floatToIntBits(other.getCvssScore())) return false; if (severity_ != other.severity_) return false; if (!getDetailsList().equals(other.getDetailsList())) return false; if (hasCvssV3() != other.hasCvssV3()) return false; if (hasCvssV3()) { if (!getCvssV3().equals(other.getCvssV3())) return false; } if (!getWindowsDetailsList().equals(other.getWindowsDetailsList())) return false; if (hasSourceUpdateTime() != other.hasSourceUpdateTime()) return false; if (hasSourceUpdateTime()) { if (!getSourceUpdateTime().equals(other.getSourceUpdateTime())) return false; } if (cvssVersion_ != other.cvssVersion_) return false; if (hasCvssV2() != other.hasCvssV2()) return false; if (hasCvssV2()) { if (!getCvssV2().equals(other.getCvssV2())) return false; } if (!getUnknownFields().equals(other.getUnknownFields())) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + CVSS_SCORE_FIELD_NUMBER; hash = (53 * hash) + java.lang.Float.floatToIntBits(getCvssScore()); hash = (37 * hash) + SEVERITY_FIELD_NUMBER; hash = (53 * hash) + severity_; if (getDetailsCount() > 0) { hash = (37 * hash) + DETAILS_FIELD_NUMBER; hash = (53 * hash) + getDetailsList().hashCode(); } if (hasCvssV3()) { hash = (37 * hash) + CVSS_V3_FIELD_NUMBER; hash = (53 * hash) + getCvssV3().hashCode(); } if (getWindowsDetailsCount() > 0) { hash = (37 * hash) + WINDOWS_DETAILS_FIELD_NUMBER; hash = (53 * hash) + getWindowsDetailsList().hashCode(); } if (hasSourceUpdateTime()) { hash = (37 * hash) + SOURCE_UPDATE_TIME_FIELD_NUMBER; hash = (53 * hash) + getSourceUpdateTime().hashCode(); } hash = (37 * hash) + CVSS_VERSION_FIELD_NUMBER; hash = (53 * hash) + cvssVersion_; if (hasCvssV2()) { hash = (37 * hash) + CVSS_V2_FIELD_NUMBER; hash = (53 * hash) + getCvssV2().hashCode(); } hash = (29 * hash) + getUnknownFields().hashCode(); memoizedHashCode = hash; return hash; } public static io.grafeas.v1.VulnerabilityNote parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static io.grafeas.v1.VulnerabilityNote parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( PARSER, input, extensionRegistry); } public static io.grafeas.v1.VulnerabilityNote parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); } public static io.grafeas.v1.VulnerabilityNote parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3.parseWithIOException( PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(io.grafeas.v1.VulnerabilityNote prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** * * *
   * A security vulnerability that can be found in resources.
   * 
* * Protobuf type {@code grafeas.v1.VulnerabilityNote} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:grafeas.v1.VulnerabilityNote) io.grafeas.v1.VulnerabilityNoteOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return io.grafeas.v1.Vulnerability.internal_static_grafeas_v1_VulnerabilityNote_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return io.grafeas.v1.Vulnerability .internal_static_grafeas_v1_VulnerabilityNote_fieldAccessorTable .ensureFieldAccessorsInitialized( io.grafeas.v1.VulnerabilityNote.class, io.grafeas.v1.VulnerabilityNote.Builder.class); } // Construct using io.grafeas.v1.VulnerabilityNote.newBuilder() private Builder() {} private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); } @java.lang.Override public Builder clear() { super.clear(); bitField0_ = 0; cvssScore_ = 0F; severity_ = 0; if (detailsBuilder_ == null) { details_ = java.util.Collections.emptyList(); } else { details_ = null; detailsBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000004); cvssV3_ = null; if (cvssV3Builder_ != null) { cvssV3Builder_.dispose(); cvssV3Builder_ = null; } if (windowsDetailsBuilder_ == null) { windowsDetails_ = java.util.Collections.emptyList(); } else { windowsDetails_ = null; windowsDetailsBuilder_.clear(); } bitField0_ = (bitField0_ & ~0x00000010); sourceUpdateTime_ = null; if (sourceUpdateTimeBuilder_ != null) { sourceUpdateTimeBuilder_.dispose(); sourceUpdateTimeBuilder_ = null; } cvssVersion_ = 0; cvssV2_ = null; if (cvssV2Builder_ != null) { cvssV2Builder_.dispose(); cvssV2Builder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return io.grafeas.v1.Vulnerability.internal_static_grafeas_v1_VulnerabilityNote_descriptor; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote getDefaultInstanceForType() { return io.grafeas.v1.VulnerabilityNote.getDefaultInstance(); } @java.lang.Override public io.grafeas.v1.VulnerabilityNote build() { io.grafeas.v1.VulnerabilityNote result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote buildPartial() { io.grafeas.v1.VulnerabilityNote result = new io.grafeas.v1.VulnerabilityNote(this); buildPartialRepeatedFields(result); if (bitField0_ != 0) { buildPartial0(result); } onBuilt(); return result; } private void buildPartialRepeatedFields(io.grafeas.v1.VulnerabilityNote result) { if (detailsBuilder_ == null) { if (((bitField0_ & 0x00000004) != 0)) { details_ = java.util.Collections.unmodifiableList(details_); bitField0_ = (bitField0_ & ~0x00000004); } result.details_ = details_; } else { result.details_ = detailsBuilder_.build(); } if (windowsDetailsBuilder_ == null) { if (((bitField0_ & 0x00000010) != 0)) { windowsDetails_ = java.util.Collections.unmodifiableList(windowsDetails_); bitField0_ = (bitField0_ & ~0x00000010); } result.windowsDetails_ = windowsDetails_; } else { result.windowsDetails_ = windowsDetailsBuilder_.build(); } } private void buildPartial0(io.grafeas.v1.VulnerabilityNote result) { int from_bitField0_ = bitField0_; if (((from_bitField0_ & 0x00000001) != 0)) { result.cvssScore_ = cvssScore_; } if (((from_bitField0_ & 0x00000002) != 0)) { result.severity_ = severity_; } if (((from_bitField0_ & 0x00000008) != 0)) { result.cvssV3_ = cvssV3Builder_ == null ? cvssV3_ : cvssV3Builder_.build(); } if (((from_bitField0_ & 0x00000020) != 0)) { result.sourceUpdateTime_ = sourceUpdateTimeBuilder_ == null ? sourceUpdateTime_ : sourceUpdateTimeBuilder_.build(); } if (((from_bitField0_ & 0x00000040) != 0)) { result.cvssVersion_ = cvssVersion_; } if (((from_bitField0_ & 0x00000080) != 0)) { result.cvssV2_ = cvssV2Builder_ == null ? cvssV2_ : cvssV2Builder_.build(); } } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof io.grafeas.v1.VulnerabilityNote) { return mergeFrom((io.grafeas.v1.VulnerabilityNote) other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(io.grafeas.v1.VulnerabilityNote other) { if (other == io.grafeas.v1.VulnerabilityNote.getDefaultInstance()) return this; if (other.getCvssScore() != 0F) { setCvssScore(other.getCvssScore()); } if (other.severity_ != 0) { setSeverityValue(other.getSeverityValue()); } if (detailsBuilder_ == null) { if (!other.details_.isEmpty()) { if (details_.isEmpty()) { details_ = other.details_; bitField0_ = (bitField0_ & ~0x00000004); } else { ensureDetailsIsMutable(); details_.addAll(other.details_); } onChanged(); } } else { if (!other.details_.isEmpty()) { if (detailsBuilder_.isEmpty()) { detailsBuilder_.dispose(); detailsBuilder_ = null; details_ = other.details_; bitField0_ = (bitField0_ & ~0x00000004); detailsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getDetailsFieldBuilder() : null; } else { detailsBuilder_.addAllMessages(other.details_); } } } if (other.hasCvssV3()) { mergeCvssV3(other.getCvssV3()); } if (windowsDetailsBuilder_ == null) { if (!other.windowsDetails_.isEmpty()) { if (windowsDetails_.isEmpty()) { windowsDetails_ = other.windowsDetails_; bitField0_ = (bitField0_ & ~0x00000010); } else { ensureWindowsDetailsIsMutable(); windowsDetails_.addAll(other.windowsDetails_); } onChanged(); } } else { if (!other.windowsDetails_.isEmpty()) { if (windowsDetailsBuilder_.isEmpty()) { windowsDetailsBuilder_.dispose(); windowsDetailsBuilder_ = null; windowsDetails_ = other.windowsDetails_; bitField0_ = (bitField0_ & ~0x00000010); windowsDetailsBuilder_ = com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ? getWindowsDetailsFieldBuilder() : null; } else { windowsDetailsBuilder_.addAllMessages(other.windowsDetails_); } } } if (other.hasSourceUpdateTime()) { mergeSourceUpdateTime(other.getSourceUpdateTime()); } if (other.cvssVersion_ != 0) { setCvssVersionValue(other.getCvssVersionValue()); } if (other.hasCvssV2()) { mergeCvssV2(other.getCvssV2()); } this.mergeUnknownFields(other.getUnknownFields()); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 13: { cvssScore_ = input.readFloat(); bitField0_ |= 0x00000001; break; } // case 13 case 16: { severity_ = input.readEnum(); bitField0_ |= 0x00000002; break; } // case 16 case 26: { io.grafeas.v1.VulnerabilityNote.Detail m = input.readMessage( io.grafeas.v1.VulnerabilityNote.Detail.parser(), extensionRegistry); if (detailsBuilder_ == null) { ensureDetailsIsMutable(); details_.add(m); } else { detailsBuilder_.addMessage(m); } break; } // case 26 case 34: { input.readMessage(getCvssV3FieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000008; break; } // case 34 case 42: { io.grafeas.v1.VulnerabilityNote.WindowsDetail m = input.readMessage( io.grafeas.v1.VulnerabilityNote.WindowsDetail.parser(), extensionRegistry); if (windowsDetailsBuilder_ == null) { ensureWindowsDetailsIsMutable(); windowsDetails_.add(m); } else { windowsDetailsBuilder_.addMessage(m); } break; } // case 42 case 50: { input.readMessage( getSourceUpdateTimeFieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000020; break; } // case 50 case 56: { cvssVersion_ = input.readEnum(); bitField0_ |= 0x00000040; break; } // case 56 case 66: { input.readMessage(getCvssV2FieldBuilder().getBuilder(), extensionRegistry); bitField0_ |= 0x00000080; break; } // case 66 default: { if (!super.parseUnknownField(input, extensionRegistry, tag)) { done = true; // was an endgroup tag } break; } // default: } // switch (tag) } // while (!done) } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.unwrapIOException(); } finally { onChanged(); } // finally return this; } private int bitField0_; private float cvssScore_; /** * * *
     * The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
     * where 0 indicates low severity and 10 indicates high severity.
     * 
* * float cvss_score = 1; * * @return The cvssScore. */ @java.lang.Override public float getCvssScore() { return cvssScore_; } /** * * *
     * The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
     * where 0 indicates low severity and 10 indicates high severity.
     * 
* * float cvss_score = 1; * * @param value The cvssScore to set. * @return This builder for chaining. */ public Builder setCvssScore(float value) { cvssScore_ = value; bitField0_ |= 0x00000001; onChanged(); return this; } /** * * *
     * The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10
     * where 0 indicates low severity and 10 indicates high severity.
     * 
* * float cvss_score = 1; * * @return This builder for chaining. */ public Builder clearCvssScore() { bitField0_ = (bitField0_ & ~0x00000001); cvssScore_ = 0F; onChanged(); return this; } private int severity_ = 0; /** * * *
     * The note provider assigned severity of this vulnerability.
     * 
* * .grafeas.v1.Severity severity = 2; * * @return The enum numeric value on the wire for severity. */ @java.lang.Override public int getSeverityValue() { return severity_; } /** * * *
     * The note provider assigned severity of this vulnerability.
     * 
* * .grafeas.v1.Severity severity = 2; * * @param value The enum numeric value on the wire for severity to set. * @return This builder for chaining. */ public Builder setSeverityValue(int value) { severity_ = value; bitField0_ |= 0x00000002; onChanged(); return this; } /** * * *
     * The note provider assigned severity of this vulnerability.
     * 
* * .grafeas.v1.Severity severity = 2; * * @return The severity. */ @java.lang.Override public io.grafeas.v1.Severity getSeverity() { io.grafeas.v1.Severity result = io.grafeas.v1.Severity.forNumber(severity_); return result == null ? io.grafeas.v1.Severity.UNRECOGNIZED : result; } /** * * *
     * The note provider assigned severity of this vulnerability.
     * 
* * .grafeas.v1.Severity severity = 2; * * @param value The severity to set. * @return This builder for chaining. */ public Builder setSeverity(io.grafeas.v1.Severity value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000002; severity_ = value.getNumber(); onChanged(); return this; } /** * * *
     * The note provider assigned severity of this vulnerability.
     * 
* * .grafeas.v1.Severity severity = 2; * * @return This builder for chaining. */ public Builder clearSeverity() { bitField0_ = (bitField0_ & ~0x00000002); severity_ = 0; onChanged(); return this; } private java.util.List details_ = java.util.Collections.emptyList(); private void ensureDetailsIsMutable() { if (!((bitField0_ & 0x00000004) != 0)) { details_ = new java.util.ArrayList(details_); bitField0_ |= 0x00000004; } } private com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.Detail, io.grafeas.v1.VulnerabilityNote.Detail.Builder, io.grafeas.v1.VulnerabilityNote.DetailOrBuilder> detailsBuilder_; /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public java.util.List getDetailsList() { if (detailsBuilder_ == null) { return java.util.Collections.unmodifiableList(details_); } else { return detailsBuilder_.getMessageList(); } } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public int getDetailsCount() { if (detailsBuilder_ == null) { return details_.size(); } else { return detailsBuilder_.getCount(); } } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public io.grafeas.v1.VulnerabilityNote.Detail getDetails(int index) { if (detailsBuilder_ == null) { return details_.get(index); } else { return detailsBuilder_.getMessage(index); } } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder setDetails(int index, io.grafeas.v1.VulnerabilityNote.Detail value) { if (detailsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureDetailsIsMutable(); details_.set(index, value); onChanged(); } else { detailsBuilder_.setMessage(index, value); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder setDetails( int index, io.grafeas.v1.VulnerabilityNote.Detail.Builder builderForValue) { if (detailsBuilder_ == null) { ensureDetailsIsMutable(); details_.set(index, builderForValue.build()); onChanged(); } else { detailsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder addDetails(io.grafeas.v1.VulnerabilityNote.Detail value) { if (detailsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureDetailsIsMutable(); details_.add(value); onChanged(); } else { detailsBuilder_.addMessage(value); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder addDetails(int index, io.grafeas.v1.VulnerabilityNote.Detail value) { if (detailsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureDetailsIsMutable(); details_.add(index, value); onChanged(); } else { detailsBuilder_.addMessage(index, value); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder addDetails(io.grafeas.v1.VulnerabilityNote.Detail.Builder builderForValue) { if (detailsBuilder_ == null) { ensureDetailsIsMutable(); details_.add(builderForValue.build()); onChanged(); } else { detailsBuilder_.addMessage(builderForValue.build()); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder addDetails( int index, io.grafeas.v1.VulnerabilityNote.Detail.Builder builderForValue) { if (detailsBuilder_ == null) { ensureDetailsIsMutable(); details_.add(index, builderForValue.build()); onChanged(); } else { detailsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder addAllDetails( java.lang.Iterable values) { if (detailsBuilder_ == null) { ensureDetailsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll(values, details_); onChanged(); } else { detailsBuilder_.addAllMessages(values); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder clearDetails() { if (detailsBuilder_ == null) { details_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000004); onChanged(); } else { detailsBuilder_.clear(); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public Builder removeDetails(int index) { if (detailsBuilder_ == null) { ensureDetailsIsMutable(); details_.remove(index); onChanged(); } else { detailsBuilder_.remove(index); } return this; } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public io.grafeas.v1.VulnerabilityNote.Detail.Builder getDetailsBuilder(int index) { return getDetailsFieldBuilder().getBuilder(index); } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public io.grafeas.v1.VulnerabilityNote.DetailOrBuilder getDetailsOrBuilder(int index) { if (detailsBuilder_ == null) { return details_.get(index); } else { return detailsBuilder_.getMessageOrBuilder(index); } } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public java.util.List getDetailsOrBuilderList() { if (detailsBuilder_ != null) { return detailsBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(details_); } } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public io.grafeas.v1.VulnerabilityNote.Detail.Builder addDetailsBuilder() { return getDetailsFieldBuilder() .addBuilder(io.grafeas.v1.VulnerabilityNote.Detail.getDefaultInstance()); } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public io.grafeas.v1.VulnerabilityNote.Detail.Builder addDetailsBuilder(int index) { return getDetailsFieldBuilder() .addBuilder(index, io.grafeas.v1.VulnerabilityNote.Detail.getDefaultInstance()); } /** * * *
     * Details of all known distros and packages affected by this vulnerability.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.Detail details = 3; */ public java.util.List getDetailsBuilderList() { return getDetailsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.Detail, io.grafeas.v1.VulnerabilityNote.Detail.Builder, io.grafeas.v1.VulnerabilityNote.DetailOrBuilder> getDetailsFieldBuilder() { if (detailsBuilder_ == null) { detailsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.Detail, io.grafeas.v1.VulnerabilityNote.Detail.Builder, io.grafeas.v1.VulnerabilityNote.DetailOrBuilder>( details_, ((bitField0_ & 0x00000004) != 0), getParentForChildren(), isClean()); details_ = null; } return detailsBuilder_; } private io.grafeas.v1.CVSSv3 cvssV3_; private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.CVSSv3, io.grafeas.v1.CVSSv3.Builder, io.grafeas.v1.CVSSv3OrBuilder> cvssV3Builder_; /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; * * @return Whether the cvssV3 field is set. */ public boolean hasCvssV3() { return ((bitField0_ & 0x00000008) != 0); } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; * * @return The cvssV3. */ public io.grafeas.v1.CVSSv3 getCvssV3() { if (cvssV3Builder_ == null) { return cvssV3_ == null ? io.grafeas.v1.CVSSv3.getDefaultInstance() : cvssV3_; } else { return cvssV3Builder_.getMessage(); } } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ public Builder setCvssV3(io.grafeas.v1.CVSSv3 value) { if (cvssV3Builder_ == null) { if (value == null) { throw new NullPointerException(); } cvssV3_ = value; } else { cvssV3Builder_.setMessage(value); } bitField0_ |= 0x00000008; onChanged(); return this; } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ public Builder setCvssV3(io.grafeas.v1.CVSSv3.Builder builderForValue) { if (cvssV3Builder_ == null) { cvssV3_ = builderForValue.build(); } else { cvssV3Builder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000008; onChanged(); return this; } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ public Builder mergeCvssV3(io.grafeas.v1.CVSSv3 value) { if (cvssV3Builder_ == null) { if (((bitField0_ & 0x00000008) != 0) && cvssV3_ != null && cvssV3_ != io.grafeas.v1.CVSSv3.getDefaultInstance()) { getCvssV3Builder().mergeFrom(value); } else { cvssV3_ = value; } } else { cvssV3Builder_.mergeFrom(value); } bitField0_ |= 0x00000008; onChanged(); return this; } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ public Builder clearCvssV3() { bitField0_ = (bitField0_ & ~0x00000008); cvssV3_ = null; if (cvssV3Builder_ != null) { cvssV3Builder_.dispose(); cvssV3Builder_ = null; } onChanged(); return this; } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ public io.grafeas.v1.CVSSv3.Builder getCvssV3Builder() { bitField0_ |= 0x00000008; onChanged(); return getCvssV3FieldBuilder().getBuilder(); } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ public io.grafeas.v1.CVSSv3OrBuilder getCvssV3OrBuilder() { if (cvssV3Builder_ != null) { return cvssV3Builder_.getMessageOrBuilder(); } else { return cvssV3_ == null ? io.grafeas.v1.CVSSv3.getDefaultInstance() : cvssV3_; } } /** * * *
     * The full description of the CVSSv3 for this vulnerability.
     * 
* * .grafeas.v1.CVSSv3 cvss_v3 = 4; */ private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.CVSSv3, io.grafeas.v1.CVSSv3.Builder, io.grafeas.v1.CVSSv3OrBuilder> getCvssV3FieldBuilder() { if (cvssV3Builder_ == null) { cvssV3Builder_ = new com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.CVSSv3, io.grafeas.v1.CVSSv3.Builder, io.grafeas.v1.CVSSv3OrBuilder>( getCvssV3(), getParentForChildren(), isClean()); cvssV3_ = null; } return cvssV3Builder_; } private java.util.List windowsDetails_ = java.util.Collections.emptyList(); private void ensureWindowsDetailsIsMutable() { if (!((bitField0_ & 0x00000010) != 0)) { windowsDetails_ = new java.util.ArrayList(windowsDetails_); bitField0_ |= 0x00000010; } } private com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.WindowsDetail, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder, io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder> windowsDetailsBuilder_; /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public java.util.List getWindowsDetailsList() { if (windowsDetailsBuilder_ == null) { return java.util.Collections.unmodifiableList(windowsDetails_); } else { return windowsDetailsBuilder_.getMessageList(); } } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public int getWindowsDetailsCount() { if (windowsDetailsBuilder_ == null) { return windowsDetails_.size(); } else { return windowsDetailsBuilder_.getCount(); } } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail getWindowsDetails(int index) { if (windowsDetailsBuilder_ == null) { return windowsDetails_.get(index); } else { return windowsDetailsBuilder_.getMessage(index); } } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder setWindowsDetails( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail value) { if (windowsDetailsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureWindowsDetailsIsMutable(); windowsDetails_.set(index, value); onChanged(); } else { windowsDetailsBuilder_.setMessage(index, value); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder setWindowsDetails( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder builderForValue) { if (windowsDetailsBuilder_ == null) { ensureWindowsDetailsIsMutable(); windowsDetails_.set(index, builderForValue.build()); onChanged(); } else { windowsDetailsBuilder_.setMessage(index, builderForValue.build()); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder addWindowsDetails(io.grafeas.v1.VulnerabilityNote.WindowsDetail value) { if (windowsDetailsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureWindowsDetailsIsMutable(); windowsDetails_.add(value); onChanged(); } else { windowsDetailsBuilder_.addMessage(value); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder addWindowsDetails( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail value) { if (windowsDetailsBuilder_ == null) { if (value == null) { throw new NullPointerException(); } ensureWindowsDetailsIsMutable(); windowsDetails_.add(index, value); onChanged(); } else { windowsDetailsBuilder_.addMessage(index, value); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder addWindowsDetails( io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder builderForValue) { if (windowsDetailsBuilder_ == null) { ensureWindowsDetailsIsMutable(); windowsDetails_.add(builderForValue.build()); onChanged(); } else { windowsDetailsBuilder_.addMessage(builderForValue.build()); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder addWindowsDetails( int index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder builderForValue) { if (windowsDetailsBuilder_ == null) { ensureWindowsDetailsIsMutable(); windowsDetails_.add(index, builderForValue.build()); onChanged(); } else { windowsDetailsBuilder_.addMessage(index, builderForValue.build()); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder addAllWindowsDetails( java.lang.Iterable values) { if (windowsDetailsBuilder_ == null) { ensureWindowsDetailsIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll(values, windowsDetails_); onChanged(); } else { windowsDetailsBuilder_.addAllMessages(values); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder clearWindowsDetails() { if (windowsDetailsBuilder_ == null) { windowsDetails_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000010); onChanged(); } else { windowsDetailsBuilder_.clear(); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public Builder removeWindowsDetails(int index) { if (windowsDetailsBuilder_ == null) { ensureWindowsDetailsIsMutable(); windowsDetails_.remove(index); onChanged(); } else { windowsDetailsBuilder_.remove(index); } return this; } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder getWindowsDetailsBuilder( int index) { return getWindowsDetailsFieldBuilder().getBuilder(index); } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder getWindowsDetailsOrBuilder( int index) { if (windowsDetailsBuilder_ == null) { return windowsDetails_.get(index); } else { return windowsDetailsBuilder_.getMessageOrBuilder(index); } } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public java.util.List getWindowsDetailsOrBuilderList() { if (windowsDetailsBuilder_ != null) { return windowsDetailsBuilder_.getMessageOrBuilderList(); } else { return java.util.Collections.unmodifiableList(windowsDetails_); } } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder addWindowsDetailsBuilder() { return getWindowsDetailsFieldBuilder() .addBuilder(io.grafeas.v1.VulnerabilityNote.WindowsDetail.getDefaultInstance()); } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder addWindowsDetailsBuilder( int index) { return getWindowsDetailsFieldBuilder() .addBuilder(index, io.grafeas.v1.VulnerabilityNote.WindowsDetail.getDefaultInstance()); } /** * * *
     * Windows details get their own format because the information format and
     * model don't match a normal detail. Specifically Windows updates are done as
     * patches, thus Windows vulnerabilities really are a missing package, rather
     * than a package being at an incorrect version.
     * 
* * repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5; */ public java.util.List getWindowsDetailsBuilderList() { return getWindowsDetailsFieldBuilder().getBuilderList(); } private com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.WindowsDetail, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder, io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder> getWindowsDetailsFieldBuilder() { if (windowsDetailsBuilder_ == null) { windowsDetailsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3< io.grafeas.v1.VulnerabilityNote.WindowsDetail, io.grafeas.v1.VulnerabilityNote.WindowsDetail.Builder, io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder>( windowsDetails_, ((bitField0_ & 0x00000010) != 0), getParentForChildren(), isClean()); windowsDetails_ = null; } return windowsDetailsBuilder_; } private com.google.protobuf.Timestamp sourceUpdateTime_; private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> sourceUpdateTimeBuilder_; /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; * * @return Whether the sourceUpdateTime field is set. */ public boolean hasSourceUpdateTime() { return ((bitField0_ & 0x00000020) != 0); } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; * * @return The sourceUpdateTime. */ public com.google.protobuf.Timestamp getSourceUpdateTime() { if (sourceUpdateTimeBuilder_ == null) { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } else { return sourceUpdateTimeBuilder_.getMessage(); } } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ public Builder setSourceUpdateTime(com.google.protobuf.Timestamp value) { if (sourceUpdateTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } sourceUpdateTime_ = value; } else { sourceUpdateTimeBuilder_.setMessage(value); } bitField0_ |= 0x00000020; onChanged(); return this; } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ public Builder setSourceUpdateTime(com.google.protobuf.Timestamp.Builder builderForValue) { if (sourceUpdateTimeBuilder_ == null) { sourceUpdateTime_ = builderForValue.build(); } else { sourceUpdateTimeBuilder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000020; onChanged(); return this; } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ public Builder mergeSourceUpdateTime(com.google.protobuf.Timestamp value) { if (sourceUpdateTimeBuilder_ == null) { if (((bitField0_ & 0x00000020) != 0) && sourceUpdateTime_ != null && sourceUpdateTime_ != com.google.protobuf.Timestamp.getDefaultInstance()) { getSourceUpdateTimeBuilder().mergeFrom(value); } else { sourceUpdateTime_ = value; } } else { sourceUpdateTimeBuilder_.mergeFrom(value); } bitField0_ |= 0x00000020; onChanged(); return this; } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ public Builder clearSourceUpdateTime() { bitField0_ = (bitField0_ & ~0x00000020); sourceUpdateTime_ = null; if (sourceUpdateTimeBuilder_ != null) { sourceUpdateTimeBuilder_.dispose(); sourceUpdateTimeBuilder_ = null; } onChanged(); return this; } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ public com.google.protobuf.Timestamp.Builder getSourceUpdateTimeBuilder() { bitField0_ |= 0x00000020; onChanged(); return getSourceUpdateTimeFieldBuilder().getBuilder(); } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ public com.google.protobuf.TimestampOrBuilder getSourceUpdateTimeOrBuilder() { if (sourceUpdateTimeBuilder_ != null) { return sourceUpdateTimeBuilder_.getMessageOrBuilder(); } else { return sourceUpdateTime_ == null ? com.google.protobuf.Timestamp.getDefaultInstance() : sourceUpdateTime_; } } /** * * *
     * The time this information was last changed at the source. This is an
     * upstream timestamp from the underlying information source - e.g. Ubuntu
     * security tracker.
     * 
* * .google.protobuf.Timestamp source_update_time = 6; */ private com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder> getSourceUpdateTimeFieldBuilder() { if (sourceUpdateTimeBuilder_ == null) { sourceUpdateTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.google.protobuf.Timestamp, com.google.protobuf.Timestamp.Builder, com.google.protobuf.TimestampOrBuilder>( getSourceUpdateTime(), getParentForChildren(), isClean()); sourceUpdateTime_ = null; } return sourceUpdateTimeBuilder_; } private int cvssVersion_ = 0; /** * * *
     * CVSS version used to populate cvss_score and severity.
     * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @return The enum numeric value on the wire for cvssVersion. */ @java.lang.Override public int getCvssVersionValue() { return cvssVersion_; } /** * * *
     * CVSS version used to populate cvss_score and severity.
     * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @param value The enum numeric value on the wire for cvssVersion to set. * @return This builder for chaining. */ public Builder setCvssVersionValue(int value) { cvssVersion_ = value; bitField0_ |= 0x00000040; onChanged(); return this; } /** * * *
     * CVSS version used to populate cvss_score and severity.
     * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @return The cvssVersion. */ @java.lang.Override public io.grafeas.v1.CVSSVersion getCvssVersion() { io.grafeas.v1.CVSSVersion result = io.grafeas.v1.CVSSVersion.forNumber(cvssVersion_); return result == null ? io.grafeas.v1.CVSSVersion.UNRECOGNIZED : result; } /** * * *
     * CVSS version used to populate cvss_score and severity.
     * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @param value The cvssVersion to set. * @return This builder for chaining. */ public Builder setCvssVersion(io.grafeas.v1.CVSSVersion value) { if (value == null) { throw new NullPointerException(); } bitField0_ |= 0x00000040; cvssVersion_ = value.getNumber(); onChanged(); return this; } /** * * *
     * CVSS version used to populate cvss_score and severity.
     * 
* * .grafeas.v1.CVSSVersion cvss_version = 7; * * @return This builder for chaining. */ public Builder clearCvssVersion() { bitField0_ = (bitField0_ & ~0x00000040); cvssVersion_ = 0; onChanged(); return this; } private io.grafeas.v1.CVSS cvssV2_; private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.CVSS, io.grafeas.v1.CVSS.Builder, io.grafeas.v1.CVSSOrBuilder> cvssV2Builder_; /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; * * @return Whether the cvssV2 field is set. */ public boolean hasCvssV2() { return ((bitField0_ & 0x00000080) != 0); } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; * * @return The cvssV2. */ public io.grafeas.v1.CVSS getCvssV2() { if (cvssV2Builder_ == null) { return cvssV2_ == null ? io.grafeas.v1.CVSS.getDefaultInstance() : cvssV2_; } else { return cvssV2Builder_.getMessage(); } } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ public Builder setCvssV2(io.grafeas.v1.CVSS value) { if (cvssV2Builder_ == null) { if (value == null) { throw new NullPointerException(); } cvssV2_ = value; } else { cvssV2Builder_.setMessage(value); } bitField0_ |= 0x00000080; onChanged(); return this; } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ public Builder setCvssV2(io.grafeas.v1.CVSS.Builder builderForValue) { if (cvssV2Builder_ == null) { cvssV2_ = builderForValue.build(); } else { cvssV2Builder_.setMessage(builderForValue.build()); } bitField0_ |= 0x00000080; onChanged(); return this; } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ public Builder mergeCvssV2(io.grafeas.v1.CVSS value) { if (cvssV2Builder_ == null) { if (((bitField0_ & 0x00000080) != 0) && cvssV2_ != null && cvssV2_ != io.grafeas.v1.CVSS.getDefaultInstance()) { getCvssV2Builder().mergeFrom(value); } else { cvssV2_ = value; } } else { cvssV2Builder_.mergeFrom(value); } bitField0_ |= 0x00000080; onChanged(); return this; } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ public Builder clearCvssV2() { bitField0_ = (bitField0_ & ~0x00000080); cvssV2_ = null; if (cvssV2Builder_ != null) { cvssV2Builder_.dispose(); cvssV2Builder_ = null; } onChanged(); return this; } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ public io.grafeas.v1.CVSS.Builder getCvssV2Builder() { bitField0_ |= 0x00000080; onChanged(); return getCvssV2FieldBuilder().getBuilder(); } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ public io.grafeas.v1.CVSSOrBuilder getCvssV2OrBuilder() { if (cvssV2Builder_ != null) { return cvssV2Builder_.getMessageOrBuilder(); } else { return cvssV2_ == null ? io.grafeas.v1.CVSS.getDefaultInstance() : cvssV2_; } } /** * * *
     * The full description of the v2 CVSS for this vulnerability.
     * 
* * .grafeas.v1.CVSS cvss_v2 = 8; */ private com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.CVSS, io.grafeas.v1.CVSS.Builder, io.grafeas.v1.CVSSOrBuilder> getCvssV2FieldBuilder() { if (cvssV2Builder_ == null) { cvssV2Builder_ = new com.google.protobuf.SingleFieldBuilderV3< io.grafeas.v1.CVSS, io.grafeas.v1.CVSS.Builder, io.grafeas.v1.CVSSOrBuilder>( getCvssV2(), getParentForChildren(), isClean()); cvssV2_ = null; } return cvssV2Builder_; } @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:grafeas.v1.VulnerabilityNote) } // @@protoc_insertion_point(class_scope:grafeas.v1.VulnerabilityNote) private static final io.grafeas.v1.VulnerabilityNote DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new io.grafeas.v1.VulnerabilityNote(); } public static io.grafeas.v1.VulnerabilityNote getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public VulnerabilityNote parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { Builder builder = newBuilder(); try { builder.mergeFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(builder.buildPartial()); } catch (com.google.protobuf.UninitializedMessageException e) { throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial()); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException(e) .setUnfinishedMessage(builder.buildPartial()); } return builder.buildPartial(); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public io.grafeas.v1.VulnerabilityNote getDefaultInstanceForType() { return DEFAULT_INSTANCE; } }