Package io.protostuff

Class MessageMapSchema<K,​V>

  • All Implemented Interfaces:
    Schema<java.util.Map<K,​V>>

    public final class MessageMapSchema<K,​V>
    extends MapSchema<K,​V>
    A schema for a Map with Message or pojo keys. The key and value can be null (depending on the particular map impl).
    • Field Detail

      • kSchema

        public final Schema<K> kSchema
        The schema of the message key.
      • vSchema

        public final Schema<V> vSchema
        The schema of the message value.
      • kPipeSchema

        public final Pipe.Schema<K> kPipeSchema
        The pipe schema of the message key.
      • vPipeSchema

        public final Pipe.Schema<V> vPipeSchema
        The pipe schema of the message value.
    • Method Detail

      • readKeyFrom

        protected K readKeyFrom​(Input input,
                                MapSchema.MapWrapper<K,​V> wrapper)
                         throws java.io.IOException
        Description copied from class: MapSchema
        Reads the key from the input.

        The extra wrapper arg is internally used as an object placeholder during polymorhic deserialization.

        Specified by:
        readKeyFrom in class MapSchema<K,​V>
        Throws:
        java.io.IOException
      • putValueFrom

        protected void putValueFrom​(Input input,
                                    MapSchema.MapWrapper<K,​V> wrapper,
                                    K key)
                             throws java.io.IOException
        Description copied from class: MapSchema
        Puts the entry(key and value), obtained from the input, into the MapWrapper.
        Specified by:
        putValueFrom in class MapSchema<K,​V>
        Throws:
        java.io.IOException
      • writeKeyTo

        protected void writeKeyTo​(Output output,
                                  int fieldNumber,
                                  K value,
                                  boolean repeated)
                           throws java.io.IOException
        Description copied from class: MapSchema
        Writes the key to the output.
        Specified by:
        writeKeyTo in class MapSchema<K,​V>
        Throws:
        java.io.IOException
      • writeValueTo

        protected void writeValueTo​(Output output,
                                    int fieldNumber,
                                    V value,
                                    boolean repeated)
                             throws java.io.IOException
        Description copied from class: MapSchema
        Writes the value to the output.
        Specified by:
        writeValueTo in class MapSchema<K,​V>
        Throws:
        java.io.IOException
      • transferKey

        protected void transferKey​(Pipe pipe,
                                   Input input,
                                   Output output,
                                   int number,
                                   boolean repeated)
                            throws java.io.IOException
        Description copied from class: MapSchema
        Transfers the key from the input to the output.
        Specified by:
        transferKey in class MapSchema<K,​V>
        Throws:
        java.io.IOException
      • transferValue

        protected void transferValue​(Pipe pipe,
                                     Input input,
                                     Output output,
                                     int number,
                                     boolean repeated)
                              throws java.io.IOException
        Description copied from class: MapSchema
        Transfers the value from the input to the output.
        Specified by:
        transferValue in class MapSchema<K,​V>
        Throws:
        java.io.IOException