Interface SoftwareCoo

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

@Immutable @DefaultTypeValue(value="software", groups=DefaultValuesProcessor.class) public interface SoftwareCoo extends CyberObservableObject
software

The Software Object represents high-level properties associated with software, including software products.

  • Method Details

    • getName

      @JsonPropertyDescription("Specifies the name of the software.") @NotNull @NotNull String getName()
    • getCpe

      @JsonPropertyDescription("Specifies the Common Platform Enumeration (CPE) entry for the software, if available.") Optional<String> getCpe()
      TODO The value for this property MUST be a CPE v2.3 entry from the official NVD CPE Dictionary. regex pattern = "^cpe:2\\.3:[aho](?::(?:[a-zA-Z0-9!\"#$%invalid input: '&''()*+,\\\\-_.\/();invalid input: '<'=>?@\\[\\]^`{|}~]|\\:)+){10}$" Is not valid for the @Pattern annotation (invalid escape chars) Remove @Pattern(regexp="^cpe:2\\.3:[aho]") until working solution is provided
    • getLanguages

      @JsonPropertyDescription("Specifies the languages supported by the software.") default Set<@Pattern(regexp="^[a-z]{3}$") String> getLanguages()
      TODO The value of each list member MUST be an ISO 639-2 language code.
    • getVendor

      @JsonPropertyDescription("Specifies the name of the vendor of the software.") Optional<String> getVendor()
    • getVersion

      @JsonPropertyDescription("Specifies the version of the software.") Optional<String> getVersion()
    • getId

      @Derived default String getId()
      Deterministically generates the ID for this software based on its name.
      Specified by:
      getId in interface BundleableObject
      Specified by:
      getId in interface CyberObservableObjectCommonProperties