Package akka.protobuf

Interface GeneratedMessage.BuilderParent

  • All Known Implementing Classes:
    RepeatedFieldBuilder, SingleFieldBuilder
    Enclosing class:
    GeneratedMessage

    protected static interface GeneratedMessage.BuilderParent
    Interface for the parent of a Builder that allows the builder to communicate invalidations back to the parent for use when using nested builders.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void markDirty()
      A builder becomes dirty whenever a field is modified -- including fields in nested builders -- and becomes clean when build() is called.
    • Method Detail

      • markDirty

        void markDirty()
        A builder becomes dirty whenever a field is modified -- including fields in nested builders -- and becomes clean when build() is called. Thus, when a builder becomes dirty, all its parents become dirty as well, and when it becomes clean, all its children become clean. The dirtiness state is used to invalidate certain cached values.
        To this end, a builder calls markAsDirty() on its parent whenever it transitions from clean to dirty. The parent must propagate this call to its own parent, unless it was already dirty, in which case the grandparent must necessarily already be dirty as well. The parent can only transition back to "clean" after calling build() on all children.