Class MessageNamedArgumentFinder<M extends net.morimekta.providence.PMessage<M>>

  • Type Parameters:
    M - The message type.
    All Implemented Interfaces:
    org.jdbi.v3.core.argument.NamedArgumentFinder

    public class MessageNamedArgumentFinder<M extends net.morimekta.providence.PMessage<M>>
    extends java.lang.Object
    implements org.jdbi.v3.core.argument.NamedArgumentFinder
    A NamedArgumentFinder implementation that uses a message and finds values based on the thrift declared field names. This supports chained calls to any depth as long as each level is a single message field.
    • Constructor Summary

      Constructors 
      Constructor Description
      MessageNamedArgumentFinder​(java.lang.String prefix, net.morimekta.providence.PMessageOrBuilder<M> message, java.util.Map<net.morimekta.providence.descriptor.PField<M>,​java.lang.Integer> fieldTypes)
      Create a named argument finder.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Optional<org.jdbi.v3.core.argument.Argument> find​(java.lang.String name, org.jdbi.v3.core.statement.StatementContext ctx)  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface org.jdbi.v3.core.argument.NamedArgumentFinder

        getNames
    • Constructor Detail

      • MessageNamedArgumentFinder

        public MessageNamedArgumentFinder​(@Nullable
                                          java.lang.String prefix,
                                          @Nonnull
                                          net.morimekta.providence.PMessageOrBuilder<M> message,
                                          @Nonnull
                                          java.util.Map<net.morimekta.providence.descriptor.PField<M>,​java.lang.Integer> fieldTypes)
        Create a named argument finder.
        Parameters:
        prefix - Optional prefix name. E.g. "x" will make for lookup tags like ":x.my_field".
        message - The message to look up fields in.
        fieldTypes - Overriding of default field types. This can contain fields for any of the contained message types, and will be mapped whenever the field is selected.
    • Method Detail

      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • find

        @Nonnull
        public java.util.Optional<org.jdbi.v3.core.argument.Argument> find​(java.lang.String name,
                                                                           org.jdbi.v3.core.statement.StatementContext ctx)
        Specified by:
        find in interface org.jdbi.v3.core.argument.NamedArgumentFinder