Class ProgramMeta._Builder

  • All Implemented Interfaces:
    ProgramMeta_OrBuilder, net.morimekta.providence.PMessageOrBuilder<ProgramMeta>, net.morimekta.providence.PValue<ProgramMeta>, net.morimekta.providence.serializer.binary.BinaryReader
    Enclosing class:
    ProgramMeta

    public static class ProgramMeta._Builder
    extends net.morimekta.providence.PMessageBuilder<ProgramMeta>
    implements ProgramMeta_OrBuilder, net.morimekta.providence.serializer.binary.BinaryReader
    A meta object describing a parsed program file. This may include the included programs as their own meta file. The lines of the original program .thrift file is also included.
    • Constructor Detail

      • _Builder

        public _Builder()
        Make a p_model.ProgramMeta builder instance.
      • _Builder

        public _Builder​(ProgramMeta base)
        Make a mutating builder off a base p_model.ProgramMeta.
        Parameters:
        base - The base ProgramMeta
    • Method Detail

      • setFilePath

        @Nonnull
        public ProgramMeta._Builder setFilePath​(java.lang.String value)
        Set the file_path field value.

        Full absolute path to the file.

        Parameters:
        value - The new value
        Returns:
        The builder
      • isSetFilePath

        public boolean isSetFilePath()
        Checks for explicit presence of the file_path field.
        Returns:
        True if file_path has been set.
      • hasFilePath

        public boolean hasFilePath()
        Checks for presence of the file_path field.
        Specified by:
        hasFilePath in interface ProgramMeta_OrBuilder
        Returns:
        True if file_path is present.
      • isModifiedFilePath

        public boolean isModifiedFilePath()
        Checks if the file_path field has been modified since the builder was created.
        Returns:
        True if file_path has been modified.
      • clearFilePath

        @Nonnull
        public ProgramMeta._Builder clearFilePath()
        Clear the file_path field.
        Returns:
        The builder
      • getFilePath

        public java.lang.String getFilePath()
        Full absolute path to the file.
        Specified by:
        getFilePath in interface ProgramMeta_OrBuilder
        Returns:
        The file_path field value
      • optionalFilePath

        @Nonnull
        public java.util.Optional<java.lang.String> optionalFilePath()
        Full absolute path to the file.
        Specified by:
        optionalFilePath in interface ProgramMeta_OrBuilder
        Returns:
        Optional file_path field value
      • setFileLines

        @Nonnull
        public ProgramMeta._Builder setFileLines​(java.util.Collection<java.lang.String> value)
        Set the file_lines field value.

        The lines of the program file

        Parameters:
        value - The new value
        Returns:
        The builder
      • addToFileLines

        @Nonnull
        public ProgramMeta._Builder addToFileLines​(java.lang.String... values)
        Adds entries to the file_lines list.

        The lines of the program file

        Parameters:
        values - The added value
        Returns:
        The builder
      • isSetFileLines

        public boolean isSetFileLines()
        Checks for explicit presence of the file_lines field.
        Returns:
        True if file_lines has been set.
      • hasFileLines

        public boolean hasFileLines()
        Checks for presence of the file_lines field.
        Specified by:
        hasFileLines in interface ProgramMeta_OrBuilder
        Returns:
        True if file_lines is present.
      • isModifiedFileLines

        public boolean isModifiedFileLines()
        Checks if the file_lines field has been modified since the builder was created.
        Returns:
        True if file_lines has been modified.
      • clearFileLines

        @Nonnull
        public ProgramMeta._Builder clearFileLines()
        Clear the file_lines field.
        Returns:
        The builder
      • mutableFileLines

        public java.util.List<java.lang.String> mutableFileLines()
        The lines of the program file
        Returns:
        The mutable file_lines container
      • getFileLines

        public java.util.List<java.lang.String> getFileLines()
        The lines of the program file
        Specified by:
        getFileLines in interface ProgramMeta_OrBuilder
        Returns:
        The file_lines field value
      • optionalFileLines

        @Nonnull
        public java.util.Optional<java.util.List<java.lang.String>> optionalFileLines()
        The lines of the program file
        Specified by:
        optionalFileLines in interface ProgramMeta_OrBuilder
        Returns:
        Optional file_lines field value
      • numFileLines

        public int numFileLines()
        The lines of the program file
        Specified by:
        numFileLines in interface ProgramMeta_OrBuilder
        Returns:
        Number of entries in file_lines.
      • setProgram

        @Nonnull
        public ProgramMeta._Builder setProgram​(ProgramType_OrBuilder value)
        Set the program field value.

        The program type definition

        Parameters:
        value - The new value
        Returns:
        The builder
      • isSetProgram

        public boolean isSetProgram()
        Checks for explicit presence of the program field.
        Returns:
        True if program has been set.
      • hasProgram

        public boolean hasProgram()
        Checks for presence of the program field.
        Specified by:
        hasProgram in interface ProgramMeta_OrBuilder
        Returns:
        True if program is present.
      • isModifiedProgram

        public boolean isModifiedProgram()
        Checks if the program field has been modified since the builder was created.
        Returns:
        True if program has been modified.
      • clearProgram

        @Nonnull
        public ProgramMeta._Builder clearProgram()
        Clear the program field.
        Returns:
        The builder
      • mutableProgram

        @Nonnull
        public ProgramType._Builder mutableProgram()
        Get the builder for the contained program message field.

        The program type definition

        Returns:
        The field message builder
      • setIncludes

        @Nonnull
        public ProgramMeta._Builder setIncludes​(java.util.Map<java.lang.String,​ProgramMeta> value)
        Set the includes field value.

        Map of program name to meta of included programs

        Parameters:
        value - The new value
        Returns:
        The builder
      • putInIncludes

        @Nonnull
        public ProgramMeta._Builder putInIncludes​(java.lang.String key,
                                                  ProgramMeta value)
        Adds a mapping to the includes map.

        Map of program name to meta of included programs

        Parameters:
        key - The inserted key
        value - The inserted value
        Returns:
        The builder
      • isSetIncludes

        public boolean isSetIncludes()
        Checks for explicit presence of the includes field.
        Returns:
        True if includes has been set.
      • hasIncludes

        public boolean hasIncludes()
        Checks for presence of the includes field.
        Specified by:
        hasIncludes in interface ProgramMeta_OrBuilder
        Returns:
        True if includes is present.
      • isModifiedIncludes

        public boolean isModifiedIncludes()
        Checks if the includes field has been modified since the builder was created.
        Returns:
        True if includes has been modified.
      • clearIncludes

        @Nonnull
        public ProgramMeta._Builder clearIncludes()
        Clear the includes field.
        Returns:
        The builder
      • mutableIncludes

        public java.util.Map<java.lang.String,​ProgramMeta> mutableIncludes()
        Map of program name to meta of included programs
        Returns:
        The mutable includes container
      • getIncludes

        public java.util.Map<java.lang.String,​ProgramMeta> getIncludes()
        Map of program name to meta of included programs
        Specified by:
        getIncludes in interface ProgramMeta_OrBuilder
        Returns:
        The includes field value
      • optionalIncludes

        @Nonnull
        public java.util.Optional<java.util.Map<java.lang.String,​ProgramMeta>> optionalIncludes()
        Map of program name to meta of included programs
        Specified by:
        optionalIncludes in interface ProgramMeta_OrBuilder
        Returns:
        Optional includes field value
      • numIncludes

        public int numIncludes()
        Map of program name to meta of included programs
        Specified by:
        numIncludes in interface ProgramMeta_OrBuilder
        Returns:
        Number of entries in includes.
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • mutator

        public net.morimekta.providence.PMessageBuilder mutator​(int key)
        Specified by:
        mutator in class net.morimekta.providence.PMessageBuilder<ProgramMeta>
      • set

        @Nonnull
        public ProgramMeta._Builder set​(int key,
                                        java.lang.Object value)
        Specified by:
        set in class net.morimekta.providence.PMessageBuilder<ProgramMeta>
      • isSet

        public boolean isSet​(int key)
        Specified by:
        isSet in class net.morimekta.providence.PMessageBuilder<ProgramMeta>
      • isModified

        public boolean isModified​(int key)
        Specified by:
        isModified in class net.morimekta.providence.PMessageBuilder<ProgramMeta>
      • get

        public <T> T get​(int key)
        Specified by:
        get in interface net.morimekta.providence.PMessageOrBuilder<ProgramMeta>
      • has

        public boolean has​(int key)
        Specified by:
        has in interface net.morimekta.providence.PMessageOrBuilder<ProgramMeta>
      • addTo

        @Nonnull
        public ProgramMeta._Builder addTo​(int key,
                                          java.lang.Object value)
        Specified by:
        addTo in class net.morimekta.providence.PMessageBuilder<ProgramMeta>
      • valid

        public boolean valid()
        Specified by:
        valid in class net.morimekta.providence.PMessageBuilder<ProgramMeta>
      • descriptor

        @Nonnull
        public net.morimekta.providence.descriptor.PStructDescriptor<ProgramMeta> descriptor()
        Specified by:
        descriptor in interface net.morimekta.providence.PMessageOrBuilder<ProgramMeta>
        Specified by:
        descriptor in interface net.morimekta.providence.PValue<ProgramMeta>
      • readBinary

        public void readBinary​(net.morimekta.util.io.BigEndianBinaryReader reader,
                               boolean strict)
                        throws java.io.IOException
        Specified by:
        readBinary in interface net.morimekta.providence.serializer.binary.BinaryReader
        Throws:
        java.io.IOException
      • build

        @Nonnull
        public ProgramMeta build()
        Specified by:
        build in class net.morimekta.providence.PMessageBuilder<ProgramMeta>