Class RouteMatrixElement.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessage.Builder<RouteMatrixElement.Builder>
com.google.maps.routing.v2.RouteMatrixElement.Builder
All Implemented Interfaces:
RouteMatrixElementOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
Enclosing class:
RouteMatrixElement

public static final class RouteMatrixElement.Builder extends com.google.protobuf.GeneratedMessage.Builder<RouteMatrixElement.Builder> implements RouteMatrixElementOrBuilder
 Contains route information computed for an origin/destination pair in the
 ComputeRouteMatrix API. This proto can be streamed to the client.
 
Protobuf type google.maps.routing.v2.RouteMatrixElement
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<RouteMatrixElement.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<RouteMatrixElement.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<RouteMatrixElement.Builder>
    • getDefaultInstanceForType

      public RouteMatrixElement getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      public RouteMatrixElement build()
      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public RouteMatrixElement buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • mergeFrom

      public RouteMatrixElement.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<RouteMatrixElement.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<RouteMatrixElement.Builder>
    • mergeFrom

      public RouteMatrixElement.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<RouteMatrixElement.Builder>
      Throws:
      IOException
    • hasOriginIndex

      public boolean hasOriginIndex()
       Zero-based index of the origin in the request.
       
      optional int32 origin_index = 1;
      Specified by:
      hasOriginIndex in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the originIndex field is set.
    • getOriginIndex

      public int getOriginIndex()
       Zero-based index of the origin in the request.
       
      optional int32 origin_index = 1;
      Specified by:
      getOriginIndex in interface RouteMatrixElementOrBuilder
      Returns:
      The originIndex.
    • setOriginIndex

      public RouteMatrixElement.Builder setOriginIndex(int value)
       Zero-based index of the origin in the request.
       
      optional int32 origin_index = 1;
      Parameters:
      value - The originIndex to set.
      Returns:
      This builder for chaining.
    • clearOriginIndex

      public RouteMatrixElement.Builder clearOriginIndex()
       Zero-based index of the origin in the request.
       
      optional int32 origin_index = 1;
      Returns:
      This builder for chaining.
    • hasDestinationIndex

      public boolean hasDestinationIndex()
       Zero-based index of the destination in the request.
       
      optional int32 destination_index = 2;
      Specified by:
      hasDestinationIndex in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the destinationIndex field is set.
    • getDestinationIndex

      public int getDestinationIndex()
       Zero-based index of the destination in the request.
       
      optional int32 destination_index = 2;
      Specified by:
      getDestinationIndex in interface RouteMatrixElementOrBuilder
      Returns:
      The destinationIndex.
    • setDestinationIndex

      public RouteMatrixElement.Builder setDestinationIndex(int value)
       Zero-based index of the destination in the request.
       
      optional int32 destination_index = 2;
      Parameters:
      value - The destinationIndex to set.
      Returns:
      This builder for chaining.
    • clearDestinationIndex

      public RouteMatrixElement.Builder clearDestinationIndex()
       Zero-based index of the destination in the request.
       
      optional int32 destination_index = 2;
      Returns:
      This builder for chaining.
    • hasStatus

      public boolean hasStatus()
       Error status code for this element.
       
      .google.rpc.Status status = 3;
      Specified by:
      hasStatus in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the status field is set.
    • getStatus

      public Status getStatus()
       Error status code for this element.
       
      .google.rpc.Status status = 3;
      Specified by:
      getStatus in interface RouteMatrixElementOrBuilder
      Returns:
      The status.
    • setStatus

      public RouteMatrixElement.Builder setStatus(Status value)
       Error status code for this element.
       
      .google.rpc.Status status = 3;
    • setStatus

      public RouteMatrixElement.Builder setStatus(Status.Builder builderForValue)
       Error status code for this element.
       
      .google.rpc.Status status = 3;
    • mergeStatus

      public RouteMatrixElement.Builder mergeStatus(Status value)
       Error status code for this element.
       
      .google.rpc.Status status = 3;
    • clearStatus

      public RouteMatrixElement.Builder clearStatus()
       Error status code for this element.
       
      .google.rpc.Status status = 3;
    • getStatusBuilder

      public Status.Builder getStatusBuilder()
       Error status code for this element.
       
      .google.rpc.Status status = 3;
    • getStatusOrBuilder

      public StatusOrBuilder getStatusOrBuilder()
       Error status code for this element.
       
      .google.rpc.Status status = 3;
      Specified by:
      getStatusOrBuilder in interface RouteMatrixElementOrBuilder
    • getConditionValue

      public int getConditionValue()
       Indicates whether the route was found or not. Independent of status.
       
      .google.maps.routing.v2.RouteMatrixElementCondition condition = 9;
      Specified by:
      getConditionValue in interface RouteMatrixElementOrBuilder
      Returns:
      The enum numeric value on the wire for condition.
    • setConditionValue

      public RouteMatrixElement.Builder setConditionValue(int value)
       Indicates whether the route was found or not. Independent of status.
       
      .google.maps.routing.v2.RouteMatrixElementCondition condition = 9;
      Parameters:
      value - The enum numeric value on the wire for condition to set.
      Returns:
      This builder for chaining.
    • getCondition

      public RouteMatrixElementCondition getCondition()
       Indicates whether the route was found or not. Independent of status.
       
      .google.maps.routing.v2.RouteMatrixElementCondition condition = 9;
      Specified by:
      getCondition in interface RouteMatrixElementOrBuilder
      Returns:
      The condition.
    • setCondition

       Indicates whether the route was found or not. Independent of status.
       
      .google.maps.routing.v2.RouteMatrixElementCondition condition = 9;
      Parameters:
      value - The condition to set.
      Returns:
      This builder for chaining.
    • clearCondition

      public RouteMatrixElement.Builder clearCondition()
       Indicates whether the route was found or not. Independent of status.
       
      .google.maps.routing.v2.RouteMatrixElementCondition condition = 9;
      Returns:
      This builder for chaining.
    • getDistanceMeters

      public int getDistanceMeters()
       The travel distance of the route, in meters.
       
      int32 distance_meters = 4;
      Specified by:
      getDistanceMeters in interface RouteMatrixElementOrBuilder
      Returns:
      The distanceMeters.
    • setDistanceMeters

      public RouteMatrixElement.Builder setDistanceMeters(int value)
       The travel distance of the route, in meters.
       
      int32 distance_meters = 4;
      Parameters:
      value - The distanceMeters to set.
      Returns:
      This builder for chaining.
    • clearDistanceMeters

      public RouteMatrixElement.Builder clearDistanceMeters()
       The travel distance of the route, in meters.
       
      int32 distance_meters = 4;
      Returns:
      This builder for chaining.
    • hasDuration

      public boolean hasDuration()
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
      Specified by:
      hasDuration in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the duration field is set.
    • getDuration

      public com.google.protobuf.Duration getDuration()
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
      Specified by:
      getDuration in interface RouteMatrixElementOrBuilder
      Returns:
      The duration.
    • setDuration

      public RouteMatrixElement.Builder setDuration(com.google.protobuf.Duration value)
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
    • setDuration

      public RouteMatrixElement.Builder setDuration(com.google.protobuf.Duration.Builder builderForValue)
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
    • mergeDuration

      public RouteMatrixElement.Builder mergeDuration(com.google.protobuf.Duration value)
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
    • clearDuration

      public RouteMatrixElement.Builder clearDuration()
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
    • getDurationBuilder

      public com.google.protobuf.Duration.Builder getDurationBuilder()
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
    • getDurationOrBuilder

      public com.google.protobuf.DurationOrBuilder getDurationOrBuilder()
       The length of time needed to navigate the route. If you set the
       [routing_preference][google.maps.routing.v2.ComputeRouteMatrixRequest.routing_preference]
       to `TRAFFIC_UNAWARE`, then this value is the same as `static_duration`. If
       you set the `routing_preference` to either `TRAFFIC_AWARE` or
       `TRAFFIC_AWARE_OPTIMAL`, then this value is calculated taking traffic
       conditions into account.
       
      .google.protobuf.Duration duration = 5;
      Specified by:
      getDurationOrBuilder in interface RouteMatrixElementOrBuilder
    • hasStaticDuration

      public boolean hasStaticDuration()
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
      Specified by:
      hasStaticDuration in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the staticDuration field is set.
    • getStaticDuration

      public com.google.protobuf.Duration getStaticDuration()
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
      Specified by:
      getStaticDuration in interface RouteMatrixElementOrBuilder
      Returns:
      The staticDuration.
    • setStaticDuration

      public RouteMatrixElement.Builder setStaticDuration(com.google.protobuf.Duration value)
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
    • setStaticDuration

      public RouteMatrixElement.Builder setStaticDuration(com.google.protobuf.Duration.Builder builderForValue)
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
    • mergeStaticDuration

      public RouteMatrixElement.Builder mergeStaticDuration(com.google.protobuf.Duration value)
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
    • clearStaticDuration

      public RouteMatrixElement.Builder clearStaticDuration()
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
    • getStaticDurationBuilder

      public com.google.protobuf.Duration.Builder getStaticDurationBuilder()
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
    • getStaticDurationOrBuilder

      public com.google.protobuf.DurationOrBuilder getStaticDurationOrBuilder()
       The duration of traveling through the route without taking traffic
       conditions into consideration.
       
      .google.protobuf.Duration static_duration = 6;
      Specified by:
      getStaticDurationOrBuilder in interface RouteMatrixElementOrBuilder
    • hasTravelAdvisory

      public boolean hasTravelAdvisory()
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
      Specified by:
      hasTravelAdvisory in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the travelAdvisory field is set.
    • getTravelAdvisory

      public RouteTravelAdvisory getTravelAdvisory()
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
      Specified by:
      getTravelAdvisory in interface RouteMatrixElementOrBuilder
      Returns:
      The travelAdvisory.
    • setTravelAdvisory

      public RouteMatrixElement.Builder setTravelAdvisory(RouteTravelAdvisory value)
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
    • setTravelAdvisory

      public RouteMatrixElement.Builder setTravelAdvisory(RouteTravelAdvisory.Builder builderForValue)
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
    • mergeTravelAdvisory

      public RouteMatrixElement.Builder mergeTravelAdvisory(RouteTravelAdvisory value)
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
    • clearTravelAdvisory

      public RouteMatrixElement.Builder clearTravelAdvisory()
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
    • getTravelAdvisoryBuilder

      public RouteTravelAdvisory.Builder getTravelAdvisoryBuilder()
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
    • getTravelAdvisoryOrBuilder

      public RouteTravelAdvisoryOrBuilder getTravelAdvisoryOrBuilder()
       Additional information about the route. For example: restriction
       information and toll information
       
      .google.maps.routing.v2.RouteTravelAdvisory travel_advisory = 7;
      Specified by:
      getTravelAdvisoryOrBuilder in interface RouteMatrixElementOrBuilder
    • hasFallbackInfo

      public boolean hasFallbackInfo()
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
      Specified by:
      hasFallbackInfo in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the fallbackInfo field is set.
    • getFallbackInfo

      public FallbackInfo getFallbackInfo()
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
      Specified by:
      getFallbackInfo in interface RouteMatrixElementOrBuilder
      Returns:
      The fallbackInfo.
    • setFallbackInfo

      public RouteMatrixElement.Builder setFallbackInfo(FallbackInfo value)
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
    • setFallbackInfo

      public RouteMatrixElement.Builder setFallbackInfo(FallbackInfo.Builder builderForValue)
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
    • mergeFallbackInfo

      public RouteMatrixElement.Builder mergeFallbackInfo(FallbackInfo value)
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
    • clearFallbackInfo

      public RouteMatrixElement.Builder clearFallbackInfo()
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
    • getFallbackInfoBuilder

      public FallbackInfo.Builder getFallbackInfoBuilder()
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
    • getFallbackInfoOrBuilder

      public FallbackInfoOrBuilder getFallbackInfoOrBuilder()
       In some cases when the server is not able to compute the route with the
       given preferences for this particular origin/destination pair, it may
       fall back to using a different mode of computation. When fallback mode is
       used, this field contains detailed information about the fallback response.
       Otherwise this field is unset.
       
      .google.maps.routing.v2.FallbackInfo fallback_info = 8;
      Specified by:
      getFallbackInfoOrBuilder in interface RouteMatrixElementOrBuilder
    • hasLocalizedValues

      public boolean hasLocalizedValues()
       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
      Specified by:
      hasLocalizedValues in interface RouteMatrixElementOrBuilder
      Returns:
      Whether the localizedValues field is set.
    • getLocalizedValues

      public RouteMatrixElement.LocalizedValues getLocalizedValues()
       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
      Specified by:
      getLocalizedValues in interface RouteMatrixElementOrBuilder
      Returns:
      The localizedValues.
    • setLocalizedValues

       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
    • setLocalizedValues

      public RouteMatrixElement.Builder setLocalizedValues(RouteMatrixElement.LocalizedValues.Builder builderForValue)
       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
    • mergeLocalizedValues

       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
    • clearLocalizedValues

      public RouteMatrixElement.Builder clearLocalizedValues()
       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
    • getLocalizedValuesBuilder

      public RouteMatrixElement.LocalizedValues.Builder getLocalizedValuesBuilder()
       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
    • getLocalizedValuesOrBuilder

      public RouteMatrixElement.LocalizedValuesOrBuilder getLocalizedValuesOrBuilder()
       Text representations of properties of the `RouteMatrixElement`.
       
      .google.maps.routing.v2.RouteMatrixElement.LocalizedValues localized_values = 10;
      Specified by:
      getLocalizedValuesOrBuilder in interface RouteMatrixElementOrBuilder