/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. 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. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file 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. */ package com.amazonaws.services.xray.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Information about a connection between two services. An edge can be a synchronous connection, such as typical call * between client and service, or an asynchronous link, such as a Lambda function which retrieves an event from an SNS * queue. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class Edge implements Serializable, Cloneable, StructuredPojo { /** ** Identifier of the edge. Unique within a service map. *
*/ private Integer referenceId; /** ** The start time of the first segment on the edge. *
*/ private java.util.Date startTime; /** ** The end time of the last segment on the edge. *
*/ private java.util.Date endTime; /** ** Response statistics for segments on the edge. *
*/ private EdgeStatistics summaryStatistics; /** ** A histogram that maps the spread of client response times on an edge. Only populated for synchronous edges. *
*/ private java.util.List* Aliases for the edge. *
*/ private java.util.List
* Describes an asynchronous connection, with a value of link
.
*
* A histogram that maps the spread of event age when received by consumers. Age is calculated each time an event is
* received. Only populated when EdgeType is link
.
*
* Identifier of the edge. Unique within a service map. *
* * @param referenceId * Identifier of the edge. Unique within a service map. */ public void setReferenceId(Integer referenceId) { this.referenceId = referenceId; } /** ** Identifier of the edge. Unique within a service map. *
* * @return Identifier of the edge. Unique within a service map. */ public Integer getReferenceId() { return this.referenceId; } /** ** Identifier of the edge. Unique within a service map. *
* * @param referenceId * Identifier of the edge. Unique within a service map. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withReferenceId(Integer referenceId) { setReferenceId(referenceId); return this; } /** ** The start time of the first segment on the edge. *
* * @param startTime * The start time of the first segment on the edge. */ public void setStartTime(java.util.Date startTime) { this.startTime = startTime; } /** ** The start time of the first segment on the edge. *
* * @return The start time of the first segment on the edge. */ public java.util.Date getStartTime() { return this.startTime; } /** ** The start time of the first segment on the edge. *
* * @param startTime * The start time of the first segment on the edge. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withStartTime(java.util.Date startTime) { setStartTime(startTime); return this; } /** ** The end time of the last segment on the edge. *
* * @param endTime * The end time of the last segment on the edge. */ public void setEndTime(java.util.Date endTime) { this.endTime = endTime; } /** ** The end time of the last segment on the edge. *
* * @return The end time of the last segment on the edge. */ public java.util.Date getEndTime() { return this.endTime; } /** ** The end time of the last segment on the edge. *
* * @param endTime * The end time of the last segment on the edge. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withEndTime(java.util.Date endTime) { setEndTime(endTime); return this; } /** ** Response statistics for segments on the edge. *
* * @param summaryStatistics * Response statistics for segments on the edge. */ public void setSummaryStatistics(EdgeStatistics summaryStatistics) { this.summaryStatistics = summaryStatistics; } /** ** Response statistics for segments on the edge. *
* * @return Response statistics for segments on the edge. */ public EdgeStatistics getSummaryStatistics() { return this.summaryStatistics; } /** ** Response statistics for segments on the edge. *
* * @param summaryStatistics * Response statistics for segments on the edge. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withSummaryStatistics(EdgeStatistics summaryStatistics) { setSummaryStatistics(summaryStatistics); return this; } /** ** A histogram that maps the spread of client response times on an edge. Only populated for synchronous edges. *
* * @return A histogram that maps the spread of client response times on an edge. Only populated for synchronous * edges. */ public java.util.List* A histogram that maps the spread of client response times on an edge. Only populated for synchronous edges. *
* * @param responseTimeHistogram * A histogram that maps the spread of client response times on an edge. Only populated for synchronous * edges. */ public void setResponseTimeHistogram(java.util.Collection* A histogram that maps the spread of client response times on an edge. Only populated for synchronous edges. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setResponseTimeHistogram(java.util.Collection)} or * {@link #withResponseTimeHistogram(java.util.Collection)} if you want to override the existing values. *
* * @param responseTimeHistogram * A histogram that maps the spread of client response times on an edge. Only populated for synchronous * edges. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withResponseTimeHistogram(HistogramEntry... responseTimeHistogram) { if (this.responseTimeHistogram == null) { setResponseTimeHistogram(new java.util.ArrayList* A histogram that maps the spread of client response times on an edge. Only populated for synchronous edges. *
* * @param responseTimeHistogram * A histogram that maps the spread of client response times on an edge. Only populated for synchronous * edges. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withResponseTimeHistogram(java.util.Collection* Aliases for the edge. *
* * @return Aliases for the edge. */ public java.util.List* Aliases for the edge. *
* * @param aliases * Aliases for the edge. */ public void setAliases(java.util.Collection* Aliases for the edge. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAliases(java.util.Collection)} or {@link #withAliases(java.util.Collection)} if you want to override * the existing values. *
* * @param aliases * Aliases for the edge. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withAliases(Alias... aliases) { if (this.aliases == null) { setAliases(new java.util.ArrayList* Aliases for the edge. *
* * @param aliases * Aliases for the edge. * @return Returns a reference to this object so that method calls can be chained together. */ public Edge withAliases(java.util.Collection
* Describes an asynchronous connection, with a value of link
.
*
link
.
*/
public void setEdgeType(String edgeType) {
this.edgeType = edgeType;
}
/**
*
* Describes an asynchronous connection, with a value of link
.
*
link
.
*/
public String getEdgeType() {
return this.edgeType;
}
/**
*
* Describes an asynchronous connection, with a value of link
.
*
link
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Edge withEdgeType(String edgeType) {
setEdgeType(edgeType);
return this;
}
/**
*
* A histogram that maps the spread of event age when received by consumers. Age is calculated each time an event is
* received. Only populated when EdgeType is link
.
*
link
.
*/
public java.util.List
* A histogram that maps the spread of event age when received by consumers. Age is calculated each time an event is
* received. Only populated when EdgeType is link
.
*
link
.
*/
public void setReceivedEventAgeHistogram(java.util.Collection
* A histogram that maps the spread of event age when received by consumers. Age is calculated each time an event is
* received. Only populated when EdgeType is link
.
*
* NOTE: This method appends the values to the existing list (if any). Use * {@link #setReceivedEventAgeHistogram(java.util.Collection)} or * {@link #withReceivedEventAgeHistogram(java.util.Collection)} if you want to override the existing values. *
* * @param receivedEventAgeHistogram * A histogram that maps the spread of event age when received by consumers. Age is calculated each time an * event is received. Only populated when EdgeType islink
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Edge withReceivedEventAgeHistogram(HistogramEntry... receivedEventAgeHistogram) {
if (this.receivedEventAgeHistogram == null) {
setReceivedEventAgeHistogram(new java.util.ArrayList
* A histogram that maps the spread of event age when received by consumers. Age is calculated each time an event is
* received. Only populated when EdgeType is link
.
*
link
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Edge withReceivedEventAgeHistogram(java.util.Collection