Class AbstractMultiFieldPatchBuilder<T extends AbstractMultiFieldPatchBuilder<T>>

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String OP_KEY  
      static java.lang.String PATH_KEY  
      protected java.util.List<org.apache.commons.lang3.tuple.ImmutableTriple<java.lang.String,​java.lang.String,​com.fasterxml.jackson.databind.JsonNode>> pathValues  
      protected com.linkedin.common.urn.Urn targetEntityUrn  
      static java.lang.String VALUE_KEY  
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      com.linkedin.mxe.MetadataChangeProposal build()
      Builder method
      protected com.linkedin.mxe.GenericAspect buildPatch()
      Overrides basic behavior to construct multiple patches based on properties
      protected abstract java.lang.String getAspectName()
      The aspect name associated with this builder
      protected abstract java.lang.String getEntityType()
      Returns the String representation of the Entity type associated with this aspect
      protected java.util.List<org.apache.commons.lang3.tuple.ImmutableTriple<java.lang.String,​java.lang.String,​com.fasterxml.jackson.databind.JsonNode>> getPathValues()
      Constructs a list of Op, Path, Value triples to create as patches.
      T urn​(com.linkedin.common.urn.Urn urn)
      Sets the target entity urn to be updated by this patch
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • pathValues

        protected java.util.List<org.apache.commons.lang3.tuple.ImmutableTriple<java.lang.String,​java.lang.String,​com.fasterxml.jackson.databind.JsonNode>> pathValues
      • targetEntityUrn

        protected com.linkedin.common.urn.Urn targetEntityUrn
    • Constructor Detail

      • AbstractMultiFieldPatchBuilder

        public AbstractMultiFieldPatchBuilder()
    • Method Detail

      • build

        public com.linkedin.mxe.MetadataChangeProposal build()
        Builder method
        Returns:
        a MetadataChangeProposal constructed from the builder's properties
      • urn

        public T urn​(com.linkedin.common.urn.Urn urn)
        Sets the target entity urn to be updated by this patch
        Parameters:
        urn - The target entity whose aspect is to be patched by this update
        Returns:
        this PatchBuilder subtype's instance
      • getAspectName

        protected abstract java.lang.String getAspectName()
        The aspect name associated with this builder
        Returns:
        aspect name
      • getEntityType

        protected abstract java.lang.String getEntityType()
        Returns the String representation of the Entity type associated with this aspect
        Returns:
        entity type name
      • buildPatch

        protected com.linkedin.mxe.GenericAspect buildPatch()
        Overrides basic behavior to construct multiple patches based on properties
        Returns:
        a JsonPatch wrapped by GenericAspect
      • getPathValues

        protected java.util.List<org.apache.commons.lang3.tuple.ImmutableTriple<java.lang.String,​java.lang.String,​com.fasterxml.jackson.databind.JsonNode>> getPathValues()
        Constructs a list of Op, Path, Value triples to create as patches. Not idempotent and should not be called more than once
        Returns:
        list of patch precursor triples