final class Attributes extends Product with Serializable with Equals

Holds attributes which can be used to alter akka.stream.scaladsl.Flow / akka.stream.javadsl.Flow or akka.stream.scaladsl.GraphDSL / akka.stream.javadsl.GraphDSL materialization.

Note that more attributes for the Materializer are defined in ActorAttributes.

The attributeList is ordered with the most specific attribute first, least specific last. Note that the order was the opposite in Akka 2.4.x.

Operators should in general not access the attributeList but instead use get to get the expected value of an attribute.

Constructor is internal Akka API, use factories in companion to create instances.

Source
Attributes.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Attributes
  2. Serializable
  3. Product
  4. Equals
  5. AnyRef
  6. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Attributes(attributeList: List[Attribute] = Nil)
    Annotations
    @deprecated
    Deprecated

    (Since version 2.8.0) Use factories on companion object instead

Value Members

  1. def and(other: Attribute): Attributes

    Adds given attribute.

    Adds given attribute. Added attribute is considered more specific than already existing attributes of the same type.

  2. def and(other: Attributes): Attributes

    Adds given attributes.

    Adds given attributes. Added attributes are considered more specific than already existing attributes of the same type.

  3. val attributeList: List[Attribute]
  4. def canEqual(that: Any): Boolean
    Definition Classes
    Attributes → Equals
  5. def contains(attr: Attribute): Boolean

    Test whether the given attribute is contained within this attributes list.

    Test whether the given attribute is contained within this attributes list.

    Note that operators in general should not inspect the whole hierarchy but instead use get to get the most specific attribute value.

  6. def equals(other: Any): Boolean
    Definition Classes
    Attributes → Equals → AnyRef → Any
  7. def filtered[T <: Attribute](implicit arg0: ClassTag[T]): List[T]

    Scala API: Get all attributes of a given type (or subtypes thereof).

    Scala API: Get all attributes of a given type (or subtypes thereof).

    Note that operators in general should not inspect the whole hierarchy but instead use get to get the most specific attribute value.

    The list is ordered with the most specific attribute first, least specific last. Note that the order was the opposite in Akka 2.4.x.

  8. def get[T <: Attribute](implicit arg0: ClassTag[T]): Option[T]

    Scala API: Get the most specific attribute value for a given Attribute type or subclass thereof.

    Scala API: Get the most specific attribute value for a given Attribute type or subclass thereof.

    The most specific value is the value that was added closest to the graph or operator itself or if the same attribute was added multiple times to the same graph, the last to be added.

    This is the expected way for operators to access attributes.

    See also

    Attributes#get For providing a default value if the attribute was not set

  9. def get[T <: Attribute](default: T)(implicit arg0: ClassTag[T]): T

    Scala API: Get the most specific attribute value for a given Attribute type or subclass thereof or if no such attribute exists, return a default value.

    Scala API: Get the most specific attribute value for a given Attribute type or subclass thereof or if no such attribute exists, return a default value.

    The most specific value is the value that was added closest to the graph or operator itself or if the same attribute was added multiple times to the same graph, the last to be added.

    This is the expected way for operators to access attributes.

  10. def getAttribute[T <: Attribute](c: Class[T]): Optional[T]

    Java API: Get the most specific attribute value for a given Attribute type or subclass thereof.

    Java API: Get the most specific attribute value for a given Attribute type or subclass thereof.

    The most specific value is the value that was added closest to the graph or operator itself or if the same attribute was added multiple times to the same graph, the last to be added.

    This is the expected way for operators to access attributes.

  11. def getAttribute[T <: Attribute](c: Class[T], default: T): T

    Java API: Get the most specific attribute value for a given Attribute type or subclass thereof.

    Java API: Get the most specific attribute value for a given Attribute type or subclass thereof. If no such attribute exists, return a default value.

    The most specific value is the value that was added closest to the graph or operator itself or if the same attribute was added multiple times to the same graph, the last to be added.

    This is the expected way for operators to access attributes.

  12. def getAttributeList[T <: Attribute](c: Class[T]): List[T]

    Java API: Get all attributes of a given Class or subclass thereof.

    Java API: Get all attributes of a given Class or subclass thereof.

    The list is ordered with the most specific attribute first, least specific last. Note that the order was the opposite in Akka 2.4.x.

    Note that operators in general should not inspect the whole hierarchy but instead use get to get the most specific attribute value.

  13. def getAttributeList(): [Attribute]

    Java API

    Java API

    The list is ordered with the most specific attribute first, least specific last. Note that the order was the opposite in Akka 2.4.x.

    Note that operators in general should not inspect the whole hierarchy but instead use get to get the most specific attribute value.

  14. def getMandatoryAttribute[T <: MandatoryAttribute](c: Class[T]): T

    Java API: Get the most specific of one of the mandatory attributes.

    Java API: Get the most specific of one of the mandatory attributes. Mandatory attributes are guaranteed to always be among the attributes when the attributes are coming from a materialization.

    Note: looks for the exact mandatory attribute class, hierarchies of the same mandatory attribute not supported

    c

    A class that is a subtype of MandatoryAttribute

  15. def hashCode(): Int
    Definition Classes
    Attributes → AnyRef → Any
  16. def mandatoryAttribute[T <: MandatoryAttribute](implicit arg0: ClassTag[T]): T

    Scala API: Get the most specific of one of the mandatory attributes.

    Scala API: Get the most specific of one of the mandatory attributes. Mandatory attributes are guaranteed to always be among the attributes when the attributes are coming from a materialization.

    Note: looks for the exact mandatory attribute class, hierarchies of the same mandatory attribute not supported

  17. def nameLifted: Option[String]

    Extracts Name attributes and concatenates them.

  18. def nameOrDefault(default: String = "unnamed"): String
    Annotations
    @InternalApi()
  19. def productElementName(n: Int): String
    Definition Classes
    Product
  20. def productElementNames: Iterator[String]
    Definition Classes
    Product
  21. def productIterator: Iterator[Any]
    Definition Classes
    Product
  22. def productPrefix: String
    Definition Classes
    Product

Deprecated Value Members

  1. def copy(attributeList: List[Attribute] = attributeList): Attributes
    Annotations
    @deprecated
    Deprecated

    (Since version 2.8.0) Don't use copy on Attributes

  2. def getFirst[T <: Attribute](implicit arg0: ClassTag[T]): Option[T]

    Scala API: Get the least specific attribute (added first) of a given type parameter T Class or subclass thereof.

    Scala API: Get the least specific attribute (added first) of a given type parameter T Class or subclass thereof.

    Annotations
    @deprecated
    Deprecated

    (Since version 2.5.7) Attributes should always be most specific, use get[T]

  3. def productArity: Int
    Definition Classes
    Attributes → Product
    Annotations
    @deprecated
    Deprecated

    (Since version 2.8.0) Use explicit methods on Attributes to interact, not the ones provided by Product

  4. def productElement(n: Int): Any
    Definition Classes
    Attributes → Product
    Annotations
    @deprecated
    Deprecated

    (Since version 2.8.0) Use explicit methods on Attributes to interact, not the ones provided by Product