Interface EmailMessageCoo

All Superinterfaces:
BundleableObject, CyberObservableObject, CyberObservableObjectCommonProperties, GenericValidation, SdoDefaultValidator, Serializable, Stix, StixCustomProperties
All Known Implementing Classes:
EmailMessage

@Immutable @DefaultTypeValue(value="email-message", groups=DefaultValuesProcessor.class) @BusinessRule(ifExp="isMultipart() == true",thenExp="getBody().isPresent() == false",errorMessage="Body cannot be used if isMultipart equals true") @BusinessRule(ifExp="isMultipart() == false",thenExp="getBodyMultipart().isEmpty() == true",errorMessage="Body_Multipart cannot be used if isMultipart equals false") public interface EmailMessageCoo extends CyberObservableObject
The Email Message Object represents an instance of an email message.
  • Method Details

    • isMultipart

      @JsonPropertyDescription("Indicates whether the email body contains multiple MIME parts.") @NotNull @NotNull Boolean isMultipart()
    • getDate

      @JsonPropertyDescription("Specifies the date/time that the email message was sent.") Optional<StixInstant> getDate()
    • getContentType

      @JsonPropertyDescription("Specifies the value of the \'Content-Type\' header of the email message.") Optional<String> getContentType()
    • getFromRef

      @JsonPropertyDescription("Specifies the value of the \'From:\' header of the email message.") Optional<String> getFromRef()
    • getSenderRef

      @JsonPropertyDescription("Specifies the value of the \'From\' field of the email message") Optional<String> getSenderRef()
    • getToRefs

      @JsonPropertyDescription("Specifies the mailboxes that are \'To:\' recipients of the email message") default Set<String> getToRefs()
    • getCcRefs

      @JsonPropertyDescription("Specifies the mailboxes that are \'CC:\' recipients of the email message") default Set<String> getCcRefs()
    • getBccRefs

      @JsonPropertyDescription("Specifies the mailboxes that are \'BCC:\' recipients of the email message.") default Set<String> getBccRefs()
    • getSubject

      @JsonPropertyDescription("Specifies the subject of the email message.") default Optional<String> getSubject()
    • getReceivedLines

      @JsonPropertyDescription("Specifies one or more Received header fields that may be included in the email headers.") default Set<String> getReceivedLines()
    • getAdditionalHeaderFields

      @JsonPropertyDescription("Specifies any other header fields (except for date, received_lines, content_type, from_ref, sender_ref, to_refs, cc_refs, bcc_refs, and subject) found in the email message, as a dictionary.") default Map<String,String> getAdditionalHeaderFields()
    • getBody

      @JsonPropertyDescription("Specifies a string containing the email body.") default Optional<String> getBody()
    • getBodyMultipart

      @JsonPropertyDescription("Specifies a list of the MIME parts that make up the email body.") default Set<MimePartTypeObj> getBodyMultipart()
    • getRawEmailRef

      @JsonPropertyDescription("Specifies the raw binary contents of the email message, including both the headers and body, as a reference to an Artifact Object.") default Optional<String> getRawEmailRef()
    • getId

      @Derived default String getId()
      Deterministically generates the ID for this email message based on its subject, from, date, and content.
      Specified by:
      getId in interface BundleableObject
      Specified by:
      getId in interface CyberObservableObjectCommonProperties