Class Messages.Attachment

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Messages.AttachmentOrBuilder, Serializable
    Enclosing class:
    Messages

    public static final class Messages.Attachment
    extends com.google.protobuf.GeneratedMessageV3
    implements Messages.AttachmentOrBuilder
    
     An attachment represents any kind of data associated with a line in a
     [Source](#io.cucumber.messages.Source) file. It can be used for:
     * Syntax errors during parse time
     * Screenshots captured and attached during execution
     * Logs captured and attached during execution
     It is not to be used for runtime errors raised/thrown during execution. This
     is captured in `TestResult`.
     
    Protobuf type io.cucumber.messages.Attachment
    See Also:
    Serialized Form
    • Method Detail

      • getUnknownFields

        public final com.google.protobuf.UnknownFieldSet getUnknownFields()
        Specified by:
        getUnknownFields in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getUnknownFields in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getBody

        public String getBody()
        
         The body of the attachment. If `content_encoding` is `IDENTITY`, the attachment
         is simply the string. If it's `BASE64`, the string should be Base64 decoded to
         obtain the attachment.
         
        string body = 4;
        Specified by:
        getBody in interface Messages.AttachmentOrBuilder
      • getBodyBytes

        public com.google.protobuf.ByteString getBodyBytes()
        
         The body of the attachment. If `content_encoding` is `IDENTITY`, the attachment
         is simply the string. If it's `BASE64`, the string should be Base64 decoded to
         obtain the attachment.
         
        string body = 4;
        Specified by:
        getBodyBytes in interface Messages.AttachmentOrBuilder
      • getMediaType

        public String getMediaType()
        
         The media type of the data. This can be any valid
         [IANA Media Type](https://www.iana.org/assignments/media-types/media-types.xhtml)
         as well as Cucumber-specific media types such as `text/x.cucumber.gherkin+plain`
         and `text/x.cucumber.stacktrace+plain`
         
        string media_type = 5;
        Specified by:
        getMediaType in interface Messages.AttachmentOrBuilder
      • getMediaTypeBytes

        public com.google.protobuf.ByteString getMediaTypeBytes()
        
         The media type of the data. This can be any valid
         [IANA Media Type](https://www.iana.org/assignments/media-types/media-types.xhtml)
         as well as Cucumber-specific media types such as `text/x.cucumber.gherkin+plain`
         and `text/x.cucumber.stacktrace+plain`
         
        string media_type = 5;
        Specified by:
        getMediaTypeBytes in interface Messages.AttachmentOrBuilder
      • getContentEncodingValue

        public int getContentEncodingValue()
        
         Whether to interpret `body` "as-is" (IDENTITY) or if it needs to be Base64-decoded (BASE64).
         Content encoding is *not* determined by the media type, but rather by the type
         of the object being attached:
         - string => IDENTITY
         - byte array => BASE64
         - stream => BASE64
         
        .io.cucumber.messages.Attachment.ContentEncoding content_encoding = 6;
        Specified by:
        getContentEncodingValue in interface Messages.AttachmentOrBuilder
      • getContentEncoding

        public Messages.Attachment.ContentEncoding getContentEncoding()
        
         Whether to interpret `body` "as-is" (IDENTITY) or if it needs to be Base64-decoded (BASE64).
         Content encoding is *not* determined by the media type, but rather by the type
         of the object being attached:
         - string => IDENTITY
         - byte array => BASE64
         - stream => BASE64
         
        .io.cucumber.messages.Attachment.ContentEncoding content_encoding = 6;
        Specified by:
        getContentEncoding in interface Messages.AttachmentOrBuilder
      • getFileNameBytes

        public com.google.protobuf.ByteString getFileNameBytes()
        
         Suggested file name of the attachment. (Provided by the user as an argument to `attach`)
         
        string file_name = 7;
        Specified by:
        getFileNameBytes in interface Messages.AttachmentOrBuilder
      • getUrl

        public String getUrl()
        
         A URL where the attachment can be retrieved. This field should not be set by Cucumber.
         It should be set by a program that reads a message stream and does the following for
         each Attachment message:
         - Writes the body (after base64 decoding if necessary) to a new file.
         - Sets `body` and `content_encoding` to `null`
         - Writes out the new attachment message
         This will result in a smaller message stream, which can improve performance and
         reduce bandwidth of message consumers. It also makes it easier to process and download attachments
         separately from reports.
         
        string url = 8;
        Specified by:
        getUrl in interface Messages.AttachmentOrBuilder
      • getUrlBytes

        public com.google.protobuf.ByteString getUrlBytes()
        
         A URL where the attachment can be retrieved. This field should not be set by Cucumber.
         It should be set by a program that reads a message stream and does the following for
         each Attachment message:
         - Writes the body (after base64 decoding if necessary) to a new file.
         - Sets `body` and `content_encoding` to `null`
         - Writes out the new attachment message
         This will result in a smaller message stream, which can improve performance and
         reduce bandwidth of message consumers. It also makes it easier to process and download attachments
         separately from reports.
         
        string url = 8;
        Specified by:
        getUrlBytes in interface Messages.AttachmentOrBuilder
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static Messages.Attachment parseFrom​(ByteBuffer data)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Messages.Attachment parseFrom​(ByteBuffer data,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Messages.Attachment parseFrom​(com.google.protobuf.ByteString data)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Messages.Attachment parseFrom​(com.google.protobuf.ByteString data,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Messages.Attachment parseFrom​(byte[] data)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Messages.Attachment parseFrom​(byte[] data,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static Messages.Attachment parseFrom​(com.google.protobuf.CodedInputStream input,
                                                    com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                             throws IOException
        Throws:
        IOException
      • newBuilderForType

        public Messages.Attachment.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public Messages.Attachment.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected Messages.Attachment.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<Messages.Attachment> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public Messages.Attachment getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder