You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2026/01/26 09:53:25 UTC
(camel) 01/01: CAMEL-22903 - Add OCSF (Open Cybersecurity Schema Framework) DataFormat component
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch siem
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 78f497f2761f3485157d7b78dfc890f98f38a95b
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Sun Jan 25 16:17:59 2026 +0100
CAMEL-22903 - Add OCSF (Open Cybersecurity Schema Framework) DataFormat component
Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
bom/camel-bom/pom.xml | 5 +
catalog/camel-allcomponents/pom.xml | 5 +
.../apache/camel/catalog/dataformats.properties | 1 +
.../org/apache/camel/catalog/dataformats/ocsf.json | 30 +
.../org/apache/camel/catalog/models.properties | 1 +
.../org/apache/camel/catalog/models/ocsf.json | 27 +
.../apache/camel/catalog/schemas/camel-spring.xsd | 105 +
.../apache/camel/catalog/schemas/camel-xml-io.xsd | 105 +
components/camel-ocsf/pom.xml | 124 +
.../dataformat/ocsf/OcsfDataFormatConfigurer.java | 119 +
.../camel/dataformat/ocsf/model/Account.java | 408 ++++
.../camel/dataformat/ocsf/model/AccountChange.java | 635 +++++
.../apache/camel/dataformat/ocsf/model/Actor.java | 493 ++++
.../camel/dataformat/ocsf/model/Advisory.java | 109 +
.../camel/dataformat/ocsf/model/AffectedCode.java | 109 +
.../dataformat/ocsf/model/AffectedPackage.java | 109 +
.../apache/camel/dataformat/ocsf/model/Agent.java | 487 ++++
.../camel/dataformat/ocsf/model/Analytic.java | 619 +++++
.../camel/dataformat/ocsf/model/Ancestry.java | 109 +
.../dataformat/ocsf/model/AnomalyAnalyasis.java | 109 +
.../apache/camel/dataformat/ocsf/model/Answer.java | 109 +
.../apache/camel/dataformat/ocsf/model/Api.java | 403 +++
.../camel/dataformat/ocsf/model/ApiActivity.java | 558 +++++
.../camel/dataformat/ocsf/model/Assessment.java | 109 +
.../apache/camel/dataformat/ocsf/model/Attack.java | 376 +++
.../camel/dataformat/ocsf/model/AttackGraph.java | 109 +
.../camel/dataformat/ocsf/model/AuthFactor.java | 540 +++++
.../dataformat/ocsf/model/Authentication.java | 1194 +++++++++
.../dataformat/ocsf/model/AuthenticationToken.java | 109 +
.../camel/dataformat/ocsf/model/Authorization.java | 230 ++
.../dataformat/ocsf/model/AuthorizeSession.java | 654 +++++
.../dataformat/ocsf/model/AutonomousSystem.java | 109 +
.../camel/dataformat/ocsf/model/AvgTimespan.java | 109 +
.../camel/dataformat/ocsf/model/CategoryId.java | 128 +
.../camel/dataformat/ocsf/model/Certificate.java | 584 +++++
.../apache/camel/dataformat/ocsf/model/Check.java | 109 +
.../camel/dataformat/ocsf/model/CisControl.java | 109 +
.../apache/camel/dataformat/ocsf/model/CisCsc.java | 109 +
.../dataformat/ocsf/model/ClassificationId.java | 64 +
.../camel/dataformat/ocsf/model/ClientHassh.java | 109 +
.../apache/camel/dataformat/ocsf/model/Cloud.java | 449 ++++
.../camel/dataformat/ocsf/model/Compliance.java | 804 ++++++
.../dataformat/ocsf/model/ComplianceFinding.java | 778 ++++++
.../dataformat/ocsf/model/ConnectionInfo.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__1.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__2.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__3.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__4.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__5.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__6.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__7.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__8.java | 109 +
.../dataformat/ocsf/model/ConnectionInfo__9.java | 109 +
.../camel/dataformat/ocsf/model/Container.java | 671 +++++
.../dataformat/ocsf/model/ControlParameter.java | 109 +
.../dataformat/ocsf/model/Countermeasure.java | 109 +
.../dataformat/ocsf/model/CumulativeTraffic.java | 109 +
.../ocsf/model/CumulativeTraffic__1.java | 109 +
.../ocsf/model/CumulativeTraffic__2.java | 109 +
.../ocsf/model/CumulativeTraffic__3.java | 109 +
.../ocsf/model/CumulativeTraffic__4.java | 109 +
.../ocsf/model/CumulativeTraffic__5.java | 109 +
.../ocsf/model/CumulativeTraffic__6.java | 109 +
.../ocsf/model/CumulativeTraffic__7.java | 109 +
.../ocsf/model/CumulativeTraffic__8.java | 109 +
.../ocsf/model/CumulativeTraffic__9.java | 109 +
.../apache/camel/dataformat/ocsf/model/Cve.java | 748 ++++++
.../apache/camel/dataformat/ocsf/model/Cvss.java | 591 +++++
.../apache/camel/dataformat/ocsf/model/Cwe.java | 274 +++
.../camel/dataformat/ocsf/model/Database.java | 109 +
.../camel/dataformat/ocsf/model/Databucket.java | 109 +
.../dataformat/ocsf/model/DatastoreActivity.java | 665 +++++
.../apache/camel/dataformat/ocsf/model/DceRpc.java | 109 +
.../dataformat/ocsf/model/DetectionFinding.java | 1180 +++++++++
.../apache/camel/dataformat/ocsf/model/Device.java | 2564 ++++++++++++++++++++
.../camel/dataformat/ocsf/model/DhcpActivity.java | 842 +++++++
.../camel/dataformat/ocsf/model/Display.java | 362 +++
.../camel/dataformat/ocsf/model/DnsActivity.java | 930 +++++++
.../camel/dataformat/ocsf/model/DnsQuery.java | 406 ++++
.../apache/camel/dataformat/ocsf/model/Driver.java | 109 +
.../apache/camel/dataformat/ocsf/model/Email.java | 109 +
.../camel/dataformat/ocsf/model/EmailActivity.java | 840 +++++++
.../camel/dataformat/ocsf/model/EmailAuth.java | 109 +
.../dataformat/ocsf/model/EncryptionDetails.java | 109 +
.../camel/dataformat/ocsf/model/Endpoint.java | 992 ++++++++
.../camel/dataformat/ocsf/model/Enrichment.java | 582 +++++
.../apache/camel/dataformat/ocsf/model/Entity.java | 109 +
.../dataformat/ocsf/model/EntityManagement.java | 618 +++++
.../camel/dataformat/ocsf/model/EntityResult.java | 109 +
.../dataformat/ocsf/model/EnvironmentVariable.java | 109 +
.../apache/camel/dataformat/ocsf/model/Epss.java | 318 +++
.../camel/dataformat/ocsf/model/Evidence.java | 109 +
.../camel/dataformat/ocsf/model/Evidence__1.java | 109 +
.../camel/dataformat/ocsf/model/Extension.java | 109 +
.../camel/dataformat/ocsf/model/Feature.java | 274 +++
.../apache/camel/dataformat/ocsf/model/File.java | 1795 ++++++++++++++
.../camel/dataformat/ocsf/model/FileActivity.java | 658 +++++
.../camel/dataformat/ocsf/model/Finding.java | 109 +
.../camel/dataformat/ocsf/model/FindingInfo.java | 1061 ++++++++
.../camel/dataformat/ocsf/model/Fingerprint.java | 274 +++
.../camel/dataformat/ocsf/model/FtpActivity.java | 974 ++++++++
.../dataformat/ocsf/model/FunctionInvocation.java | 109 +
.../apache/camel/dataformat/ocsf/model/Group.java | 408 ++++
.../dataformat/ocsf/model/GroupManagement.java | 654 +++++
.../camel/dataformat/ocsf/model/HostedService.java | 109 +
.../camel/dataformat/ocsf/model/HttpActivity.java | 884 +++++++
.../camel/dataformat/ocsf/model/HttpCooky.java | 109 +
.../camel/dataformat/ocsf/model/HttpHeader.java | 230 ++
.../camel/dataformat/ocsf/model/HttpRequest.java | 685 ++++++
.../camel/dataformat/ocsf/model/HttpResponse.java | 496 ++++
.../apache/camel/dataformat/ocsf/model/HwInfo.java | 109 +
.../camel/dataformat/ocsf/model/HwInfo__1.java | 109 +
.../camel/dataformat/ocsf/model/HwInfo__2.java | 109 +
.../apache/camel/dataformat/ocsf/model/Idp.java | 710 ++++++
.../apache/camel/dataformat/ocsf/model/Image.java | 408 ++++
.../dataformat/ocsf/model/IncidentFinding.java | 1176 +++++++++
.../dataformat/ocsf/model/Ja4Fingerprint.java | 450 ++++
.../apache/camel/dataformat/ocsf/model/Job.java | 109 +
.../camel/dataformat/ocsf/model/KbArticle.java | 737 ++++++
.../apache/camel/dataformat/ocsf/model/Kernel.java | 109 +
.../dataformat/ocsf/model/KernelActivity.java | 376 +++
.../ocsf/model/KernelExtensionActivity.java | 376 +++
.../camel/dataformat/ocsf/model/KeyboardInfo.java | 109 +
.../dataformat/ocsf/model/KillChainPhase.java | 230 ++
.../camel/dataformat/ocsf/model/LdapPerson.java | 109 +
.../camel/dataformat/ocsf/model/Location.java | 936 +++++++
.../apache/camel/dataformat/ocsf/model/Logger.java | 801 ++++++
.../camel/dataformat/ocsf/model/Malware.java | 628 +++++
.../dataformat/ocsf/model/MalwareScanInfo.java | 109 +
.../dataformat/ocsf/model/MemoryActivity.java | 571 +++++
.../camel/dataformat/ocsf/model/Metadata.java | 1521 ++++++++++++
.../apache/camel/dataformat/ocsf/model/Metric.java | 109 +
.../camel/dataformat/ocsf/model/Mitigation.java | 109 +
.../apache/camel/dataformat/ocsf/model/Module.java | 474 ++++
.../dataformat/ocsf/model/ModuleActivity.java | 395 +++
.../dataformat/ocsf/model/NetworkActivity.java | 754 ++++++
.../dataformat/ocsf/model/NetworkEndpoint.java | 1348 ++++++++++
.../dataformat/ocsf/model/NetworkFileActivity.java | 797 ++++++
.../dataformat/ocsf/model/NetworkInterface.java | 584 +++++
.../camel/dataformat/ocsf/model/NtpActivity.java | 887 +++++++
.../camel/dataformat/ocsf/model/Observable.java | 450 ++++
.../camel/dataformat/ocsf/model/OcsfEvent.java | 1296 ++++++++++
.../camel/dataformat/ocsf/model/OpenPort.java | 109 +
.../camel/dataformat/ocsf/model/Organization.java | 318 +++
.../org/apache/camel/dataformat/ocsf/model/Os.java | 714 ++++++
.../camel/dataformat/ocsf/model/Package.java | 890 +++++++
.../apache/camel/dataformat/ocsf/model/Policy.java | 494 ++++
.../camel/dataformat/ocsf/model/Process.java | 1177 +++++++++
.../dataformat/ocsf/model/ProcessActivity.java | 746 ++++++
.../camel/dataformat/ocsf/model/Product.java | 538 ++++
.../ocsf/model/ProgrammaticCredential.java | 109 +
.../apache/camel/dataformat/ocsf/model/Proxy.java | 109 +
.../camel/dataformat/ocsf/model/ProxyEndpoint.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__1.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__2.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__3.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__4.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__5.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__6.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__7.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__8.java | 109 +
.../camel/dataformat/ocsf/model/Proxy__9.java | 109 +
.../camel/dataformat/ocsf/model/QueryInfo.java | 109 +
.../camel/dataformat/ocsf/model/RdpActivity.java | 1125 +++++++++
.../camel/dataformat/ocsf/model/RelatedEvent.java | 109 +
.../camel/dataformat/ocsf/model/Remediation.java | 345 +++
.../dataformat/ocsf/model/RemediationActivity.java | 440 ++++
.../camel/dataformat/ocsf/model/Reporter.java | 109 +
.../camel/dataformat/ocsf/model/Reputation.java | 318 +++
.../camel/dataformat/ocsf/model/Request.java | 320 +++
.../dataformat/ocsf/model/ResourceDetails.java | 1037 ++++++++
.../ocsf/model/ResourceRelationship.java | 109 +
.../camel/dataformat/ocsf/model/Response.java | 452 ++++
.../apache/camel/dataformat/ocsf/model/Rule.java | 406 ++++
.../apache/camel/dataformat/ocsf/model/San.java | 230 ++
.../apache/camel/dataformat/ocsf/model/Scan.java | 318 +++
.../camel/dataformat/ocsf/model/ScanActivity.java | 880 +++++++
.../ocsf/model/ScheduledJobActivity.java | 376 +++
.../apache/camel/dataformat/ocsf/model/Scim.java | 109 +
.../dataformat/ocsf/model/SecurityFinding.java | 1249 ++++++++++
.../camel/dataformat/ocsf/model/ServerHassh.java | 109 +
.../camel/dataformat/ocsf/model/Service.java | 364 +++
.../camel/dataformat/ocsf/model/Session.java | 714 ++++++
.../camel/dataformat/ocsf/model/Signature.java | 109 +
.../camel/dataformat/ocsf/model/SmbActivity.java | 1129 +++++++++
.../camel/dataformat/ocsf/model/SshActivity.java | 890 +++++++
.../apache/camel/dataformat/ocsf/model/Sso.java | 109 +
.../camel/dataformat/ocsf/model/SubTechnique.java | 274 +++
.../apache/camel/dataformat/ocsf/model/Table.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tactic.java | 274 +++
.../apache/camel/dataformat/ocsf/model/Tag.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__1.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__2.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__3.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__4.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__5.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__6.java | 109 +
.../apache/camel/dataformat/ocsf/model/Tag__7.java | 109 +
.../camel/dataformat/ocsf/model/Technique.java | 274 +++
.../apache/camel/dataformat/ocsf/model/Ticket.java | 496 ++++
.../apache/camel/dataformat/ocsf/model/Tls.java | 802 ++++++
.../camel/dataformat/ocsf/model/TlsExtension.java | 109 +
.../camel/dataformat/ocsf/model/Traffic.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__1.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__2.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__3.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__4.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__5.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__6.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__7.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__8.java | 109 +
.../camel/dataformat/ocsf/model/Traffic__9.java | 109 +
.../apache/camel/dataformat/ocsf/model/Trait.java | 109 +
.../dataformat/ocsf/model/TransformationInfo.java | 109 +
.../camel/dataformat/ocsf/model/Unmapped.java | 114 +
.../apache/camel/dataformat/ocsf/model/Url.java | 628 +++++
.../apache/camel/dataformat/ocsf/model/User.java | 1047 ++++++++
.../camel/dataformat/ocsf/model/UserAccess.java | 602 +++++
.../dataformat/ocsf/model/VendorAttributes.java | 230 ++
.../camel/dataformat/ocsf/model/Vulnerability.java | 1324 ++++++++++
.../ocsf/model/VulnerabilityFinding.java | 682 ++++++
.../camel/dataformat/ocsf/model/WebResource.java | 109 +
.../ocsf/model/WebResourcesActivity.java | 569 +++++
.../dataformat/ocsf/model/WebResourcesResult.java | 109 +
.../camel/dataformat/ocsf/model/Xattributes.java | 109 +
.../dataformat/ocsf/model/Xattributes__1.java | 109 +
.../org/apache/camel/dataformat/ocsf/ocsf.json | 30 +
.../org/apache/camel/configurer/ocsf-dataformat | 2 +
.../org/apache/camel/dataformat.properties | 7 +
.../services/org/apache/camel/dataformat/ocsf | 2 +
.../camel-ocsf/src/main/docs/ocsf-dataformat.adoc | 258 ++
.../camel/dataformat/ocsf/OcsfConstants.java | 92 +
.../camel/dataformat/ocsf/OcsfDataFormat.java | 453 ++++
.../src/main/resources/schema/Account.json | 42 +
.../src/main/resources/schema/AccountChange.json | 65 +
.../src/main/resources/schema/Actor.json | 42 +
.../src/main/resources/schema/Agent.json | 46 +
.../src/main/resources/schema/Analytic.json | 58 +
.../camel-ocsf/src/main/resources/schema/Api.json | 31 +
.../src/main/resources/schema/ApiActivity.json | 55 +
.../src/main/resources/schema/Attack.json | 35 +
.../src/main/resources/schema/AuthFactor.json | 50 +
.../src/main/resources/schema/Authentication.json | 111 +
.../src/main/resources/schema/Authorization.json | 18 +
.../main/resources/schema/AuthorizeSession.json | 61 +
.../src/main/resources/schema/Certificate.json | 57 +
.../src/main/resources/schema/Cloud.json | 37 +
.../src/main/resources/schema/Compliance.json | 98 +
.../main/resources/schema/ComplianceFinding.json | 79 +
.../src/main/resources/schema/Container.json | 65 +
.../camel-ocsf/src/main/resources/schema/Cve.json | 73 +
.../camel-ocsf/src/main/resources/schema/Cvss.json | 56 +
.../camel-ocsf/src/main/resources/schema/Cwe.json | 23 +
.../main/resources/schema/DatastoreActivity.json | 69 +
.../main/resources/schema/DetectionFinding.json | 131 +
.../src/main/resources/schema/Device.json | 245 ++
.../src/main/resources/schema/DhcpActivity.json | 89 +
.../src/main/resources/schema/Display.json | 31 +
.../src/main/resources/schema/DnsActivity.json | 101 +
.../src/main/resources/schema/DnsQuery.json | 35 +
.../src/main/resources/schema/EmailActivity.json | 89 +
.../src/main/resources/schema/Endpoint.json | 93 +
.../src/main/resources/schema/Enrichment.json | 58 +
.../main/resources/schema/EntityManagement.json | 65 +
.../camel-ocsf/src/main/resources/schema/Epss.json | 27 +
.../src/main/resources/schema/Extension.json | 23 +
.../src/main/resources/schema/Feature.json | 23 +
.../camel-ocsf/src/main/resources/schema/File.json | 168 ++
.../src/main/resources/schema/FileActivity.json | 62 +
.../src/main/resources/schema/FindingInfo.json | 124 +
.../src/main/resources/schema/Fingerprint.json | 24 +
.../src/main/resources/schema/FtpActivity.json | 109 +
.../src/main/resources/schema/Group.json | 38 +
.../src/main/resources/schema/GroupManagement.json | 61 +
.../src/main/resources/schema/HttpActivity.json | 95 +
.../src/main/resources/schema/HttpHeader.json | 19 +
.../src/main/resources/schema/HttpRequest.json | 72 +
.../src/main/resources/schema/HttpResponse.json | 46 +
.../camel-ocsf/src/main/resources/schema/Idp.json | 69 +
.../src/main/resources/schema/Image.json | 42 +
.../src/main/resources/schema/IncidentFinding.json | 119 +
.../src/main/resources/schema/Ja4Fingerprint.json | 39 +
.../src/main/resources/schema/KbArticle.json | 65 +
.../src/main/resources/schema/KernelActivity.json | 40 +
.../resources/schema/KernelExtensionActivity.json | 40 +
.../src/main/resources/schema/KillChainPhase.json | 19 +
.../src/main/resources/schema/Location.json | 86 +
.../src/main/resources/schema/Logger.json | 69 +
.../src/main/resources/schema/Malware.json | 92 +
.../src/main/resources/schema/MemoryActivity.json | 55 +
.../src/main/resources/schema/Metadata.json | 160 ++
.../src/main/resources/schema/Module.json | 42 +
.../src/main/resources/schema/ModuleActivity.json | 39 +
.../src/main/resources/schema/NetworkActivity.json | 81 +
.../src/main/resources/schema/NetworkEndpoint.json | 135 ++
.../main/resources/schema/NetworkFileActivity.json | 84 +
.../main/resources/schema/NetworkInterface.json | 57 +
.../src/main/resources/schema/NtpActivity.json | 94 +
.../src/main/resources/schema/Observable.json | 38 +
.../src/main/resources/schema/OcsfEvent.json | 140 ++
.../src/main/resources/schema/Organization.json | 27 +
.../camel-ocsf/src/main/resources/schema/Os.json | 63 +
.../src/main/resources/schema/Package.json | 78 +
.../src/main/resources/schema/Policy.json | 50 +
.../src/main/resources/schema/Process.json | 122 +
.../src/main/resources/schema/ProcessActivity.json | 70 +
.../src/main/resources/schema/Product.json | 46 +
.../src/main/resources/schema/RdpActivity.json | 118 +
.../src/main/resources/schema/Remediation.json | 44 +
.../main/resources/schema/RemediationActivity.json | 48 +
.../src/main/resources/schema/Reputation.json | 27 +
.../src/main/resources/schema/Request.json | 41 +
.../src/main/resources/schema/ResourceDetails.json | 112 +
.../src/main/resources/schema/Response.json | 53 +
.../camel-ocsf/src/main/resources/schema/Rule.json | 35 +
.../camel-ocsf/src/main/resources/schema/San.json | 19 +
.../camel-ocsf/src/main/resources/schema/Scan.json | 27 +
.../src/main/resources/schema/ScanActivity.json | 84 +
.../resources/schema/ScheduledJobActivity.json | 40 +
.../src/main/resources/schema/SecurityFinding.json | 156 ++
.../src/main/resources/schema/Service.json | 38 +
.../src/main/resources/schema/Session.json | 64 +
.../src/main/resources/schema/SmbActivity.json | 119 +
.../src/main/resources/schema/SshActivity.json | 97 +
.../src/main/resources/schema/SubTechnique.json | 23 +
.../src/main/resources/schema/Tactic.json | 23 +
.../src/main/resources/schema/Technique.json | 23 +
.../src/main/resources/schema/Ticket.json | 46 +
.../camel-ocsf/src/main/resources/schema/Tls.json | 88 +
.../camel-ocsf/src/main/resources/schema/Url.json | 152 ++
.../camel-ocsf/src/main/resources/schema/User.json | 102 +
.../src/main/resources/schema/UserAccess.json | 62 +
.../main/resources/schema/VendorAttributes.json | 19 +
.../src/main/resources/schema/Vulnerability.json | 143 ++
.../resources/schema/VulnerabilityFinding.json | 72 +
.../resources/schema/WebResourcesActivity.json | 61 +
.../src/main/script/generate-ocsf-schemas.py | 678 ++++++
.../camel/dataformat/ocsf/OcsfDataFormatTest.java | 203 ++
.../dataformat/ocsf/OcsfEventExampleTest.java | 308 +++
.../src/test/resources/log4j2.properties | 28 +
.../resources/ocsf-detection-finding-example.json | 168 ++
components/pom.xml | 1 +
.../org/apache/camel/model/dataformat/ocsf.json | 27 +
.../services/org/apache/camel/model.properties | 1 +
.../org/apache/camel/model/dataformat/jaxb.index | 1 +
.../camel/builder/DataFormatBuilderFactory.java | 8 +
.../org/apache/camel/builder/DataFormatClause.java | 19 +
.../camel/model/dataformat/OcsfDataFormat.java | 414 ++++
.../reifier/dataformat/DataFormatReifier.java | 2 +
.../reifier/dataformat/OcsfDataFormatReifier.java | 43 +
.../org/apache/camel/main/dataformats.properties | 1 +
.../java/org/apache/camel/xml/in/ModelParser.java | 15 +
.../java/org/apache/camel/xml/out/ModelWriter.java | 17 +
.../org/apache/camel/yaml/out/ModelWriter.java | 17 +
.../modules/dataformats/examples/json/ocsf.json | 1 +
docs/components/modules/dataformats/nav.adoc | 1 +
.../modules/dataformats/pages/ocsf-dataformat.adoc | 1 +
.../dsl/yaml/deserializers/ModelDeserializers.java | 94 +
.../deserializers/ModelDeserializersResolver.java | 2 +
.../generated/resources/schema/camelYamlDsl.json | 62 +
parent/pom.xml | 5 +
361 files changed, 91649 insertions(+)
diff --git a/bom/camel-bom/pom.xml b/bom/camel-bom/pom.xml
index 2c4a3edcd3c8..ef796794bedb 100644
--- a/bom/camel-bom/pom.xml
+++ b/bom/camel-bom/pom.xml
@@ -1702,6 +1702,11 @@
<artifactId>camel-observation</artifactId>
<version>4.18.0-SNAPSHOT</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-ocsf</artifactId>
+ <version>4.18.0-SNAPSHOT</version>
+ </dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-ognl</artifactId>
diff --git a/catalog/camel-allcomponents/pom.xml b/catalog/camel-allcomponents/pom.xml
index d6b44a79065b..83fff97272da 100644
--- a/catalog/camel-allcomponents/pom.xml
+++ b/catalog/camel-allcomponents/pom.xml
@@ -1502,6 +1502,11 @@
<artifactId>camel-observation</artifactId>
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-ocsf</artifactId>
+ <version>${project.version}</version>
+ </dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-ognl</artifactId>
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats.properties
index 95f2e595b066..ba3381db70dd 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats.properties
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats.properties
@@ -30,6 +30,7 @@ jsonApi
jsonb
lzf
mimeMultipart
+ocsf
parquetAvro
pgp
pqc
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/ocsf.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/ocsf.json
new file mode 100644
index 000000000000..7c6f91004514
--- /dev/null
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/dataformats/ocsf.json
@@ -0,0 +1,30 @@
+{
+ "dataformat": {
+ "kind": "dataformat",
+ "name": "ocsf",
+ "title": "OCSF",
+ "description": "Marshal and unmarshal OCSF (Open Cybersecurity Schema Framework) security events to\/from JSON.",
+ "deprecated": false,
+ "firstVersion": "4.18.0",
+ "label": "dataformat,transformation,json,security",
+ "javaType": "org.apache.camel.dataformat.ocsf.OcsfDataFormat",
+ "supportLevel": "Preview",
+ "groupId": "org.apache.camel",
+ "artifactId": "camel-ocsf",
+ "version": "4.18.0-SNAPSHOT",
+ "modelName": "ocsf",
+ "modelJavaType": "org.apache.camel.model.dataformat.OcsfDataFormat"
+ },
+ "properties": {
+ "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" },
+ "objectMapper": { "index": 1, "kind": "attribute", "displayName": "Object Mapper", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Lookup and use the existing ObjectMapper with the given id when using Jackson." },
+ "useDefaultObjectMapper": { "index": 2, "kind": "attribute", "displayName": "Use Default Object Mapper", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether to lookup and use default Jackson ObjectMapper from the registry." },
+ "unmarshalType": { "index": 3, "kind": "attribute", "displayName": "Unmarshal Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Class name of the OCSF event type to use when unmarshalling. Defaults to OcsfEvent." },
+ "collectionType": { "index": 4, "kind": "attribute", "displayName": "Collection Type", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default." },
+ "useList": { "index": 5, "kind": "attribute", "displayName": "Use List", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "To unmarshal to a List of OCSF events." },
+ "allowUnmarshallType": { "index": 6, "kind": "attribute", "displayName": "Allow Unmarshall Type", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled then the unmarshal type can be specified via the CamelOcsfUnmarshalType header. This should only be enabled when desired to be used." },
+ "prettyPrint": { "index": 7, "kind": "attribute", "displayName": "Pretty Print", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "To enable pretty printing output nicely formatted. Is by default false." },
+ "enableFeatures": { "index": 8, "kind": "attribute", "displayName": "Enable Features", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.Deserializatio [...]
+ "disableFeatures": { "index": 9, "kind": "attribute", "displayName": "Disable Features", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.Deserializa [...]
+ }
+}
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties
index 0b18bc571da9..a7d37b28f16d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models.properties
@@ -112,6 +112,7 @@ mutualTLS
mvel
noErrorHandler
oauth2
+ocsf
ognl
onCompletion
onException
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/ocsf.json b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/ocsf.json
new file mode 100644
index 000000000000..51e0dcdc6397
--- /dev/null
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/models/ocsf.json
@@ -0,0 +1,27 @@
+{
+ "model": {
+ "kind": "model",
+ "name": "ocsf",
+ "title": "OCSF",
+ "description": "Marshal and unmarshal OCSF (Open Cybersecurity Schema Framework) security events to\/from JSON.",
+ "deprecated": false,
+ "firstVersion": "4.18.0",
+ "label": "dataformat,transformation,json,security",
+ "javaType": "org.apache.camel.model.dataformat.OcsfDataFormat",
+ "abstract": false,
+ "input": false,
+ "output": false
+ },
+ "properties": {
+ "id": { "index": 0, "kind": "attribute", "displayName": "Id", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The id of this node" },
+ "objectMapper": { "index": 1, "kind": "attribute", "displayName": "Object Mapper", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Lookup and use the existing ObjectMapper with the given id when using Jackson." },
+ "useDefaultObjectMapper": { "index": 2, "kind": "attribute", "displayName": "Use Default Object Mapper", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether to lookup and use default Jackson ObjectMapper from the registry." },
+ "unmarshalType": { "index": 3, "kind": "attribute", "displayName": "Unmarshal Type", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Class name of the OCSF event type to use when unmarshalling. Defaults to OcsfEvent." },
+ "collectionType": { "index": 4, "kind": "attribute", "displayName": "Collection Type", "group": "advanced", "label": "advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to use different collection types than java.util.Collection based as default." },
+ "useList": { "index": 5, "kind": "attribute", "displayName": "Use List", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "To unmarshal to a List of OCSF events." },
+ "allowUnmarshallType": { "index": 6, "kind": "attribute", "displayName": "Allow Unmarshall Type", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "If enabled then the unmarshal type can be specified via the CamelOcsfUnmarshalType header. This should only be enabled when desired to be used." },
+ "prettyPrint": { "index": 7, "kind": "attribute", "displayName": "Pretty Print", "group": "common", "required": false, "type": "boolean", "javaType": "java.lang.Boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "To enable pretty printing output nicely formatted. Is by default false." },
+ "enableFeatures": { "index": 8, "kind": "attribute", "displayName": "Enable Features", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.Deserializatio [...]
+ "disableFeatures": { "index": 9, "kind": "attribute", "displayName": "Disable Features", "group": "common", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that matches a enum from com.fasterxml.jackson.databind.SerializationFeature, com.fasterxml.jackson.databind.Deserializa [...]
+ }
+}
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
index dd4276567137..32dd64d4f969 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-spring.xsd
@@ -1120,6 +1120,15 @@ To not use an error handler.
<xs:documentation xml:lang="en">
<![CDATA[
Rest security OAuth2 definition
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ocsf" type="tns:ocsfDataFormat">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Marshal and unmarshal OCSF (Open Cybersecurity Schema Framework) security events to/from JSON.
]]>
</xs:documentation>
</xs:annotation>
@@ -17264,6 +17273,102 @@ Set a reference to a custom Expression to use.
</xs:choice>
</xs:sequence>
</xs:complexType>
+ <xs:complexType name="ocsfDataFormat">
+ <xs:complexContent>
+ <xs:extension base="tns:dataFormat">
+ <xs:sequence/>
+ <xs:attribute name="objectMapper" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Lookup and use the existing ObjectMapper with the given id when using Jackson.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="useDefaultObjectMapper" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Whether to lookup and use default Jackson ObjectMapper from the registry. Default value: true
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="unmarshalType" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Class name of the OCSF event type to use when unmarshalling. Defaults to OcsfEvent.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="collectionType" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to
+use different collection types than java.util.Collection based as default.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="useList" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+To unmarshal to a List of OCSF events. Default value: false
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="allowUnmarshallType" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+If enabled then the unmarshal type can be specified via the CamelOcsfUnmarshalType header. This should only be enabled
+when desired to be used. Default value: false
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="prettyPrint" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+To enable pretty printing output nicely formatted. Is by default false. Default value: false
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="enableFeatures" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that
+matches a enum from com.fasterxml.jackson.databind.SerializationFeature,
+com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features
+can be separated by comma.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="disableFeatures" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name
+that matches a enum from com.fasterxml.jackson.databind.SerializationFeature,
+com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features
+can be separated by comma.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
<xs:complexType name="pqcDataFormat">
<xs:complexContent>
<xs:extension base="tns:dataFormat">
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd
index 76d1debb63ff..ffc63b3223c5 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/schemas/camel-xml-io.xsd
@@ -1057,6 +1057,15 @@ To not use an error handler.
<xs:documentation xml:lang="en">
<![CDATA[
Rest security OAuth2 definition
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ocsf" type="tns:ocsfDataFormat">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Marshal and unmarshal OCSF (Open Cybersecurity Schema Framework) security events to/from JSON.
]]>
</xs:documentation>
</xs:annotation>
@@ -15958,6 +15967,102 @@ Set a reference to a custom Expression to use.
</xs:choice>
</xs:sequence>
</xs:complexType>
+ <xs:complexType name="ocsfDataFormat">
+ <xs:complexContent>
+ <xs:extension base="tns:dataFormat">
+ <xs:sequence/>
+ <xs:attribute name="objectMapper" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Lookup and use the existing ObjectMapper with the given id when using Jackson.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="useDefaultObjectMapper" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Whether to lookup and use default Jackson ObjectMapper from the registry. Default value: true
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="unmarshalType" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Class name of the OCSF event type to use when unmarshalling. Defaults to OcsfEvent.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="collectionType" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Refers to a custom collection type to lookup in the registry to use. This option should rarely be used, but allows to
+use different collection types than java.util.Collection based as default.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="useList" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+To unmarshal to a List of OCSF events. Default value: false
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="allowUnmarshallType" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+If enabled then the unmarshal type can be specified via the CamelOcsfUnmarshalType header. This should only be enabled
+when desired to be used. Default value: false
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="prettyPrint" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+To enable pretty printing output nicely formatted. Is by default false. Default value: false
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="enableFeatures" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Set of features to enable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name that
+matches a enum from com.fasterxml.jackson.databind.SerializationFeature,
+com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features
+can be separated by comma.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="disableFeatures" type="xs:string">
+ <xs:annotation>
+ <xs:documentation xml:lang="en">
+<![CDATA[
+Set of features to disable on the Jackson com.fasterxml.jackson.databind.ObjectMapper. The features should be a name
+that matches a enum from com.fasterxml.jackson.databind.SerializationFeature,
+com.fasterxml.jackson.databind.DeserializationFeature, or com.fasterxml.jackson.databind.MapperFeature Multiple features
+can be separated by comma.
+]]>
+ </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
<xs:complexType name="pqcDataFormat">
<xs:complexContent>
<xs:extension base="tns:dataFormat">
diff --git a/components/camel-ocsf/pom.xml b/components/camel-ocsf/pom.xml
new file mode 100644
index 000000000000..2263e9054d27
--- /dev/null
+++ b/components/camel-ocsf/pom.xml
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>components</artifactId>
+ <groupId>org.apache.camel</groupId>
+ <version>4.18.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>camel-ocsf</artifactId>
+ <packaging>jar</packaging>
+ <name>Camel :: OCSF</name>
+ <description>Camel OCSF (Open Cybersecurity Schema Framework) DataFormat</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-support</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ </dependency>
+
+ <!-- testing -->
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-test-junit5</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.junit.jupiter</groupId>
+ <artifactId>junit-jupiter</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.assertj</groupId>
+ <artifactId>assertj-core</artifactId>
+ <version>${assertj-version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <!-- Exclude Python script from license check (it has its own header) -->
+ <!--<plugin>
+ <groupId>com.mycila</groupId>
+ <artifactId>license-maven-plugin</artifactId>
+ <configuration>
+ <excludes combine.children="append">
+ <exclude>src/main/script/**</exclude>
+ </excludes>
+ </configuration>
+ </plugin>-->
+ </plugins>
+ </build>
+
+ <profiles>
+ <!-- Profile to regenerate OCSF model classes from JSON schemas -->
+ <!-- Usage: mvn generate-sources -Pgenerate-ocsf-model -->
+ <profile>
+ <id>generate-ocsf-model</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jsonschema2pojo</groupId>
+ <artifactId>jsonschema2pojo-maven-plugin</artifactId>
+ <version>1.2.2</version>
+ <configuration>
+ <sourceDirectory>${basedir}/src/main/resources/schema</sourceDirectory>
+ <targetPackage>org.apache.camel.dataformat.ocsf.model</targetPackage>
+ <outputDirectory>${basedir}/src/generated/java</outputDirectory>
+ <generateBuilders>true</generateBuilders>
+ <includeAdditionalProperties>true</includeAdditionalProperties>
+ <includeConstructors>true</includeConstructors>
+ <includeHashcodeAndEquals>true</includeHashcodeAndEquals>
+ <includeToString>true</includeToString>
+ <useTitleAsClassname>true</useTitleAsClassname>
+ <useInnerClassBuilders>true</useInnerClassBuilders>
+ <initializeCollections>true</initializeCollections>
+ <annotationStyle>jackson2</annotationStyle>
+ <inclusionLevel>NON_NULL</inclusionLevel>
+ <dateTimeType>java.time.Instant</dateTimeType>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/OcsfDataFormatConfigurer.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/OcsfDataFormatConfigurer.java
new file mode 100644
index 000000000000..1d3cb9bc7baa
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/OcsfDataFormatConfigurer.java
@@ -0,0 +1,119 @@
+/* Generated by camel build tools - do NOT edit this file! */
+package org.apache.camel.dataformat.ocsf;
+
+import javax.annotation.processing.Generated;
+import java.util.Map;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
+import org.apache.camel.spi.PropertyConfigurerGetter;
+import org.apache.camel.spi.ConfigurerStrategy;
+import org.apache.camel.spi.GeneratedPropertyConfigurer;
+import org.apache.camel.util.CaseInsensitiveMap;
+import org.apache.camel.support.component.PropertyConfigurerSupport;
+
+/**
+ * Generated by camel build tools - do NOT edit this file!
+ */
+@Generated("org.apache.camel.maven.packaging.PackageDataFormatMojo")
+@SuppressWarnings("unchecked")
+public class OcsfDataFormatConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter {
+
+ private static final Map<String, Object> ALL_OPTIONS;
+ static {
+ Map<String, Object> map = new CaseInsensitiveMap();
+ map.put("AllowUnmarshallType", boolean.class);
+ map.put("CollectionType", java.lang.Class.class);
+ map.put("DisableFeatures", java.lang.String.class);
+ map.put("EnableFeatures", java.lang.String.class);
+ map.put("ObjectMapper", com.fasterxml.jackson.databind.ObjectMapper.class);
+ map.put("PrettyPrint", boolean.class);
+ map.put("UnmarshalType", java.lang.Class.class);
+ map.put("UseDefaultObjectMapper", boolean.class);
+ map.put("UseList", boolean.class);
+ ALL_OPTIONS = map;
+ }
+
+ @Override
+ public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
+ OcsfDataFormat target = (OcsfDataFormat) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "allowunmarshalltype":
+ case "allowUnmarshallType": target.setAllowUnmarshallType(property(camelContext, boolean.class, value)); return true;
+ case "collectiontype":
+ case "collectionType": target.setCollectionType(property(camelContext, java.lang.Class.class, value)); return true;
+ case "disablefeatures":
+ case "disableFeatures": target.setDisableFeatures(property(camelContext, java.lang.String.class, value)); return true;
+ case "enablefeatures":
+ case "enableFeatures": target.setEnableFeatures(property(camelContext, java.lang.String.class, value)); return true;
+ case "objectmapper":
+ case "objectMapper": target.setObjectMapper(property(camelContext, com.fasterxml.jackson.databind.ObjectMapper.class, value)); return true;
+ case "prettyprint":
+ case "prettyPrint": target.setPrettyPrint(property(camelContext, boolean.class, value)); return true;
+ case "unmarshaltype":
+ case "unmarshalType": target.setUnmarshalType(property(camelContext, java.lang.Class.class, value)); return true;
+ case "usedefaultobjectmapper":
+ case "useDefaultObjectMapper": target.setUseDefaultObjectMapper(property(camelContext, boolean.class, value)); return true;
+ case "uselist":
+ case "useList": target.setUseList(property(camelContext, boolean.class, value)); return true;
+ default: return false;
+ }
+ }
+
+ @Override
+ public Map<String, Object> getAllOptions(Object target) {
+ return ALL_OPTIONS;
+ }
+
+ @Override
+ public Class<?> getOptionType(String name, boolean ignoreCase) {
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "allowunmarshalltype":
+ case "allowUnmarshallType": return boolean.class;
+ case "collectiontype":
+ case "collectionType": return java.lang.Class.class;
+ case "disablefeatures":
+ case "disableFeatures": return java.lang.String.class;
+ case "enablefeatures":
+ case "enableFeatures": return java.lang.String.class;
+ case "objectmapper":
+ case "objectMapper": return com.fasterxml.jackson.databind.ObjectMapper.class;
+ case "prettyprint":
+ case "prettyPrint": return boolean.class;
+ case "unmarshaltype":
+ case "unmarshalType": return java.lang.Class.class;
+ case "usedefaultobjectmapper":
+ case "useDefaultObjectMapper": return boolean.class;
+ case "uselist":
+ case "useList": return boolean.class;
+ default: return null;
+ }
+ }
+
+ @Override
+ public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
+ OcsfDataFormat target = (OcsfDataFormat) obj;
+ switch (ignoreCase ? name.toLowerCase() : name) {
+ case "allowunmarshalltype":
+ case "allowUnmarshallType": return target.isAllowUnmarshallType();
+ case "collectiontype":
+ case "collectionType": return target.getCollectionType();
+ case "disablefeatures":
+ case "disableFeatures": return target.getDisableFeatures();
+ case "enablefeatures":
+ case "enableFeatures": return target.getEnableFeatures();
+ case "objectmapper":
+ case "objectMapper": return target.getObjectMapper();
+ case "prettyprint":
+ case "prettyPrint": return target.isPrettyPrint();
+ case "unmarshaltype":
+ case "unmarshalType": return target.getUnmarshalType();
+ case "usedefaultobjectmapper":
+ case "useDefaultObjectMapper": return target.isUseDefaultObjectMapper();
+ case "uselist":
+ case "useList": return target.isUseList();
+ default: return null;
+ }
+ }
+}
+
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Account.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Account.java
new file mode 100644
index 000000000000..d898c76aa589
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Account.java
@@ -0,0 +1,408 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Account
+ * <p>
+ * The Account object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "name",
+ "type",
+ "uid",
+ "labels",
+ "tags",
+ "type_id"
+})
+@Generated("jsonschema2pojo")
+public class Account {
+
+ /**
+ * Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ private String name;
+ /**
+ * Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ private String type;
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ private String uid;
+ /**
+ * Labels
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("labels")
+ private List<String> labels = new ArrayList<String>();
+ /**
+ * Tags
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("tags")
+ private List<Tag> tags = new ArrayList<Tag>();
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ private Integer typeId;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Account() {
+ }
+
+ /**
+ *
+ * @param uid
+ * Unique ID.
+ * @param name
+ * Name.
+ * @param typeId
+ * Type ID.
+ * @param type
+ * Type.
+ * @param labels
+ * Labels.
+ * @param tags
+ * Tags.
+ */
+ public Account(String name, String type, String uid, List<String> labels, List<Tag> tags, Integer typeId) {
+ super();
+ this.name = name;
+ this.type = type;
+ this.uid = uid;
+ this.labels = labels;
+ this.tags = tags;
+ this.typeId = typeId;
+ }
+
+ public static Account.AccountBuilderBase builder() {
+ return new Account.AccountBuilder();
+ }
+
+ /**
+ * Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
+ * Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public String getUid() {
+ return uid;
+ }
+
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public void setUid(String uid) {
+ this.uid = uid;
+ }
+
+ /**
+ * Labels
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("labels")
+ public List<String> getLabels() {
+ return labels;
+ }
+
+ /**
+ * Labels
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("labels")
+ public void setLabels(List<String> labels) {
+ this.labels = labels;
+ }
+
+ /**
+ * Tags
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("tags")
+ public List<Tag> getTags() {
+ return tags;
+ }
+
+ /**
+ * Tags
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("tags")
+ public void setTags(List<Tag> tags) {
+ this.tags = tags;
+ }
+
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ public Integer getTypeId() {
+ return typeId;
+ }
+
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ public void setTypeId(Integer typeId) {
+ this.typeId = typeId;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Account.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("name");
+ sb.append('=');
+ sb.append(((this.name == null)?"<null>":this.name));
+ sb.append(',');
+ sb.append("type");
+ sb.append('=');
+ sb.append(((this.type == null)?"<null>":this.type));
+ sb.append(',');
+ sb.append("uid");
+ sb.append('=');
+ sb.append(((this.uid == null)?"<null>":this.uid));
+ sb.append(',');
+ sb.append("labels");
+ sb.append('=');
+ sb.append(((this.labels == null)?"<null>":this.labels));
+ sb.append(',');
+ sb.append("tags");
+ sb.append('=');
+ sb.append(((this.tags == null)?"<null>":this.tags));
+ sb.append(',');
+ sb.append("typeId");
+ sb.append('=');
+ sb.append(((this.typeId == null)?"<null>":this.typeId));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.uid == null)? 0 :this.uid.hashCode()));
+ result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode()));
+ result = ((result* 31)+((this.typeId == null)? 0 :this.typeId.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode()));
+ result = ((result* 31)+((this.labels == null)? 0 :this.labels.hashCode()));
+ result = ((result* 31)+((this.tags == null)? 0 :this.tags.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Account) == false) {
+ return false;
+ }
+ Account rhs = ((Account) other);
+ return ((((((((this.uid == rhs.uid)||((this.uid!= null)&&this.uid.equals(rhs.uid)))&&((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name))))&&((this.typeId == rhs.typeId)||((this.typeId!= null)&&this.typeId.equals(rhs.typeId))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))) [...]
+ }
+
+ public static class AccountBuilder
+ extends Account.AccountBuilderBase<Account>
+ {
+
+
+ public AccountBuilder() {
+ super();
+ }
+
+ public AccountBuilder(String name, String type, String uid, List<String> labels, List<Tag> tags, Integer typeId) {
+ super(name, type, uid, labels, tags, typeId);
+ }
+
+ }
+
+ public static abstract class AccountBuilderBase<T extends Account >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AccountBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Account.AccountBuilder.class)) {
+ this.instance = ((T) new Account());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AccountBuilderBase(String name, String type, String uid, List<String> labels, List<Tag> tags, Integer typeId) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Account.AccountBuilder.class)) {
+ this.instance = ((T) new Account(name, type, uid, labels, tags, typeId));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Account.AccountBuilderBase withName(String name) {
+ ((Account) this.instance).name = name;
+ return this;
+ }
+
+ public Account.AccountBuilderBase withType(String type) {
+ ((Account) this.instance).type = type;
+ return this;
+ }
+
+ public Account.AccountBuilderBase withUid(String uid) {
+ ((Account) this.instance).uid = uid;
+ return this;
+ }
+
+ public Account.AccountBuilderBase withLabels(List<String> labels) {
+ ((Account) this.instance).labels = labels;
+ return this;
+ }
+
+ public Account.AccountBuilderBase withTags(List<Tag> tags) {
+ ((Account) this.instance).tags = tags;
+ return this;
+ }
+
+ public Account.AccountBuilderBase withTypeId(Integer typeId) {
+ ((Account) this.instance).typeId = typeId;
+ return this;
+ }
+
+ public Account.AccountBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Account) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AccountChange.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AccountChange.java
new file mode 100644
index 000000000000..8429151d5417
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AccountChange.java
@@ -0,0 +1,635 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * AccountChange
+ * <p>
+ * AccountChange event class.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "actor",
+ "raw_data_size",
+ "http_response",
+ "policies",
+ "enrichments",
+ "http_request",
+ "src_endpoint",
+ "user",
+ "auth_factors",
+ "user_result",
+ "raw_data_hash",
+ "policy"
+})
+@Generated("jsonschema2pojo")
+public class AccountChange {
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ @JsonPropertyDescription("The Actor object.")
+ private Actor actor;
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ private Integer rawDataSize;
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ @JsonPropertyDescription("The HTTP Response object.")
+ private HttpResponse httpResponse;
+ /**
+ *
+ */
+ @JsonProperty("policies")
+ @JsonPropertyDescription("")
+ private List<Policy> policies = new ArrayList<Policy>();
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ @JsonPropertyDescription("")
+ private List<Enrichment> enrichments = new ArrayList<Enrichment>();
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ @JsonPropertyDescription("The HTTP Request object.")
+ private HttpRequest httpRequest;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint srcEndpoint;
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ @JsonPropertyDescription("The User object.")
+ private User user;
+ /**
+ *
+ */
+ @JsonProperty("auth_factors")
+ @JsonPropertyDescription("")
+ private List<AuthFactor> authFactors = new ArrayList<AuthFactor>();
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user_result")
+ @JsonPropertyDescription("The User object.")
+ private User userResult;
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ @JsonPropertyDescription("The Fingerprint object.")
+ private Fingerprint rawDataHash;
+ /**
+ * Policy
+ * <p>
+ * The Policy object.
+ *
+ */
+ @JsonProperty("policy")
+ @JsonPropertyDescription("The Policy object.")
+ private Policy policy;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public AccountChange() {
+ }
+
+ /**
+ *
+ * @param rawDataSize
+ * Raw Data Size.
+ */
+ public AccountChange(Actor actor, Integer rawDataSize, HttpResponse httpResponse, List<Policy> policies, List<Enrichment> enrichments, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, User user, List<AuthFactor> authFactors, User userResult, Fingerprint rawDataHash, Policy policy) {
+ super();
+ this.actor = actor;
+ this.rawDataSize = rawDataSize;
+ this.httpResponse = httpResponse;
+ this.policies = policies;
+ this.enrichments = enrichments;
+ this.httpRequest = httpRequest;
+ this.srcEndpoint = srcEndpoint;
+ this.user = user;
+ this.authFactors = authFactors;
+ this.userResult = userResult;
+ this.rawDataHash = rawDataHash;
+ this.policy = policy;
+ }
+
+ public static AccountChange.AccountChangeBuilderBase builder() {
+ return new AccountChange.AccountChangeBuilder();
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public Actor getActor() {
+ return actor;
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public void setActor(Actor actor) {
+ this.actor = actor;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public Integer getRawDataSize() {
+ return rawDataSize;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public void setRawDataSize(Integer rawDataSize) {
+ this.rawDataSize = rawDataSize;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public HttpResponse getHttpResponse() {
+ return httpResponse;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public void setHttpResponse(HttpResponse httpResponse) {
+ this.httpResponse = httpResponse;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("policies")
+ public List<Policy> getPolicies() {
+ return policies;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("policies")
+ public void setPolicies(List<Policy> policies) {
+ this.policies = policies;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public List<Enrichment> getEnrichments() {
+ return enrichments;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public void setEnrichments(List<Enrichment> enrichments) {
+ this.enrichments = enrichments;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public HttpRequest getHttpRequest() {
+ return httpRequest;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public void setHttpRequest(HttpRequest httpRequest) {
+ this.httpRequest = httpRequest;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public NetworkEndpoint getSrcEndpoint() {
+ return srcEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public void setSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ this.srcEndpoint = srcEndpoint;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public User getUser() {
+ return user;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("auth_factors")
+ public List<AuthFactor> getAuthFactors() {
+ return authFactors;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("auth_factors")
+ public void setAuthFactors(List<AuthFactor> authFactors) {
+ this.authFactors = authFactors;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user_result")
+ public User getUserResult() {
+ return userResult;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user_result")
+ public void setUserResult(User userResult) {
+ this.userResult = userResult;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public Fingerprint getRawDataHash() {
+ return rawDataHash;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public void setRawDataHash(Fingerprint rawDataHash) {
+ this.rawDataHash = rawDataHash;
+ }
+
+ /**
+ * Policy
+ * <p>
+ * The Policy object.
+ *
+ */
+ @JsonProperty("policy")
+ public Policy getPolicy() {
+ return policy;
+ }
+
+ /**
+ * Policy
+ * <p>
+ * The Policy object.
+ *
+ */
+ @JsonProperty("policy")
+ public void setPolicy(Policy policy) {
+ this.policy = policy;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AccountChange.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("actor");
+ sb.append('=');
+ sb.append(((this.actor == null)?"<null>":this.actor));
+ sb.append(',');
+ sb.append("rawDataSize");
+ sb.append('=');
+ sb.append(((this.rawDataSize == null)?"<null>":this.rawDataSize));
+ sb.append(',');
+ sb.append("httpResponse");
+ sb.append('=');
+ sb.append(((this.httpResponse == null)?"<null>":this.httpResponse));
+ sb.append(',');
+ sb.append("policies");
+ sb.append('=');
+ sb.append(((this.policies == null)?"<null>":this.policies));
+ sb.append(',');
+ sb.append("enrichments");
+ sb.append('=');
+ sb.append(((this.enrichments == null)?"<null>":this.enrichments));
+ sb.append(',');
+ sb.append("httpRequest");
+ sb.append('=');
+ sb.append(((this.httpRequest == null)?"<null>":this.httpRequest));
+ sb.append(',');
+ sb.append("srcEndpoint");
+ sb.append('=');
+ sb.append(((this.srcEndpoint == null)?"<null>":this.srcEndpoint));
+ sb.append(',');
+ sb.append("user");
+ sb.append('=');
+ sb.append(((this.user == null)?"<null>":this.user));
+ sb.append(',');
+ sb.append("authFactors");
+ sb.append('=');
+ sb.append(((this.authFactors == null)?"<null>":this.authFactors));
+ sb.append(',');
+ sb.append("userResult");
+ sb.append('=');
+ sb.append(((this.userResult == null)?"<null>":this.userResult));
+ sb.append(',');
+ sb.append("rawDataHash");
+ sb.append('=');
+ sb.append(((this.rawDataHash == null)?"<null>":this.rawDataHash));
+ sb.append(',');
+ sb.append("policy");
+ sb.append('=');
+ sb.append(((this.policy == null)?"<null>":this.policy));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.rawDataSize == null)? 0 :this.rawDataSize.hashCode()));
+ result = ((result* 31)+((this.authFactors == null)? 0 :this.authFactors.hashCode()));
+ result = ((result* 31)+((this.policies == null)? 0 :this.policies.hashCode()));
+ result = ((result* 31)+((this.actor == null)? 0 :this.actor.hashCode()));
+ result = ((result* 31)+((this.srcEndpoint == null)? 0 :this.srcEndpoint.hashCode()));
+ result = ((result* 31)+((this.rawDataHash == null)? 0 :this.rawDataHash.hashCode()));
+ result = ((result* 31)+((this.userResult == null)? 0 :this.userResult.hashCode()));
+ result = ((result* 31)+((this.httpRequest == null)? 0 :this.httpRequest.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.httpResponse == null)? 0 :this.httpResponse.hashCode()));
+ result = ((result* 31)+((this.user == null)? 0 :this.user.hashCode()));
+ result = ((result* 31)+((this.enrichments == null)? 0 :this.enrichments.hashCode()));
+ result = ((result* 31)+((this.policy == null)? 0 :this.policy.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AccountChange) == false) {
+ return false;
+ }
+ AccountChange rhs = ((AccountChange) other);
+ return ((((((((((((((this.rawDataSize == rhs.rawDataSize)||((this.rawDataSize!= null)&&this.rawDataSize.equals(rhs.rawDataSize)))&&((this.authFactors == rhs.authFactors)||((this.authFactors!= null)&&this.authFactors.equals(rhs.authFactors))))&&((this.policies == rhs.policies)||((this.policies!= null)&&this.policies.equals(rhs.policies))))&&((this.actor == rhs.actor)||((this.actor!= null)&&this.actor.equals(rhs.actor))))&&((this.srcEndpoint == rhs.srcEndpoint)||((this.srcEndpoint! [...]
+ }
+
+ public static class AccountChangeBuilder
+ extends AccountChange.AccountChangeBuilderBase<AccountChange>
+ {
+
+
+ public AccountChangeBuilder() {
+ super();
+ }
+
+ public AccountChangeBuilder(Actor actor, Integer rawDataSize, HttpResponse httpResponse, List<Policy> policies, List<Enrichment> enrichments, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, User user, List<AuthFactor> authFactors, User userResult, Fingerprint rawDataHash, Policy policy) {
+ super(actor, rawDataSize, httpResponse, policies, enrichments, httpRequest, srcEndpoint, user, authFactors, userResult, rawDataHash, policy);
+ }
+
+ }
+
+ public static abstract class AccountChangeBuilderBase<T extends AccountChange >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AccountChangeBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AccountChange.AccountChangeBuilder.class)) {
+ this.instance = ((T) new AccountChange());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AccountChangeBuilderBase(Actor actor, Integer rawDataSize, HttpResponse httpResponse, List<Policy> policies, List<Enrichment> enrichments, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, User user, List<AuthFactor> authFactors, User userResult, Fingerprint rawDataHash, Policy policy) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AccountChange.AccountChangeBuilder.class)) {
+ this.instance = ((T) new AccountChange(actor, rawDataSize, httpResponse, policies, enrichments, httpRequest, srcEndpoint, user, authFactors, userResult, rawDataHash, policy));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withActor(Actor actor) {
+ ((AccountChange) this.instance).actor = actor;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withRawDataSize(Integer rawDataSize) {
+ ((AccountChange) this.instance).rawDataSize = rawDataSize;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withHttpResponse(HttpResponse httpResponse) {
+ ((AccountChange) this.instance).httpResponse = httpResponse;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withPolicies(List<Policy> policies) {
+ ((AccountChange) this.instance).policies = policies;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withEnrichments(List<Enrichment> enrichments) {
+ ((AccountChange) this.instance).enrichments = enrichments;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withHttpRequest(HttpRequest httpRequest) {
+ ((AccountChange) this.instance).httpRequest = httpRequest;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ ((AccountChange) this.instance).srcEndpoint = srcEndpoint;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withUser(User user) {
+ ((AccountChange) this.instance).user = user;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withAuthFactors(List<AuthFactor> authFactors) {
+ ((AccountChange) this.instance).authFactors = authFactors;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withUserResult(User userResult) {
+ ((AccountChange) this.instance).userResult = userResult;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withRawDataHash(Fingerprint rawDataHash) {
+ ((AccountChange) this.instance).rawDataHash = rawDataHash;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withPolicy(Policy policy) {
+ ((AccountChange) this.instance).policy = policy;
+ return this;
+ }
+
+ public AccountChange.AccountChangeBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AccountChange) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Actor.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Actor.java
new file mode 100644
index 000000000000..f0cc5f079ae2
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Actor.java
@@ -0,0 +1,493 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "process",
+ "session",
+ "user",
+ "app_name",
+ "app_uid",
+ "authorizations",
+ "idp",
+ "invoked_by"
+})
+@Generated("jsonschema2pojo")
+public class Actor {
+
+ /**
+ * Process
+ * <p>
+ * The Process object.
+ *
+ */
+ @JsonProperty("process")
+ @JsonPropertyDescription("The Process object.")
+ private Process process;
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ @JsonPropertyDescription("The Session object.")
+ private Session session;
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ @JsonPropertyDescription("The User object.")
+ private User user;
+ /**
+ * Application Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("app_name")
+ private String appName;
+ /**
+ * Application ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("app_uid")
+ private String appUid;
+ /**
+ * Authorization Information
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("authorizations")
+ private List<Authorization> authorizations = new ArrayList<Authorization>();
+ /**
+ * Idp
+ * <p>
+ * The Identity Provider object.
+ *
+ */
+ @JsonProperty("idp")
+ @JsonPropertyDescription("The Identity Provider object.")
+ private Idp idp;
+ /**
+ * Invoked by
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("invoked_by")
+ private String invokedBy;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Actor() {
+ }
+
+ /**
+ *
+ * @param appName
+ * Application Name.
+ * @param authorizations
+ * Authorization Information.
+ * @param appUid
+ * Application ID.
+ * @param invokedBy
+ * Invoked by.
+ */
+ public Actor(Process process, Session session, User user, String appName, String appUid, List<Authorization> authorizations, Idp idp, String invokedBy) {
+ super();
+ this.process = process;
+ this.session = session;
+ this.user = user;
+ this.appName = appName;
+ this.appUid = appUid;
+ this.authorizations = authorizations;
+ this.idp = idp;
+ this.invokedBy = invokedBy;
+ }
+
+ public static Actor.ActorBuilderBase builder() {
+ return new Actor.ActorBuilder();
+ }
+
+ /**
+ * Process
+ * <p>
+ * The Process object.
+ *
+ */
+ @JsonProperty("process")
+ public Process getProcess() {
+ return process;
+ }
+
+ /**
+ * Process
+ * <p>
+ * The Process object.
+ *
+ */
+ @JsonProperty("process")
+ public void setProcess(Process process) {
+ this.process = process;
+ }
+
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ public Session getSession() {
+ return session;
+ }
+
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ public void setSession(Session session) {
+ this.session = session;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public User getUser() {
+ return user;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ /**
+ * Application Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("app_name")
+ public String getAppName() {
+ return appName;
+ }
+
+ /**
+ * Application Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("app_name")
+ public void setAppName(String appName) {
+ this.appName = appName;
+ }
+
+ /**
+ * Application ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("app_uid")
+ public String getAppUid() {
+ return appUid;
+ }
+
+ /**
+ * Application ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("app_uid")
+ public void setAppUid(String appUid) {
+ this.appUid = appUid;
+ }
+
+ /**
+ * Authorization Information
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("authorizations")
+ public List<Authorization> getAuthorizations() {
+ return authorizations;
+ }
+
+ /**
+ * Authorization Information
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("authorizations")
+ public void setAuthorizations(List<Authorization> authorizations) {
+ this.authorizations = authorizations;
+ }
+
+ /**
+ * Idp
+ * <p>
+ * The Identity Provider object.
+ *
+ */
+ @JsonProperty("idp")
+ public Idp getIdp() {
+ return idp;
+ }
+
+ /**
+ * Idp
+ * <p>
+ * The Identity Provider object.
+ *
+ */
+ @JsonProperty("idp")
+ public void setIdp(Idp idp) {
+ this.idp = idp;
+ }
+
+ /**
+ * Invoked by
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("invoked_by")
+ public String getInvokedBy() {
+ return invokedBy;
+ }
+
+ /**
+ * Invoked by
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("invoked_by")
+ public void setInvokedBy(String invokedBy) {
+ this.invokedBy = invokedBy;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Actor.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("process");
+ sb.append('=');
+ sb.append(((this.process == null)?"<null>":this.process));
+ sb.append(',');
+ sb.append("session");
+ sb.append('=');
+ sb.append(((this.session == null)?"<null>":this.session));
+ sb.append(',');
+ sb.append("user");
+ sb.append('=');
+ sb.append(((this.user == null)?"<null>":this.user));
+ sb.append(',');
+ sb.append("appName");
+ sb.append('=');
+ sb.append(((this.appName == null)?"<null>":this.appName));
+ sb.append(',');
+ sb.append("appUid");
+ sb.append('=');
+ sb.append(((this.appUid == null)?"<null>":this.appUid));
+ sb.append(',');
+ sb.append("authorizations");
+ sb.append('=');
+ sb.append(((this.authorizations == null)?"<null>":this.authorizations));
+ sb.append(',');
+ sb.append("idp");
+ sb.append('=');
+ sb.append(((this.idp == null)?"<null>":this.idp));
+ sb.append(',');
+ sb.append("invokedBy");
+ sb.append('=');
+ sb.append(((this.invokedBy == null)?"<null>":this.invokedBy));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.process == null)? 0 :this.process.hashCode()));
+ result = ((result* 31)+((this.idp == null)? 0 :this.idp.hashCode()));
+ result = ((result* 31)+((this.session == null)? 0 :this.session.hashCode()));
+ result = ((result* 31)+((this.appName == null)? 0 :this.appName.hashCode()));
+ result = ((result* 31)+((this.authorizations == null)? 0 :this.authorizations.hashCode()));
+ result = ((result* 31)+((this.appUid == null)? 0 :this.appUid.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.invokedBy == null)? 0 :this.invokedBy.hashCode()));
+ result = ((result* 31)+((this.user == null)? 0 :this.user.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Actor) == false) {
+ return false;
+ }
+ Actor rhs = ((Actor) other);
+ return ((((((((((this.process == rhs.process)||((this.process!= null)&&this.process.equals(rhs.process)))&&((this.idp == rhs.idp)||((this.idp!= null)&&this.idp.equals(rhs.idp))))&&((this.session == rhs.session)||((this.session!= null)&&this.session.equals(rhs.session))))&&((this.appName == rhs.appName)||((this.appName!= null)&&this.appName.equals(rhs.appName))))&&((this.authorizations == rhs.authorizations)||((this.authorizations!= null)&&this.authorizations.equals(rhs.authorizat [...]
+ }
+
+ public static class ActorBuilder
+ extends Actor.ActorBuilderBase<Actor>
+ {
+
+
+ public ActorBuilder() {
+ super();
+ }
+
+ public ActorBuilder(Process process, Session session, User user, String appName, String appUid, List<Authorization> authorizations, Idp idp, String invokedBy) {
+ super(process, session, user, appName, appUid, authorizations, idp, invokedBy);
+ }
+
+ }
+
+ public static abstract class ActorBuilderBase<T extends Actor >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public ActorBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Actor.ActorBuilder.class)) {
+ this.instance = ((T) new Actor());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public ActorBuilderBase(Process process, Session session, User user, String appName, String appUid, List<Authorization> authorizations, Idp idp, String invokedBy) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Actor.ActorBuilder.class)) {
+ this.instance = ((T) new Actor(process, session, user, appName, appUid, authorizations, idp, invokedBy));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Actor.ActorBuilderBase withProcess(Process process) {
+ ((Actor) this.instance).process = process;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withSession(Session session) {
+ ((Actor) this.instance).session = session;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withUser(User user) {
+ ((Actor) this.instance).user = user;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withAppName(String appName) {
+ ((Actor) this.instance).appName = appName;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withAppUid(String appUid) {
+ ((Actor) this.instance).appUid = appUid;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withAuthorizations(List<Authorization> authorizations) {
+ ((Actor) this.instance).authorizations = authorizations;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withIdp(Idp idp) {
+ ((Actor) this.instance).idp = idp;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withInvokedBy(String invokedBy) {
+ ((Actor) this.instance).invokedBy = invokedBy;
+ return this;
+ }
+
+ public Actor.ActorBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Actor) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Advisory.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Advisory.java
new file mode 100644
index 000000000000..5594d564d290
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Advisory.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class Advisory {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static Advisory.AdvisoryBuilderBase builder() {
+ return new Advisory.AdvisoryBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Advisory.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Advisory) == false) {
+ return false;
+ }
+ Advisory rhs = ((Advisory) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AdvisoryBuilder
+ extends Advisory.AdvisoryBuilderBase<Advisory>
+ {
+
+
+ public AdvisoryBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AdvisoryBuilderBase<T extends Advisory >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AdvisoryBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Advisory.AdvisoryBuilder.class)) {
+ this.instance = ((T) new Advisory());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Advisory.AdvisoryBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Advisory) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AffectedCode.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AffectedCode.java
new file mode 100644
index 000000000000..edd55ceefb80
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AffectedCode.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AffectedCode {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AffectedCode.AffectedCodeBuilderBase builder() {
+ return new AffectedCode.AffectedCodeBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AffectedCode.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AffectedCode) == false) {
+ return false;
+ }
+ AffectedCode rhs = ((AffectedCode) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AffectedCodeBuilder
+ extends AffectedCode.AffectedCodeBuilderBase<AffectedCode>
+ {
+
+
+ public AffectedCodeBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AffectedCodeBuilderBase<T extends AffectedCode >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AffectedCodeBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AffectedCode.AffectedCodeBuilder.class)) {
+ this.instance = ((T) new AffectedCode());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AffectedCode.AffectedCodeBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AffectedCode) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AffectedPackage.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AffectedPackage.java
new file mode 100644
index 000000000000..149687e58ca4
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AffectedPackage.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AffectedPackage {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AffectedPackage.AffectedPackageBuilderBase builder() {
+ return new AffectedPackage.AffectedPackageBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AffectedPackage.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AffectedPackage) == false) {
+ return false;
+ }
+ AffectedPackage rhs = ((AffectedPackage) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AffectedPackageBuilder
+ extends AffectedPackage.AffectedPackageBuilderBase<AffectedPackage>
+ {
+
+
+ public AffectedPackageBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AffectedPackageBuilderBase<T extends AffectedPackage >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AffectedPackageBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AffectedPackage.AffectedPackageBuilder.class)) {
+ this.instance = ((T) new AffectedPackage());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AffectedPackage.AffectedPackageBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AffectedPackage) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Agent.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Agent.java
new file mode 100644
index 000000000000..ff126525f08e
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Agent.java
@@ -0,0 +1,487 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Agent
+ * <p>
+ * The Agent object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "name",
+ "type",
+ "version",
+ "uid",
+ "type_id",
+ "policies",
+ "uid_alt",
+ "vendor_name"
+})
+@Generated("jsonschema2pojo")
+public class Agent {
+
+ /**
+ * Agent Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ private String name;
+ /**
+ * Agent Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ private String type;
+ /**
+ * Agent Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ private String version;
+ /**
+ * Agent ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ private String uid;
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ private Integer typeId;
+ /**
+ *
+ */
+ @JsonProperty("policies")
+ @JsonPropertyDescription("")
+ private List<Policy> policies = new ArrayList<Policy>();
+ /**
+ * Alternate Agent ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid_alt")
+ private String uidAlt;
+ /**
+ * Vendor Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("vendor_name")
+ private String vendorName;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Agent() {
+ }
+
+ /**
+ *
+ * @param uid
+ * Agent ID.
+ * @param uidAlt
+ * Alternate Agent ID.
+ * @param name
+ * Agent Name.
+ * @param typeId
+ * Type ID.
+ * @param type
+ * Agent Type.
+ * @param vendorName
+ * Vendor Name.
+ * @param version
+ * Agent Version.
+ */
+ public Agent(String name, String type, String version, String uid, Integer typeId, List<Policy> policies, String uidAlt, String vendorName) {
+ super();
+ this.name = name;
+ this.type = type;
+ this.version = version;
+ this.uid = uid;
+ this.typeId = typeId;
+ this.policies = policies;
+ this.uidAlt = uidAlt;
+ this.vendorName = vendorName;
+ }
+
+ public static Agent.AgentBuilderBase builder() {
+ return new Agent.AgentBuilder();
+ }
+
+ /**
+ * Agent Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Agent Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
+ * Agent Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * Agent Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ /**
+ * Agent Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * Agent Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ /**
+ * Agent ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public String getUid() {
+ return uid;
+ }
+
+ /**
+ * Agent ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public void setUid(String uid) {
+ this.uid = uid;
+ }
+
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ public Integer getTypeId() {
+ return typeId;
+ }
+
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ public void setTypeId(Integer typeId) {
+ this.typeId = typeId;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("policies")
+ public List<Policy> getPolicies() {
+ return policies;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("policies")
+ public void setPolicies(List<Policy> policies) {
+ this.policies = policies;
+ }
+
+ /**
+ * Alternate Agent ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid_alt")
+ public String getUidAlt() {
+ return uidAlt;
+ }
+
+ /**
+ * Alternate Agent ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid_alt")
+ public void setUidAlt(String uidAlt) {
+ this.uidAlt = uidAlt;
+ }
+
+ /**
+ * Vendor Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("vendor_name")
+ public String getVendorName() {
+ return vendorName;
+ }
+
+ /**
+ * Vendor Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("vendor_name")
+ public void setVendorName(String vendorName) {
+ this.vendorName = vendorName;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Agent.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("name");
+ sb.append('=');
+ sb.append(((this.name == null)?"<null>":this.name));
+ sb.append(',');
+ sb.append("type");
+ sb.append('=');
+ sb.append(((this.type == null)?"<null>":this.type));
+ sb.append(',');
+ sb.append("version");
+ sb.append('=');
+ sb.append(((this.version == null)?"<null>":this.version));
+ sb.append(',');
+ sb.append("uid");
+ sb.append('=');
+ sb.append(((this.uid == null)?"<null>":this.uid));
+ sb.append(',');
+ sb.append("typeId");
+ sb.append('=');
+ sb.append(((this.typeId == null)?"<null>":this.typeId));
+ sb.append(',');
+ sb.append("policies");
+ sb.append('=');
+ sb.append(((this.policies == null)?"<null>":this.policies));
+ sb.append(',');
+ sb.append("uidAlt");
+ sb.append('=');
+ sb.append(((this.uidAlt == null)?"<null>":this.uidAlt));
+ sb.append(',');
+ sb.append("vendorName");
+ sb.append('=');
+ sb.append(((this.vendorName == null)?"<null>":this.vendorName));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.uid == null)? 0 :this.uid.hashCode()));
+ result = ((result* 31)+((this.uidAlt == null)? 0 :this.uidAlt.hashCode()));
+ result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode()));
+ result = ((result* 31)+((this.policies == null)? 0 :this.policies.hashCode()));
+ result = ((result* 31)+((this.typeId == null)? 0 :this.typeId.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode()));
+ result = ((result* 31)+((this.vendorName == null)? 0 :this.vendorName.hashCode()));
+ result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Agent) == false) {
+ return false;
+ }
+ Agent rhs = ((Agent) other);
+ return ((((((((((this.uid == rhs.uid)||((this.uid!= null)&&this.uid.equals(rhs.uid)))&&((this.uidAlt == rhs.uidAlt)||((this.uidAlt!= null)&&this.uidAlt.equals(rhs.uidAlt))))&&((this.name == rhs.name)||((this.name!= null)&&this.name.equals(rhs.name))))&&((this.policies == rhs.policies)||((this.policies!= null)&&this.policies.equals(rhs.policies))))&&((this.typeId == rhs.typeId)||((this.typeId!= null)&&this.typeId.equals(rhs.typeId))))&&((this.additionalProperties == rhs.additional [...]
+ }
+
+ public static class AgentBuilder
+ extends Agent.AgentBuilderBase<Agent>
+ {
+
+
+ public AgentBuilder() {
+ super();
+ }
+
+ public AgentBuilder(String name, String type, String version, String uid, Integer typeId, List<Policy> policies, String uidAlt, String vendorName) {
+ super(name, type, version, uid, typeId, policies, uidAlt, vendorName);
+ }
+
+ }
+
+ public static abstract class AgentBuilderBase<T extends Agent >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AgentBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Agent.AgentBuilder.class)) {
+ this.instance = ((T) new Agent());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AgentBuilderBase(String name, String type, String version, String uid, Integer typeId, List<Policy> policies, String uidAlt, String vendorName) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Agent.AgentBuilder.class)) {
+ this.instance = ((T) new Agent(name, type, version, uid, typeId, policies, uidAlt, vendorName));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Agent.AgentBuilderBase withName(String name) {
+ ((Agent) this.instance).name = name;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withType(String type) {
+ ((Agent) this.instance).type = type;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withVersion(String version) {
+ ((Agent) this.instance).version = version;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withUid(String uid) {
+ ((Agent) this.instance).uid = uid;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withTypeId(Integer typeId) {
+ ((Agent) this.instance).typeId = typeId;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withPolicies(List<Policy> policies) {
+ ((Agent) this.instance).policies = policies;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withUidAlt(String uidAlt) {
+ ((Agent) this.instance).uidAlt = uidAlt;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withVendorName(String vendorName) {
+ ((Agent) this.instance).vendorName = vendorName;
+ return this;
+ }
+
+ public Agent.AgentBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Agent) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Analytic.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Analytic.java
new file mode 100644
index 000000000000..478bf53418e0
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Analytic.java
@@ -0,0 +1,619 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Analytic
+ * <p>
+ * The Analytic object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "name",
+ "type",
+ "version",
+ "state",
+ "desc",
+ "uid",
+ "category",
+ "algorithm",
+ "type_id",
+ "related_analytics",
+ "state_id"
+})
+@Generated("jsonschema2pojo")
+public class Analytic {
+
+ /**
+ * Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ private String name;
+ /**
+ * Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ private String type;
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ private String version;
+ /**
+ * State
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("state")
+ private String state;
+ /**
+ * Description
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("desc")
+ private String desc;
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ private String uid;
+ /**
+ * Category
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("category")
+ private String category;
+ /**
+ * Algorithm
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("algorithm")
+ private String algorithm;
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ private Integer typeId;
+ /**
+ *
+ */
+ @JsonProperty("related_analytics")
+ @JsonPropertyDescription("")
+ private List<Analytic> relatedAnalytics = new ArrayList<Analytic>();
+ /**
+ * State ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("state_id")
+ private Integer stateId;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Analytic() {
+ }
+
+ /**
+ *
+ * @param uid
+ * Unique ID.
+ * @param stateId
+ * State ID.
+ * @param name
+ * Name.
+ * @param typeId
+ * Type ID.
+ * @param state
+ * State.
+ * @param type
+ * Type.
+ * @param category
+ * Category.
+ * @param version
+ * Version.
+ * @param desc
+ * Description.
+ * @param algorithm
+ * Algorithm.
+ */
+ public Analytic(String name, String type, String version, String state, String desc, String uid, String category, String algorithm, Integer typeId, List<Analytic> relatedAnalytics, Integer stateId) {
+ super();
+ this.name = name;
+ this.type = type;
+ this.version = version;
+ this.state = state;
+ this.desc = desc;
+ this.uid = uid;
+ this.category = category;
+ this.algorithm = algorithm;
+ this.typeId = typeId;
+ this.relatedAnalytics = relatedAnalytics;
+ this.stateId = stateId;
+ }
+
+ public static Analytic.AnalyticBuilderBase builder() {
+ return new Analytic.AnalyticBuilder();
+ }
+
+ /**
+ * Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("name")
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ /**
+ * Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type")
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ /**
+ * State
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("state")
+ public String getState() {
+ return state;
+ }
+
+ /**
+ * State
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("state")
+ public void setState(String state) {
+ this.state = state;
+ }
+
+ /**
+ * Description
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("desc")
+ public String getDesc() {
+ return desc;
+ }
+
+ /**
+ * Description
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("desc")
+ public void setDesc(String desc) {
+ this.desc = desc;
+ }
+
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public String getUid() {
+ return uid;
+ }
+
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public void setUid(String uid) {
+ this.uid = uid;
+ }
+
+ /**
+ * Category
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("category")
+ public String getCategory() {
+ return category;
+ }
+
+ /**
+ * Category
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("category")
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ /**
+ * Algorithm
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("algorithm")
+ public String getAlgorithm() {
+ return algorithm;
+ }
+
+ /**
+ * Algorithm
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("algorithm")
+ public void setAlgorithm(String algorithm) {
+ this.algorithm = algorithm;
+ }
+
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ public Integer getTypeId() {
+ return typeId;
+ }
+
+ /**
+ * Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("type_id")
+ public void setTypeId(Integer typeId) {
+ this.typeId = typeId;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("related_analytics")
+ public List<Analytic> getRelatedAnalytics() {
+ return relatedAnalytics;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("related_analytics")
+ public void setRelatedAnalytics(List<Analytic> relatedAnalytics) {
+ this.relatedAnalytics = relatedAnalytics;
+ }
+
+ /**
+ * State ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("state_id")
+ public Integer getStateId() {
+ return stateId;
+ }
+
+ /**
+ * State ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("state_id")
+ public void setStateId(Integer stateId) {
+ this.stateId = stateId;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Analytic.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("name");
+ sb.append('=');
+ sb.append(((this.name == null)?"<null>":this.name));
+ sb.append(',');
+ sb.append("type");
+ sb.append('=');
+ sb.append(((this.type == null)?"<null>":this.type));
+ sb.append(',');
+ sb.append("version");
+ sb.append('=');
+ sb.append(((this.version == null)?"<null>":this.version));
+ sb.append(',');
+ sb.append("state");
+ sb.append('=');
+ sb.append(((this.state == null)?"<null>":this.state));
+ sb.append(',');
+ sb.append("desc");
+ sb.append('=');
+ sb.append(((this.desc == null)?"<null>":this.desc));
+ sb.append(',');
+ sb.append("uid");
+ sb.append('=');
+ sb.append(((this.uid == null)?"<null>":this.uid));
+ sb.append(',');
+ sb.append("category");
+ sb.append('=');
+ sb.append(((this.category == null)?"<null>":this.category));
+ sb.append(',');
+ sb.append("algorithm");
+ sb.append('=');
+ sb.append(((this.algorithm == null)?"<null>":this.algorithm));
+ sb.append(',');
+ sb.append("typeId");
+ sb.append('=');
+ sb.append(((this.typeId == null)?"<null>":this.typeId));
+ sb.append(',');
+ sb.append("relatedAnalytics");
+ sb.append('=');
+ sb.append(((this.relatedAnalytics == null)?"<null>":this.relatedAnalytics));
+ sb.append(',');
+ sb.append("stateId");
+ sb.append('=');
+ sb.append(((this.stateId == null)?"<null>":this.stateId));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.stateId == null)? 0 :this.stateId.hashCode()));
+ result = ((result* 31)+((this.type == null)? 0 :this.type.hashCode()));
+ result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode()));
+ result = ((result* 31)+((this.uid == null)? 0 :this.uid.hashCode()));
+ result = ((result* 31)+((this.relatedAnalytics == null)? 0 :this.relatedAnalytics.hashCode()));
+ result = ((result* 31)+((this.name == null)? 0 :this.name.hashCode()));
+ result = ((result* 31)+((this.typeId == null)? 0 :this.typeId.hashCode()));
+ result = ((result* 31)+((this.state == null)? 0 :this.state.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.category == null)? 0 :this.category.hashCode()));
+ result = ((result* 31)+((this.desc == null)? 0 :this.desc.hashCode()));
+ result = ((result* 31)+((this.algorithm == null)? 0 :this.algorithm.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Analytic) == false) {
+ return false;
+ }
+ Analytic rhs = ((Analytic) other);
+ return (((((((((((((this.stateId == rhs.stateId)||((this.stateId!= null)&&this.stateId.equals(rhs.stateId)))&&((this.type == rhs.type)||((this.type!= null)&&this.type.equals(rhs.type))))&&((this.version == rhs.version)||((this.version!= null)&&this.version.equals(rhs.version))))&&((this.uid == rhs.uid)||((this.uid!= null)&&this.uid.equals(rhs.uid))))&&((this.relatedAnalytics == rhs.relatedAnalytics)||((this.relatedAnalytics!= null)&&this.relatedAnalytics.equals(rhs.relatedAnalyti [...]
+ }
+
+ public static class AnalyticBuilder
+ extends Analytic.AnalyticBuilderBase<Analytic>
+ {
+
+
+ public AnalyticBuilder() {
+ super();
+ }
+
+ public AnalyticBuilder(String name, String type, String version, String state, String desc, String uid, String category, String algorithm, Integer typeId, List<Analytic> relatedAnalytics, Integer stateId) {
+ super(name, type, version, state, desc, uid, category, algorithm, typeId, relatedAnalytics, stateId);
+ }
+
+ }
+
+ public static abstract class AnalyticBuilderBase<T extends Analytic >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AnalyticBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Analytic.AnalyticBuilder.class)) {
+ this.instance = ((T) new Analytic());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AnalyticBuilderBase(String name, String type, String version, String state, String desc, String uid, String category, String algorithm, Integer typeId, List<Analytic> relatedAnalytics, Integer stateId) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Analytic.AnalyticBuilder.class)) {
+ this.instance = ((T) new Analytic(name, type, version, state, desc, uid, category, algorithm, typeId, relatedAnalytics, stateId));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Analytic.AnalyticBuilderBase withName(String name) {
+ ((Analytic) this.instance).name = name;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withType(String type) {
+ ((Analytic) this.instance).type = type;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withVersion(String version) {
+ ((Analytic) this.instance).version = version;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withState(String state) {
+ ((Analytic) this.instance).state = state;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withDesc(String desc) {
+ ((Analytic) this.instance).desc = desc;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withUid(String uid) {
+ ((Analytic) this.instance).uid = uid;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withCategory(String category) {
+ ((Analytic) this.instance).category = category;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withAlgorithm(String algorithm) {
+ ((Analytic) this.instance).algorithm = algorithm;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withTypeId(Integer typeId) {
+ ((Analytic) this.instance).typeId = typeId;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withRelatedAnalytics(List<Analytic> relatedAnalytics) {
+ ((Analytic) this.instance).relatedAnalytics = relatedAnalytics;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withStateId(Integer stateId) {
+ ((Analytic) this.instance).stateId = stateId;
+ return this;
+ }
+
+ public Analytic.AnalyticBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Analytic) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Ancestry.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Ancestry.java
new file mode 100644
index 000000000000..d429abe21d73
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Ancestry.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class Ancestry {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static Ancestry.AncestryBuilderBase builder() {
+ return new Ancestry.AncestryBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Ancestry.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Ancestry) == false) {
+ return false;
+ }
+ Ancestry rhs = ((Ancestry) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AncestryBuilder
+ extends Ancestry.AncestryBuilderBase<Ancestry>
+ {
+
+
+ public AncestryBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AncestryBuilderBase<T extends Ancestry >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AncestryBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Ancestry.AncestryBuilder.class)) {
+ this.instance = ((T) new Ancestry());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Ancestry.AncestryBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Ancestry) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AnomalyAnalyasis.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AnomalyAnalyasis.java
new file mode 100644
index 000000000000..66b832aa49f4
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AnomalyAnalyasis.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AnomalyAnalyasis {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AnomalyAnalyasis.AnomalyAnalyasisBuilderBase builder() {
+ return new AnomalyAnalyasis.AnomalyAnalyasisBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AnomalyAnalyasis.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AnomalyAnalyasis) == false) {
+ return false;
+ }
+ AnomalyAnalyasis rhs = ((AnomalyAnalyasis) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AnomalyAnalyasisBuilder
+ extends AnomalyAnalyasis.AnomalyAnalyasisBuilderBase<AnomalyAnalyasis>
+ {
+
+
+ public AnomalyAnalyasisBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AnomalyAnalyasisBuilderBase<T extends AnomalyAnalyasis >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AnomalyAnalyasisBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AnomalyAnalyasis.AnomalyAnalyasisBuilder.class)) {
+ this.instance = ((T) new AnomalyAnalyasis());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AnomalyAnalyasis.AnomalyAnalyasisBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AnomalyAnalyasis) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Answer.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Answer.java
new file mode 100644
index 000000000000..78a2d2d09354
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Answer.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class Answer {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static Answer.AnswerBuilderBase builder() {
+ return new Answer.AnswerBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Answer.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Answer) == false) {
+ return false;
+ }
+ Answer rhs = ((Answer) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AnswerBuilder
+ extends Answer.AnswerBuilderBase<Answer>
+ {
+
+
+ public AnswerBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AnswerBuilderBase<T extends Answer >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AnswerBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Answer.AnswerBuilder.class)) {
+ this.instance = ((T) new Answer());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Answer.AnswerBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Answer) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Api.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Api.java
new file mode 100644
index 000000000000..5bd9eb7703ec
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Api.java
@@ -0,0 +1,403 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Api
+ * <p>
+ * The API object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "version",
+ "request",
+ "service",
+ "group",
+ "response",
+ "operation"
+})
+@Generated("jsonschema2pojo")
+public class Api {
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ private String version;
+ /**
+ * Request
+ * <p>
+ * The Request Elements object.
+ *
+ */
+ @JsonProperty("request")
+ @JsonPropertyDescription("The Request Elements object.")
+ private Request request;
+ /**
+ * Service
+ * <p>
+ * The Service object.
+ *
+ */
+ @JsonProperty("service")
+ @JsonPropertyDescription("The Service object.")
+ private Service service;
+ /**
+ * Group
+ * <p>
+ * The Group object.
+ *
+ */
+ @JsonProperty("group")
+ @JsonPropertyDescription("The Group object.")
+ private Group group;
+ /**
+ * Response
+ * <p>
+ * The Response Elements object.
+ *
+ */
+ @JsonProperty("response")
+ @JsonPropertyDescription("The Response Elements object.")
+ private Response response;
+ /**
+ * Operation
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("operation")
+ private String operation;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Api() {
+ }
+
+ /**
+ *
+ * @param version
+ * Version.
+ * @param operation
+ * Operation.
+ */
+ public Api(String version, Request request, Service service, Group group, Response response, String operation) {
+ super();
+ this.version = version;
+ this.request = request;
+ this.service = service;
+ this.group = group;
+ this.response = response;
+ this.operation = operation;
+ }
+
+ public static Api.ApiBuilderBase builder() {
+ return new Api.ApiBuilder();
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ /**
+ * Request
+ * <p>
+ * The Request Elements object.
+ *
+ */
+ @JsonProperty("request")
+ public Request getRequest() {
+ return request;
+ }
+
+ /**
+ * Request
+ * <p>
+ * The Request Elements object.
+ *
+ */
+ @JsonProperty("request")
+ public void setRequest(Request request) {
+ this.request = request;
+ }
+
+ /**
+ * Service
+ * <p>
+ * The Service object.
+ *
+ */
+ @JsonProperty("service")
+ public Service getService() {
+ return service;
+ }
+
+ /**
+ * Service
+ * <p>
+ * The Service object.
+ *
+ */
+ @JsonProperty("service")
+ public void setService(Service service) {
+ this.service = service;
+ }
+
+ /**
+ * Group
+ * <p>
+ * The Group object.
+ *
+ */
+ @JsonProperty("group")
+ public Group getGroup() {
+ return group;
+ }
+
+ /**
+ * Group
+ * <p>
+ * The Group object.
+ *
+ */
+ @JsonProperty("group")
+ public void setGroup(Group group) {
+ this.group = group;
+ }
+
+ /**
+ * Response
+ * <p>
+ * The Response Elements object.
+ *
+ */
+ @JsonProperty("response")
+ public Response getResponse() {
+ return response;
+ }
+
+ /**
+ * Response
+ * <p>
+ * The Response Elements object.
+ *
+ */
+ @JsonProperty("response")
+ public void setResponse(Response response) {
+ this.response = response;
+ }
+
+ /**
+ * Operation
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("operation")
+ public String getOperation() {
+ return operation;
+ }
+
+ /**
+ * Operation
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("operation")
+ public void setOperation(String operation) {
+ this.operation = operation;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Api.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("version");
+ sb.append('=');
+ sb.append(((this.version == null)?"<null>":this.version));
+ sb.append(',');
+ sb.append("request");
+ sb.append('=');
+ sb.append(((this.request == null)?"<null>":this.request));
+ sb.append(',');
+ sb.append("service");
+ sb.append('=');
+ sb.append(((this.service == null)?"<null>":this.service));
+ sb.append(',');
+ sb.append("group");
+ sb.append('=');
+ sb.append(((this.group == null)?"<null>":this.group));
+ sb.append(',');
+ sb.append("response");
+ sb.append('=');
+ sb.append(((this.response == null)?"<null>":this.response));
+ sb.append(',');
+ sb.append("operation");
+ sb.append('=');
+ sb.append(((this.operation == null)?"<null>":this.operation));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.request == null)? 0 :this.request.hashCode()));
+ result = ((result* 31)+((this.service == null)? 0 :this.service.hashCode()));
+ result = ((result* 31)+((this.response == null)? 0 :this.response.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode()));
+ result = ((result* 31)+((this.operation == null)? 0 :this.operation.hashCode()));
+ result = ((result* 31)+((this.group == null)? 0 :this.group.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Api) == false) {
+ return false;
+ }
+ Api rhs = ((Api) other);
+ return ((((((((this.request == rhs.request)||((this.request!= null)&&this.request.equals(rhs.request)))&&((this.service == rhs.service)||((this.service!= null)&&this.service.equals(rhs.service))))&&((this.response == rhs.response)||((this.response!= null)&&this.response.equals(rhs.response))))&&((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties))))&&((this.version == rhs.version) [...]
+ }
+
+ public static class ApiBuilder
+ extends Api.ApiBuilderBase<Api>
+ {
+
+
+ public ApiBuilder() {
+ super();
+ }
+
+ public ApiBuilder(String version, Request request, Service service, Group group, Response response, String operation) {
+ super(version, request, service, group, response, operation);
+ }
+
+ }
+
+ public static abstract class ApiBuilderBase<T extends Api >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public ApiBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Api.ApiBuilder.class)) {
+ this.instance = ((T) new Api());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public ApiBuilderBase(String version, Request request, Service service, Group group, Response response, String operation) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Api.ApiBuilder.class)) {
+ this.instance = ((T) new Api(version, request, service, group, response, operation));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Api.ApiBuilderBase withVersion(String version) {
+ ((Api) this.instance).version = version;
+ return this;
+ }
+
+ public Api.ApiBuilderBase withRequest(Request request) {
+ ((Api) this.instance).request = request;
+ return this;
+ }
+
+ public Api.ApiBuilderBase withService(Service service) {
+ ((Api) this.instance).service = service;
+ return this;
+ }
+
+ public Api.ApiBuilderBase withGroup(Group group) {
+ ((Api) this.instance).group = group;
+ return this;
+ }
+
+ public Api.ApiBuilderBase withResponse(Response response) {
+ ((Api) this.instance).response = response;
+ return this;
+ }
+
+ public Api.ApiBuilderBase withOperation(String operation) {
+ ((Api) this.instance).operation = operation;
+ return this;
+ }
+
+ public Api.ApiBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Api) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/ApiActivity.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/ApiActivity.java
new file mode 100644
index 000000000000..8997207fedd2
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/ApiActivity.java
@@ -0,0 +1,558 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * ApiActivity
+ * <p>
+ * ApiActivity event class.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "actor",
+ "resources",
+ "raw_data_size",
+ "http_response",
+ "enrichments",
+ "http_request",
+ "api",
+ "src_endpoint",
+ "dst_endpoint",
+ "raw_data_hash"
+})
+@Generated("jsonschema2pojo")
+public class ApiActivity {
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ @JsonPropertyDescription("The Actor object.")
+ private Actor actor;
+ /**
+ *
+ */
+ @JsonProperty("resources")
+ @JsonPropertyDescription("")
+ private List<ResourceDetails> resources = new ArrayList<ResourceDetails>();
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ private Integer rawDataSize;
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ @JsonPropertyDescription("The HTTP Response object.")
+ private HttpResponse httpResponse;
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ @JsonPropertyDescription("")
+ private List<Enrichment> enrichments = new ArrayList<Enrichment>();
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ @JsonPropertyDescription("The HTTP Request object.")
+ private HttpRequest httpRequest;
+ /**
+ * Api
+ * <p>
+ * The API object.
+ *
+ */
+ @JsonProperty("api")
+ @JsonPropertyDescription("The API object.")
+ private Api api;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint srcEndpoint;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint dstEndpoint;
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ @JsonPropertyDescription("The Fingerprint object.")
+ private Fingerprint rawDataHash;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public ApiActivity() {
+ }
+
+ /**
+ *
+ * @param rawDataSize
+ * Raw Data Size.
+ */
+ public ApiActivity(Actor actor, List<ResourceDetails> resources, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, HttpRequest httpRequest, Api api, NetworkEndpoint srcEndpoint, NetworkEndpoint dstEndpoint, Fingerprint rawDataHash) {
+ super();
+ this.actor = actor;
+ this.resources = resources;
+ this.rawDataSize = rawDataSize;
+ this.httpResponse = httpResponse;
+ this.enrichments = enrichments;
+ this.httpRequest = httpRequest;
+ this.api = api;
+ this.srcEndpoint = srcEndpoint;
+ this.dstEndpoint = dstEndpoint;
+ this.rawDataHash = rawDataHash;
+ }
+
+ public static ApiActivity.ApiActivityBuilderBase builder() {
+ return new ApiActivity.ApiActivityBuilder();
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public Actor getActor() {
+ return actor;
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public void setActor(Actor actor) {
+ this.actor = actor;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("resources")
+ public List<ResourceDetails> getResources() {
+ return resources;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("resources")
+ public void setResources(List<ResourceDetails> resources) {
+ this.resources = resources;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public Integer getRawDataSize() {
+ return rawDataSize;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public void setRawDataSize(Integer rawDataSize) {
+ this.rawDataSize = rawDataSize;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public HttpResponse getHttpResponse() {
+ return httpResponse;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public void setHttpResponse(HttpResponse httpResponse) {
+ this.httpResponse = httpResponse;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public List<Enrichment> getEnrichments() {
+ return enrichments;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public void setEnrichments(List<Enrichment> enrichments) {
+ this.enrichments = enrichments;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public HttpRequest getHttpRequest() {
+ return httpRequest;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public void setHttpRequest(HttpRequest httpRequest) {
+ this.httpRequest = httpRequest;
+ }
+
+ /**
+ * Api
+ * <p>
+ * The API object.
+ *
+ */
+ @JsonProperty("api")
+ public Api getApi() {
+ return api;
+ }
+
+ /**
+ * Api
+ * <p>
+ * The API object.
+ *
+ */
+ @JsonProperty("api")
+ public void setApi(Api api) {
+ this.api = api;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public NetworkEndpoint getSrcEndpoint() {
+ return srcEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public void setSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ this.srcEndpoint = srcEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ public NetworkEndpoint getDstEndpoint() {
+ return dstEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ public void setDstEndpoint(NetworkEndpoint dstEndpoint) {
+ this.dstEndpoint = dstEndpoint;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public Fingerprint getRawDataHash() {
+ return rawDataHash;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public void setRawDataHash(Fingerprint rawDataHash) {
+ this.rawDataHash = rawDataHash;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(ApiActivity.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("actor");
+ sb.append('=');
+ sb.append(((this.actor == null)?"<null>":this.actor));
+ sb.append(',');
+ sb.append("resources");
+ sb.append('=');
+ sb.append(((this.resources == null)?"<null>":this.resources));
+ sb.append(',');
+ sb.append("rawDataSize");
+ sb.append('=');
+ sb.append(((this.rawDataSize == null)?"<null>":this.rawDataSize));
+ sb.append(',');
+ sb.append("httpResponse");
+ sb.append('=');
+ sb.append(((this.httpResponse == null)?"<null>":this.httpResponse));
+ sb.append(',');
+ sb.append("enrichments");
+ sb.append('=');
+ sb.append(((this.enrichments == null)?"<null>":this.enrichments));
+ sb.append(',');
+ sb.append("httpRequest");
+ sb.append('=');
+ sb.append(((this.httpRequest == null)?"<null>":this.httpRequest));
+ sb.append(',');
+ sb.append("api");
+ sb.append('=');
+ sb.append(((this.api == null)?"<null>":this.api));
+ sb.append(',');
+ sb.append("srcEndpoint");
+ sb.append('=');
+ sb.append(((this.srcEndpoint == null)?"<null>":this.srcEndpoint));
+ sb.append(',');
+ sb.append("dstEndpoint");
+ sb.append('=');
+ sb.append(((this.dstEndpoint == null)?"<null>":this.dstEndpoint));
+ sb.append(',');
+ sb.append("rawDataHash");
+ sb.append('=');
+ sb.append(((this.rawDataHash == null)?"<null>":this.rawDataHash));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.actor == null)? 0 :this.actor.hashCode()));
+ result = ((result* 31)+((this.srcEndpoint == null)? 0 :this.srcEndpoint.hashCode()));
+ result = ((result* 31)+((this.rawDataHash == null)? 0 :this.rawDataHash.hashCode()));
+ result = ((result* 31)+((this.rawDataSize == null)? 0 :this.rawDataSize.hashCode()));
+ result = ((result* 31)+((this.resources == null)? 0 :this.resources.hashCode()));
+ result = ((result* 31)+((this.httpRequest == null)? 0 :this.httpRequest.hashCode()));
+ result = ((result* 31)+((this.api == null)? 0 :this.api.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.httpResponse == null)? 0 :this.httpResponse.hashCode()));
+ result = ((result* 31)+((this.dstEndpoint == null)? 0 :this.dstEndpoint.hashCode()));
+ result = ((result* 31)+((this.enrichments == null)? 0 :this.enrichments.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof ApiActivity) == false) {
+ return false;
+ }
+ ApiActivity rhs = ((ApiActivity) other);
+ return ((((((((((((this.actor == rhs.actor)||((this.actor!= null)&&this.actor.equals(rhs.actor)))&&((this.srcEndpoint == rhs.srcEndpoint)||((this.srcEndpoint!= null)&&this.srcEndpoint.equals(rhs.srcEndpoint))))&&((this.rawDataHash == rhs.rawDataHash)||((this.rawDataHash!= null)&&this.rawDataHash.equals(rhs.rawDataHash))))&&((this.rawDataSize == rhs.rawDataSize)||((this.rawDataSize!= null)&&this.rawDataSize.equals(rhs.rawDataSize))))&&((this.resources == rhs.resources)||((this.res [...]
+ }
+
+ public static class ApiActivityBuilder
+ extends ApiActivity.ApiActivityBuilderBase<ApiActivity>
+ {
+
+
+ public ApiActivityBuilder() {
+ super();
+ }
+
+ public ApiActivityBuilder(Actor actor, List<ResourceDetails> resources, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, HttpRequest httpRequest, Api api, NetworkEndpoint srcEndpoint, NetworkEndpoint dstEndpoint, Fingerprint rawDataHash) {
+ super(actor, resources, rawDataSize, httpResponse, enrichments, httpRequest, api, srcEndpoint, dstEndpoint, rawDataHash);
+ }
+
+ }
+
+ public static abstract class ApiActivityBuilderBase<T extends ApiActivity >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public ApiActivityBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(ApiActivity.ApiActivityBuilder.class)) {
+ this.instance = ((T) new ApiActivity());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public ApiActivityBuilderBase(Actor actor, List<ResourceDetails> resources, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, HttpRequest httpRequest, Api api, NetworkEndpoint srcEndpoint, NetworkEndpoint dstEndpoint, Fingerprint rawDataHash) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(ApiActivity.ApiActivityBuilder.class)) {
+ this.instance = ((T) new ApiActivity(actor, resources, rawDataSize, httpResponse, enrichments, httpRequest, api, srcEndpoint, dstEndpoint, rawDataHash));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withActor(Actor actor) {
+ ((ApiActivity) this.instance).actor = actor;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withResources(List<ResourceDetails> resources) {
+ ((ApiActivity) this.instance).resources = resources;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withRawDataSize(Integer rawDataSize) {
+ ((ApiActivity) this.instance).rawDataSize = rawDataSize;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withHttpResponse(HttpResponse httpResponse) {
+ ((ApiActivity) this.instance).httpResponse = httpResponse;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withEnrichments(List<Enrichment> enrichments) {
+ ((ApiActivity) this.instance).enrichments = enrichments;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withHttpRequest(HttpRequest httpRequest) {
+ ((ApiActivity) this.instance).httpRequest = httpRequest;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withApi(Api api) {
+ ((ApiActivity) this.instance).api = api;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ ((ApiActivity) this.instance).srcEndpoint = srcEndpoint;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withDstEndpoint(NetworkEndpoint dstEndpoint) {
+ ((ApiActivity) this.instance).dstEndpoint = dstEndpoint;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withRawDataHash(Fingerprint rawDataHash) {
+ ((ApiActivity) this.instance).rawDataHash = rawDataHash;
+ return this;
+ }
+
+ public ApiActivity.ApiActivityBuilderBase withAdditionalProperty(String name, Object value) {
+ ((ApiActivity) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Assessment.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Assessment.java
new file mode 100644
index 000000000000..70df71c3c1a8
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Assessment.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class Assessment {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static Assessment.AssessmentBuilderBase builder() {
+ return new Assessment.AssessmentBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Assessment.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Assessment) == false) {
+ return false;
+ }
+ Assessment rhs = ((Assessment) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AssessmentBuilder
+ extends Assessment.AssessmentBuilderBase<Assessment>
+ {
+
+
+ public AssessmentBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AssessmentBuilderBase<T extends Assessment >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AssessmentBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Assessment.AssessmentBuilder.class)) {
+ this.instance = ((T) new Assessment());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Assessment.AssessmentBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Assessment) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Attack.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Attack.java
new file mode 100644
index 000000000000..d5f055da28ab
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Attack.java
@@ -0,0 +1,376 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Attack
+ * <p>
+ * The MITRE ATT&CK® & ATLAS™ object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "version",
+ "tactics",
+ "technique",
+ "mitigation",
+ "sub_technique",
+ "tactic"
+})
+@Generated("jsonschema2pojo")
+public class Attack {
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ private String version;
+ /**
+ *
+ */
+ @JsonProperty("tactics")
+ @JsonPropertyDescription("")
+ private List<Tactic> tactics = new ArrayList<Tactic>();
+ /**
+ * Technique
+ * <p>
+ * The MITRE Technique object.
+ *
+ */
+ @JsonProperty("technique")
+ @JsonPropertyDescription("The MITRE Technique object.")
+ private Technique technique;
+ @JsonProperty("mitigation")
+ private Mitigation mitigation;
+ /**
+ * SubTechnique
+ * <p>
+ * The MITRE Sub-technique object.
+ *
+ */
+ @JsonProperty("sub_technique")
+ @JsonPropertyDescription("The MITRE Sub-technique object.")
+ private SubTechnique subTechnique;
+ /**
+ * Tactic
+ * <p>
+ * The MITRE Tactic object.
+ *
+ */
+ @JsonProperty("tactic")
+ @JsonPropertyDescription("The MITRE Tactic object.")
+ private Tactic tactic;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Attack() {
+ }
+
+ /**
+ *
+ * @param version
+ * Version.
+ */
+ public Attack(String version, List<Tactic> tactics, Technique technique, Mitigation mitigation, SubTechnique subTechnique, Tactic tactic) {
+ super();
+ this.version = version;
+ this.tactics = tactics;
+ this.technique = technique;
+ this.mitigation = mitigation;
+ this.subTechnique = subTechnique;
+ this.tactic = tactic;
+ }
+
+ public static Attack.AttackBuilderBase builder() {
+ return new Attack.AttackBuilder();
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("tactics")
+ public List<Tactic> getTactics() {
+ return tactics;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("tactics")
+ public void setTactics(List<Tactic> tactics) {
+ this.tactics = tactics;
+ }
+
+ /**
+ * Technique
+ * <p>
+ * The MITRE Technique object.
+ *
+ */
+ @JsonProperty("technique")
+ public Technique getTechnique() {
+ return technique;
+ }
+
+ /**
+ * Technique
+ * <p>
+ * The MITRE Technique object.
+ *
+ */
+ @JsonProperty("technique")
+ public void setTechnique(Technique technique) {
+ this.technique = technique;
+ }
+
+ @JsonProperty("mitigation")
+ public Mitigation getMitigation() {
+ return mitigation;
+ }
+
+ @JsonProperty("mitigation")
+ public void setMitigation(Mitigation mitigation) {
+ this.mitigation = mitigation;
+ }
+
+ /**
+ * SubTechnique
+ * <p>
+ * The MITRE Sub-technique object.
+ *
+ */
+ @JsonProperty("sub_technique")
+ public SubTechnique getSubTechnique() {
+ return subTechnique;
+ }
+
+ /**
+ * SubTechnique
+ * <p>
+ * The MITRE Sub-technique object.
+ *
+ */
+ @JsonProperty("sub_technique")
+ public void setSubTechnique(SubTechnique subTechnique) {
+ this.subTechnique = subTechnique;
+ }
+
+ /**
+ * Tactic
+ * <p>
+ * The MITRE Tactic object.
+ *
+ */
+ @JsonProperty("tactic")
+ public Tactic getTactic() {
+ return tactic;
+ }
+
+ /**
+ * Tactic
+ * <p>
+ * The MITRE Tactic object.
+ *
+ */
+ @JsonProperty("tactic")
+ public void setTactic(Tactic tactic) {
+ this.tactic = tactic;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Attack.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("version");
+ sb.append('=');
+ sb.append(((this.version == null)?"<null>":this.version));
+ sb.append(',');
+ sb.append("tactics");
+ sb.append('=');
+ sb.append(((this.tactics == null)?"<null>":this.tactics));
+ sb.append(',');
+ sb.append("technique");
+ sb.append('=');
+ sb.append(((this.technique == null)?"<null>":this.technique));
+ sb.append(',');
+ sb.append("mitigation");
+ sb.append('=');
+ sb.append(((this.mitigation == null)?"<null>":this.mitigation));
+ sb.append(',');
+ sb.append("subTechnique");
+ sb.append('=');
+ sb.append(((this.subTechnique == null)?"<null>":this.subTechnique));
+ sb.append(',');
+ sb.append("tactic");
+ sb.append('=');
+ sb.append(((this.tactic == null)?"<null>":this.tactic));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.mitigation == null)? 0 :this.mitigation.hashCode()));
+ result = ((result* 31)+((this.tactics == null)? 0 :this.tactics.hashCode()));
+ result = ((result* 31)+((this.technique == null)? 0 :this.technique.hashCode()));
+ result = ((result* 31)+((this.subTechnique == null)? 0 :this.subTechnique.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode()));
+ result = ((result* 31)+((this.tactic == null)? 0 :this.tactic.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Attack) == false) {
+ return false;
+ }
+ Attack rhs = ((Attack) other);
+ return ((((((((this.mitigation == rhs.mitigation)||((this.mitigation!= null)&&this.mitigation.equals(rhs.mitigation)))&&((this.tactics == rhs.tactics)||((this.tactics!= null)&&this.tactics.equals(rhs.tactics))))&&((this.technique == rhs.technique)||((this.technique!= null)&&this.technique.equals(rhs.technique))))&&((this.subTechnique == rhs.subTechnique)||((this.subTechnique!= null)&&this.subTechnique.equals(rhs.subTechnique))))&&((this.additionalProperties == rhs.additionalPrope [...]
+ }
+
+ public static class AttackBuilder
+ extends Attack.AttackBuilderBase<Attack>
+ {
+
+
+ public AttackBuilder() {
+ super();
+ }
+
+ public AttackBuilder(String version, List<Tactic> tactics, Technique technique, Mitigation mitigation, SubTechnique subTechnique, Tactic tactic) {
+ super(version, tactics, technique, mitigation, subTechnique, tactic);
+ }
+
+ }
+
+ public static abstract class AttackBuilderBase<T extends Attack >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AttackBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Attack.AttackBuilder.class)) {
+ this.instance = ((T) new Attack());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AttackBuilderBase(String version, List<Tactic> tactics, Technique technique, Mitigation mitigation, SubTechnique subTechnique, Tactic tactic) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Attack.AttackBuilder.class)) {
+ this.instance = ((T) new Attack(version, tactics, technique, mitigation, subTechnique, tactic));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Attack.AttackBuilderBase withVersion(String version) {
+ ((Attack) this.instance).version = version;
+ return this;
+ }
+
+ public Attack.AttackBuilderBase withTactics(List<Tactic> tactics) {
+ ((Attack) this.instance).tactics = tactics;
+ return this;
+ }
+
+ public Attack.AttackBuilderBase withTechnique(Technique technique) {
+ ((Attack) this.instance).technique = technique;
+ return this;
+ }
+
+ public Attack.AttackBuilderBase withMitigation(Mitigation mitigation) {
+ ((Attack) this.instance).mitigation = mitigation;
+ return this;
+ }
+
+ public Attack.AttackBuilderBase withSubTechnique(SubTechnique subTechnique) {
+ ((Attack) this.instance).subTechnique = subTechnique;
+ return this;
+ }
+
+ public Attack.AttackBuilderBase withTactic(Tactic tactic) {
+ ((Attack) this.instance).tactic = tactic;
+ return this;
+ }
+
+ public Attack.AttackBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Attack) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AttackGraph.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AttackGraph.java
new file mode 100644
index 000000000000..9413bed12fed
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AttackGraph.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AttackGraph {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AttackGraph.AttackGraphBuilderBase builder() {
+ return new AttackGraph.AttackGraphBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AttackGraph.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AttackGraph) == false) {
+ return false;
+ }
+ AttackGraph rhs = ((AttackGraph) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AttackGraphBuilder
+ extends AttackGraph.AttackGraphBuilderBase<AttackGraph>
+ {
+
+
+ public AttackGraphBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AttackGraphBuilderBase<T extends AttackGraph >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AttackGraphBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AttackGraph.AttackGraphBuilder.class)) {
+ this.instance = ((T) new AttackGraph());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AttackGraph.AttackGraphBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AttackGraph) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthFactor.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthFactor.java
new file mode 100644
index 000000000000..49af452a74e5
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthFactor.java
@@ -0,0 +1,540 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * AuthFactor
+ * <p>
+ * The Authentication Factor object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "device",
+ "email_addr",
+ "factor_type",
+ "factor_type_id",
+ "is_hotp",
+ "is_totp",
+ "phone_number",
+ "provider",
+ "security_questions"
+})
+@Generated("jsonschema2pojo")
+public class AuthFactor {
+
+ /**
+ * Device
+ * <p>
+ * The Device object.
+ *
+ */
+ @JsonProperty("device")
+ @JsonPropertyDescription("The Device object.")
+ private Device device;
+ /**
+ * Email Address
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("email_addr")
+ private String emailAddr;
+ /**
+ * Factor Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("factor_type")
+ private String factorType;
+ /**
+ * Factor Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("factor_type_id")
+ private Integer factorTypeId;
+ /**
+ * HMAC-based One-time Password (HOTP)
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_hotp")
+ private Boolean isHotp;
+ /**
+ * Time-based One-time Password (TOTP)
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_totp")
+ private Boolean isTotp;
+ /**
+ * Phone Number
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("phone_number")
+ private String phoneNumber;
+ /**
+ * Provider
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("provider")
+ private String provider;
+ /**
+ * Security Questions
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("security_questions")
+ private List<String> securityQuestions = new ArrayList<String>();
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public AuthFactor() {
+ }
+
+ /**
+ *
+ * @param factorTypeId
+ * Factor Type ID.
+ * @param phoneNumber
+ * Phone Number.
+ * @param provider
+ * Provider.
+ * @param emailAddr
+ * Email Address.
+ * @param isTotp
+ * Time-based One-time Password (TOTP).
+ * @param factorType
+ * Factor Type.
+ * @param securityQuestions
+ * Security Questions.
+ * @param isHotp
+ * HMAC-based One-time Password (HOTP).
+ */
+ public AuthFactor(Device device, String emailAddr, String factorType, Integer factorTypeId, Boolean isHotp, Boolean isTotp, String phoneNumber, String provider, List<String> securityQuestions) {
+ super();
+ this.device = device;
+ this.emailAddr = emailAddr;
+ this.factorType = factorType;
+ this.factorTypeId = factorTypeId;
+ this.isHotp = isHotp;
+ this.isTotp = isTotp;
+ this.phoneNumber = phoneNumber;
+ this.provider = provider;
+ this.securityQuestions = securityQuestions;
+ }
+
+ public static AuthFactor.AuthFactorBuilderBase builder() {
+ return new AuthFactor.AuthFactorBuilder();
+ }
+
+ /**
+ * Device
+ * <p>
+ * The Device object.
+ *
+ */
+ @JsonProperty("device")
+ public Device getDevice() {
+ return device;
+ }
+
+ /**
+ * Device
+ * <p>
+ * The Device object.
+ *
+ */
+ @JsonProperty("device")
+ public void setDevice(Device device) {
+ this.device = device;
+ }
+
+ /**
+ * Email Address
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("email_addr")
+ public String getEmailAddr() {
+ return emailAddr;
+ }
+
+ /**
+ * Email Address
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("email_addr")
+ public void setEmailAddr(String emailAddr) {
+ this.emailAddr = emailAddr;
+ }
+
+ /**
+ * Factor Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("factor_type")
+ public String getFactorType() {
+ return factorType;
+ }
+
+ /**
+ * Factor Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("factor_type")
+ public void setFactorType(String factorType) {
+ this.factorType = factorType;
+ }
+
+ /**
+ * Factor Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("factor_type_id")
+ public Integer getFactorTypeId() {
+ return factorTypeId;
+ }
+
+ /**
+ * Factor Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("factor_type_id")
+ public void setFactorTypeId(Integer factorTypeId) {
+ this.factorTypeId = factorTypeId;
+ }
+
+ /**
+ * HMAC-based One-time Password (HOTP)
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_hotp")
+ public Boolean getIsHotp() {
+ return isHotp;
+ }
+
+ /**
+ * HMAC-based One-time Password (HOTP)
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_hotp")
+ public void setIsHotp(Boolean isHotp) {
+ this.isHotp = isHotp;
+ }
+
+ /**
+ * Time-based One-time Password (TOTP)
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_totp")
+ public Boolean getIsTotp() {
+ return isTotp;
+ }
+
+ /**
+ * Time-based One-time Password (TOTP)
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_totp")
+ public void setIsTotp(Boolean isTotp) {
+ this.isTotp = isTotp;
+ }
+
+ /**
+ * Phone Number
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("phone_number")
+ public String getPhoneNumber() {
+ return phoneNumber;
+ }
+
+ /**
+ * Phone Number
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("phone_number")
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
+ }
+
+ /**
+ * Provider
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("provider")
+ public String getProvider() {
+ return provider;
+ }
+
+ /**
+ * Provider
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("provider")
+ public void setProvider(String provider) {
+ this.provider = provider;
+ }
+
+ /**
+ * Security Questions
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("security_questions")
+ public List<String> getSecurityQuestions() {
+ return securityQuestions;
+ }
+
+ /**
+ * Security Questions
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("security_questions")
+ public void setSecurityQuestions(List<String> securityQuestions) {
+ this.securityQuestions = securityQuestions;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AuthFactor.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("device");
+ sb.append('=');
+ sb.append(((this.device == null)?"<null>":this.device));
+ sb.append(',');
+ sb.append("emailAddr");
+ sb.append('=');
+ sb.append(((this.emailAddr == null)?"<null>":this.emailAddr));
+ sb.append(',');
+ sb.append("factorType");
+ sb.append('=');
+ sb.append(((this.factorType == null)?"<null>":this.factorType));
+ sb.append(',');
+ sb.append("factorTypeId");
+ sb.append('=');
+ sb.append(((this.factorTypeId == null)?"<null>":this.factorTypeId));
+ sb.append(',');
+ sb.append("isHotp");
+ sb.append('=');
+ sb.append(((this.isHotp == null)?"<null>":this.isHotp));
+ sb.append(',');
+ sb.append("isTotp");
+ sb.append('=');
+ sb.append(((this.isTotp == null)?"<null>":this.isTotp));
+ sb.append(',');
+ sb.append("phoneNumber");
+ sb.append('=');
+ sb.append(((this.phoneNumber == null)?"<null>":this.phoneNumber));
+ sb.append(',');
+ sb.append("provider");
+ sb.append('=');
+ sb.append(((this.provider == null)?"<null>":this.provider));
+ sb.append(',');
+ sb.append("securityQuestions");
+ sb.append('=');
+ sb.append(((this.securityQuestions == null)?"<null>":this.securityQuestions));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.factorTypeId == null)? 0 :this.factorTypeId.hashCode()));
+ result = ((result* 31)+((this.phoneNumber == null)? 0 :this.phoneNumber.hashCode()));
+ result = ((result* 31)+((this.provider == null)? 0 :this.provider.hashCode()));
+ result = ((result* 31)+((this.emailAddr == null)? 0 :this.emailAddr.hashCode()));
+ result = ((result* 31)+((this.isTotp == null)? 0 :this.isTotp.hashCode()));
+ result = ((result* 31)+((this.factorType == null)? 0 :this.factorType.hashCode()));
+ result = ((result* 31)+((this.securityQuestions == null)? 0 :this.securityQuestions.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.device == null)? 0 :this.device.hashCode()));
+ result = ((result* 31)+((this.isHotp == null)? 0 :this.isHotp.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AuthFactor) == false) {
+ return false;
+ }
+ AuthFactor rhs = ((AuthFactor) other);
+ return (((((((((((this.factorTypeId == rhs.factorTypeId)||((this.factorTypeId!= null)&&this.factorTypeId.equals(rhs.factorTypeId)))&&((this.phoneNumber == rhs.phoneNumber)||((this.phoneNumber!= null)&&this.phoneNumber.equals(rhs.phoneNumber))))&&((this.provider == rhs.provider)||((this.provider!= null)&&this.provider.equals(rhs.provider))))&&((this.emailAddr == rhs.emailAddr)||((this.emailAddr!= null)&&this.emailAddr.equals(rhs.emailAddr))))&&((this.isTotp == rhs.isTotp)||((this. [...]
+ }
+
+ public static class AuthFactorBuilder
+ extends AuthFactor.AuthFactorBuilderBase<AuthFactor>
+ {
+
+
+ public AuthFactorBuilder() {
+ super();
+ }
+
+ public AuthFactorBuilder(Device device, String emailAddr, String factorType, Integer factorTypeId, Boolean isHotp, Boolean isTotp, String phoneNumber, String provider, List<String> securityQuestions) {
+ super(device, emailAddr, factorType, factorTypeId, isHotp, isTotp, phoneNumber, provider, securityQuestions);
+ }
+
+ }
+
+ public static abstract class AuthFactorBuilderBase<T extends AuthFactor >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AuthFactorBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AuthFactor.AuthFactorBuilder.class)) {
+ this.instance = ((T) new AuthFactor());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AuthFactorBuilderBase(Device device, String emailAddr, String factorType, Integer factorTypeId, Boolean isHotp, Boolean isTotp, String phoneNumber, String provider, List<String> securityQuestions) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AuthFactor.AuthFactorBuilder.class)) {
+ this.instance = ((T) new AuthFactor(device, emailAddr, factorType, factorTypeId, isHotp, isTotp, phoneNumber, provider, securityQuestions));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withDevice(Device device) {
+ ((AuthFactor) this.instance).device = device;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withEmailAddr(String emailAddr) {
+ ((AuthFactor) this.instance).emailAddr = emailAddr;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withFactorType(String factorType) {
+ ((AuthFactor) this.instance).factorType = factorType;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withFactorTypeId(Integer factorTypeId) {
+ ((AuthFactor) this.instance).factorTypeId = factorTypeId;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withIsHotp(Boolean isHotp) {
+ ((AuthFactor) this.instance).isHotp = isHotp;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withIsTotp(Boolean isTotp) {
+ ((AuthFactor) this.instance).isTotp = isTotp;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withPhoneNumber(String phoneNumber) {
+ ((AuthFactor) this.instance).phoneNumber = phoneNumber;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withProvider(String provider) {
+ ((AuthFactor) this.instance).provider = provider;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withSecurityQuestions(List<String> securityQuestions) {
+ ((AuthFactor) this.instance).securityQuestions = securityQuestions;
+ return this;
+ }
+
+ public AuthFactor.AuthFactorBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AuthFactor) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Authentication.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Authentication.java
new file mode 100644
index 000000000000..33788169174b
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Authentication.java
@@ -0,0 +1,1194 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Authentication
+ * <p>
+ * Authentication event class.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "account_switch_type_id",
+ "actor",
+ "service",
+ "auth_protocol_id",
+ "raw_data_size",
+ "http_response",
+ "enrichments",
+ "logon_process",
+ "http_request",
+ "src_endpoint",
+ "is_mfa",
+ "user",
+ "session",
+ "auth_factors",
+ "logon_type",
+ "dst_endpoint",
+ "certificate",
+ "raw_data_hash",
+ "logon_type_id",
+ "is_remote",
+ "is_new_logon",
+ "authentication_token",
+ "auth_protocol",
+ "account_switch_type",
+ "is_cleartext"
+})
+@Generated("jsonschema2pojo")
+public class Authentication {
+
+ /**
+ * Account Switch Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("account_switch_type_id")
+ private Integer accountSwitchTypeId;
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ @JsonPropertyDescription("The Actor object.")
+ private Actor actor;
+ /**
+ * Service
+ * <p>
+ * The Service object.
+ *
+ */
+ @JsonProperty("service")
+ @JsonPropertyDescription("The Service object.")
+ private Service service;
+ /**
+ * Auth Protocol ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("auth_protocol_id")
+ private Integer authProtocolId;
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ private Integer rawDataSize;
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ @JsonPropertyDescription("The HTTP Response object.")
+ private HttpResponse httpResponse;
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ @JsonPropertyDescription("")
+ private List<Enrichment> enrichments = new ArrayList<Enrichment>();
+ /**
+ * Process
+ * <p>
+ * The Process object.
+ *
+ */
+ @JsonProperty("logon_process")
+ @JsonPropertyDescription("The Process object.")
+ private Process logonProcess;
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ @JsonPropertyDescription("The HTTP Request object.")
+ private HttpRequest httpRequest;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint srcEndpoint;
+ /**
+ * Multi Factor Authentication
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_mfa")
+ private Boolean isMfa;
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ @JsonPropertyDescription("The User object.")
+ private User user;
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ @JsonPropertyDescription("The Session object.")
+ private Session session;
+ /**
+ *
+ */
+ @JsonProperty("auth_factors")
+ @JsonPropertyDescription("")
+ private List<AuthFactor> authFactors = new ArrayList<AuthFactor>();
+ /**
+ * Logon Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("logon_type")
+ private String logonType;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint dstEndpoint;
+ /**
+ * Certificate
+ * <p>
+ * The Digital Certificate object.
+ *
+ */
+ @JsonProperty("certificate")
+ @JsonPropertyDescription("The Digital Certificate object.")
+ private Certificate certificate;
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ @JsonPropertyDescription("The Fingerprint object.")
+ private Fingerprint rawDataHash;
+ /**
+ * Logon Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("logon_type_id")
+ private Integer logonTypeId;
+ /**
+ * Remote
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_remote")
+ private Boolean isRemote;
+ /**
+ * New Logon
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_new_logon")
+ private Boolean isNewLogon;
+ @JsonProperty("authentication_token")
+ private AuthenticationToken authenticationToken;
+ /**
+ * Auth Protocol
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("auth_protocol")
+ private String authProtocol;
+ /**
+ * Account Switch Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("account_switch_type")
+ private String accountSwitchType;
+ /**
+ * Cleartext Credentials
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_cleartext")
+ private Boolean isCleartext;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Authentication() {
+ }
+
+ /**
+ *
+ * @param accountSwitchTypeId
+ * Account Switch Type ID.
+ * @param isMfa
+ * Multi Factor Authentication.
+ * @param rawDataSize
+ * Raw Data Size.
+ * @param isRemote
+ * Remote.
+ * @param logonTypeId
+ * Logon Type ID.
+ * @param accountSwitchType
+ * Account Switch Type.
+ * @param isCleartext
+ * Cleartext Credentials.
+ * @param authProtocolId
+ * Auth Protocol ID.
+ * @param logonType
+ * Logon Type.
+ * @param authProtocol
+ * Auth Protocol.
+ * @param isNewLogon
+ * New Logon.
+ */
+ public Authentication(Integer accountSwitchTypeId, Actor actor, Service service, Integer authProtocolId, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, Process logonProcess, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, Boolean isMfa, User user, Session session, List<AuthFactor> authFactors, String logonType, NetworkEndpoint dstEndpoint, Certificate certificate, Fingerprint rawDataHash, Integer logonTypeId, Boolean isRemote, Boolean isNewLogon, [...]
+ super();
+ this.accountSwitchTypeId = accountSwitchTypeId;
+ this.actor = actor;
+ this.service = service;
+ this.authProtocolId = authProtocolId;
+ this.rawDataSize = rawDataSize;
+ this.httpResponse = httpResponse;
+ this.enrichments = enrichments;
+ this.logonProcess = logonProcess;
+ this.httpRequest = httpRequest;
+ this.srcEndpoint = srcEndpoint;
+ this.isMfa = isMfa;
+ this.user = user;
+ this.session = session;
+ this.authFactors = authFactors;
+ this.logonType = logonType;
+ this.dstEndpoint = dstEndpoint;
+ this.certificate = certificate;
+ this.rawDataHash = rawDataHash;
+ this.logonTypeId = logonTypeId;
+ this.isRemote = isRemote;
+ this.isNewLogon = isNewLogon;
+ this.authenticationToken = authenticationToken;
+ this.authProtocol = authProtocol;
+ this.accountSwitchType = accountSwitchType;
+ this.isCleartext = isCleartext;
+ }
+
+ public static Authentication.AuthenticationBuilderBase builder() {
+ return new Authentication.AuthenticationBuilder();
+ }
+
+ /**
+ * Account Switch Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("account_switch_type_id")
+ public Integer getAccountSwitchTypeId() {
+ return accountSwitchTypeId;
+ }
+
+ /**
+ * Account Switch Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("account_switch_type_id")
+ public void setAccountSwitchTypeId(Integer accountSwitchTypeId) {
+ this.accountSwitchTypeId = accountSwitchTypeId;
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public Actor getActor() {
+ return actor;
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public void setActor(Actor actor) {
+ this.actor = actor;
+ }
+
+ /**
+ * Service
+ * <p>
+ * The Service object.
+ *
+ */
+ @JsonProperty("service")
+ public Service getService() {
+ return service;
+ }
+
+ /**
+ * Service
+ * <p>
+ * The Service object.
+ *
+ */
+ @JsonProperty("service")
+ public void setService(Service service) {
+ this.service = service;
+ }
+
+ /**
+ * Auth Protocol ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("auth_protocol_id")
+ public Integer getAuthProtocolId() {
+ return authProtocolId;
+ }
+
+ /**
+ * Auth Protocol ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("auth_protocol_id")
+ public void setAuthProtocolId(Integer authProtocolId) {
+ this.authProtocolId = authProtocolId;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public Integer getRawDataSize() {
+ return rawDataSize;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public void setRawDataSize(Integer rawDataSize) {
+ this.rawDataSize = rawDataSize;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public HttpResponse getHttpResponse() {
+ return httpResponse;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public void setHttpResponse(HttpResponse httpResponse) {
+ this.httpResponse = httpResponse;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public List<Enrichment> getEnrichments() {
+ return enrichments;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public void setEnrichments(List<Enrichment> enrichments) {
+ this.enrichments = enrichments;
+ }
+
+ /**
+ * Process
+ * <p>
+ * The Process object.
+ *
+ */
+ @JsonProperty("logon_process")
+ public Process getLogonProcess() {
+ return logonProcess;
+ }
+
+ /**
+ * Process
+ * <p>
+ * The Process object.
+ *
+ */
+ @JsonProperty("logon_process")
+ public void setLogonProcess(Process logonProcess) {
+ this.logonProcess = logonProcess;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public HttpRequest getHttpRequest() {
+ return httpRequest;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public void setHttpRequest(HttpRequest httpRequest) {
+ this.httpRequest = httpRequest;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public NetworkEndpoint getSrcEndpoint() {
+ return srcEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public void setSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ this.srcEndpoint = srcEndpoint;
+ }
+
+ /**
+ * Multi Factor Authentication
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_mfa")
+ public Boolean getIsMfa() {
+ return isMfa;
+ }
+
+ /**
+ * Multi Factor Authentication
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_mfa")
+ public void setIsMfa(Boolean isMfa) {
+ this.isMfa = isMfa;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public User getUser() {
+ return user;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ public Session getSession() {
+ return session;
+ }
+
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ public void setSession(Session session) {
+ this.session = session;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("auth_factors")
+ public List<AuthFactor> getAuthFactors() {
+ return authFactors;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("auth_factors")
+ public void setAuthFactors(List<AuthFactor> authFactors) {
+ this.authFactors = authFactors;
+ }
+
+ /**
+ * Logon Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("logon_type")
+ public String getLogonType() {
+ return logonType;
+ }
+
+ /**
+ * Logon Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("logon_type")
+ public void setLogonType(String logonType) {
+ this.logonType = logonType;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ public NetworkEndpoint getDstEndpoint() {
+ return dstEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ public void setDstEndpoint(NetworkEndpoint dstEndpoint) {
+ this.dstEndpoint = dstEndpoint;
+ }
+
+ /**
+ * Certificate
+ * <p>
+ * The Digital Certificate object.
+ *
+ */
+ @JsonProperty("certificate")
+ public Certificate getCertificate() {
+ return certificate;
+ }
+
+ /**
+ * Certificate
+ * <p>
+ * The Digital Certificate object.
+ *
+ */
+ @JsonProperty("certificate")
+ public void setCertificate(Certificate certificate) {
+ this.certificate = certificate;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public Fingerprint getRawDataHash() {
+ return rawDataHash;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public void setRawDataHash(Fingerprint rawDataHash) {
+ this.rawDataHash = rawDataHash;
+ }
+
+ /**
+ * Logon Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("logon_type_id")
+ public Integer getLogonTypeId() {
+ return logonTypeId;
+ }
+
+ /**
+ * Logon Type ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("logon_type_id")
+ public void setLogonTypeId(Integer logonTypeId) {
+ this.logonTypeId = logonTypeId;
+ }
+
+ /**
+ * Remote
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_remote")
+ public Boolean getIsRemote() {
+ return isRemote;
+ }
+
+ /**
+ * Remote
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_remote")
+ public void setIsRemote(Boolean isRemote) {
+ this.isRemote = isRemote;
+ }
+
+ /**
+ * New Logon
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_new_logon")
+ public Boolean getIsNewLogon() {
+ return isNewLogon;
+ }
+
+ /**
+ * New Logon
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_new_logon")
+ public void setIsNewLogon(Boolean isNewLogon) {
+ this.isNewLogon = isNewLogon;
+ }
+
+ @JsonProperty("authentication_token")
+ public AuthenticationToken getAuthenticationToken() {
+ return authenticationToken;
+ }
+
+ @JsonProperty("authentication_token")
+ public void setAuthenticationToken(AuthenticationToken authenticationToken) {
+ this.authenticationToken = authenticationToken;
+ }
+
+ /**
+ * Auth Protocol
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("auth_protocol")
+ public String getAuthProtocol() {
+ return authProtocol;
+ }
+
+ /**
+ * Auth Protocol
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("auth_protocol")
+ public void setAuthProtocol(String authProtocol) {
+ this.authProtocol = authProtocol;
+ }
+
+ /**
+ * Account Switch Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("account_switch_type")
+ public String getAccountSwitchType() {
+ return accountSwitchType;
+ }
+
+ /**
+ * Account Switch Type
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("account_switch_type")
+ public void setAccountSwitchType(String accountSwitchType) {
+ this.accountSwitchType = accountSwitchType;
+ }
+
+ /**
+ * Cleartext Credentials
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_cleartext")
+ public Boolean getIsCleartext() {
+ return isCleartext;
+ }
+
+ /**
+ * Cleartext Credentials
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_cleartext")
+ public void setIsCleartext(Boolean isCleartext) {
+ this.isCleartext = isCleartext;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Authentication.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("accountSwitchTypeId");
+ sb.append('=');
+ sb.append(((this.accountSwitchTypeId == null)?"<null>":this.accountSwitchTypeId));
+ sb.append(',');
+ sb.append("actor");
+ sb.append('=');
+ sb.append(((this.actor == null)?"<null>":this.actor));
+ sb.append(',');
+ sb.append("service");
+ sb.append('=');
+ sb.append(((this.service == null)?"<null>":this.service));
+ sb.append(',');
+ sb.append("authProtocolId");
+ sb.append('=');
+ sb.append(((this.authProtocolId == null)?"<null>":this.authProtocolId));
+ sb.append(',');
+ sb.append("rawDataSize");
+ sb.append('=');
+ sb.append(((this.rawDataSize == null)?"<null>":this.rawDataSize));
+ sb.append(',');
+ sb.append("httpResponse");
+ sb.append('=');
+ sb.append(((this.httpResponse == null)?"<null>":this.httpResponse));
+ sb.append(',');
+ sb.append("enrichments");
+ sb.append('=');
+ sb.append(((this.enrichments == null)?"<null>":this.enrichments));
+ sb.append(',');
+ sb.append("logonProcess");
+ sb.append('=');
+ sb.append(((this.logonProcess == null)?"<null>":this.logonProcess));
+ sb.append(',');
+ sb.append("httpRequest");
+ sb.append('=');
+ sb.append(((this.httpRequest == null)?"<null>":this.httpRequest));
+ sb.append(',');
+ sb.append("srcEndpoint");
+ sb.append('=');
+ sb.append(((this.srcEndpoint == null)?"<null>":this.srcEndpoint));
+ sb.append(',');
+ sb.append("isMfa");
+ sb.append('=');
+ sb.append(((this.isMfa == null)?"<null>":this.isMfa));
+ sb.append(',');
+ sb.append("user");
+ sb.append('=');
+ sb.append(((this.user == null)?"<null>":this.user));
+ sb.append(',');
+ sb.append("session");
+ sb.append('=');
+ sb.append(((this.session == null)?"<null>":this.session));
+ sb.append(',');
+ sb.append("authFactors");
+ sb.append('=');
+ sb.append(((this.authFactors == null)?"<null>":this.authFactors));
+ sb.append(',');
+ sb.append("logonType");
+ sb.append('=');
+ sb.append(((this.logonType == null)?"<null>":this.logonType));
+ sb.append(',');
+ sb.append("dstEndpoint");
+ sb.append('=');
+ sb.append(((this.dstEndpoint == null)?"<null>":this.dstEndpoint));
+ sb.append(',');
+ sb.append("certificate");
+ sb.append('=');
+ sb.append(((this.certificate == null)?"<null>":this.certificate));
+ sb.append(',');
+ sb.append("rawDataHash");
+ sb.append('=');
+ sb.append(((this.rawDataHash == null)?"<null>":this.rawDataHash));
+ sb.append(',');
+ sb.append("logonTypeId");
+ sb.append('=');
+ sb.append(((this.logonTypeId == null)?"<null>":this.logonTypeId));
+ sb.append(',');
+ sb.append("isRemote");
+ sb.append('=');
+ sb.append(((this.isRemote == null)?"<null>":this.isRemote));
+ sb.append(',');
+ sb.append("isNewLogon");
+ sb.append('=');
+ sb.append(((this.isNewLogon == null)?"<null>":this.isNewLogon));
+ sb.append(',');
+ sb.append("authenticationToken");
+ sb.append('=');
+ sb.append(((this.authenticationToken == null)?"<null>":this.authenticationToken));
+ sb.append(',');
+ sb.append("authProtocol");
+ sb.append('=');
+ sb.append(((this.authProtocol == null)?"<null>":this.authProtocol));
+ sb.append(',');
+ sb.append("accountSwitchType");
+ sb.append('=');
+ sb.append(((this.accountSwitchType == null)?"<null>":this.accountSwitchType));
+ sb.append(',');
+ sb.append("isCleartext");
+ sb.append('=');
+ sb.append(((this.isCleartext == null)?"<null>":this.isCleartext));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.session == null)? 0 :this.session.hashCode()));
+ result = ((result* 31)+((this.certificate == null)? 0 :this.certificate.hashCode()));
+ result = ((result* 31)+((this.dstEndpoint == null)? 0 :this.dstEndpoint.hashCode()));
+ result = ((result* 31)+((this.srcEndpoint == null)? 0 :this.srcEndpoint.hashCode()));
+ result = ((result* 31)+((this.rawDataHash == null)? 0 :this.rawDataHash.hashCode()));
+ result = ((result* 31)+((this.logonProcess == null)? 0 :this.logonProcess.hashCode()));
+ result = ((result* 31)+((this.logonTypeId == null)? 0 :this.logonTypeId.hashCode()));
+ result = ((result* 31)+((this.httpRequest == null)? 0 :this.httpRequest.hashCode()));
+ result = ((result* 31)+((this.accountSwitchType == null)? 0 :this.accountSwitchType.hashCode()));
+ result = ((result* 31)+((this.authProtocolId == null)? 0 :this.authProtocolId.hashCode()));
+ result = ((result* 31)+((this.accountSwitchTypeId == null)? 0 :this.accountSwitchTypeId.hashCode()));
+ result = ((result* 31)+((this.isMfa == null)? 0 :this.isMfa.hashCode()));
+ result = ((result* 31)+((this.rawDataSize == null)? 0 :this.rawDataSize.hashCode()));
+ result = ((result* 31)+((this.authFactors == null)? 0 :this.authFactors.hashCode()));
+ result = ((result* 31)+((this.isRemote == null)? 0 :this.isRemote.hashCode()));
+ result = ((result* 31)+((this.authProtocol == null)? 0 :this.authProtocol.hashCode()));
+ result = ((result* 31)+((this.isNewLogon == null)? 0 :this.isNewLogon.hashCode()));
+ result = ((result* 31)+((this.authenticationToken == null)? 0 :this.authenticationToken.hashCode()));
+ result = ((result* 31)+((this.actor == null)? 0 :this.actor.hashCode()));
+ result = ((result* 31)+((this.service == null)? 0 :this.service.hashCode()));
+ result = ((result* 31)+((this.isCleartext == null)? 0 :this.isCleartext.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.httpResponse == null)? 0 :this.httpResponse.hashCode()));
+ result = ((result* 31)+((this.user == null)? 0 :this.user.hashCode()));
+ result = ((result* 31)+((this.enrichments == null)? 0 :this.enrichments.hashCode()));
+ result = ((result* 31)+((this.logonType == null)? 0 :this.logonType.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Authentication) == false) {
+ return false;
+ }
+ Authentication rhs = ((Authentication) other);
+ return (((((((((((((((((((((((((((this.session == rhs.session)||((this.session!= null)&&this.session.equals(rhs.session)))&&((this.certificate == rhs.certificate)||((this.certificate!= null)&&this.certificate.equals(rhs.certificate))))&&((this.dstEndpoint == rhs.dstEndpoint)||((this.dstEndpoint!= null)&&this.dstEndpoint.equals(rhs.dstEndpoint))))&&((this.srcEndpoint == rhs.srcEndpoint)||((this.srcEndpoint!= null)&&this.srcEndpoint.equals(rhs.srcEndpoint))))&&((this.rawDataHash == [...]
+ }
+
+ public static class AuthenticationBuilder
+ extends Authentication.AuthenticationBuilderBase<Authentication>
+ {
+
+
+ public AuthenticationBuilder() {
+ super();
+ }
+
+ public AuthenticationBuilder(Integer accountSwitchTypeId, Actor actor, Service service, Integer authProtocolId, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, Process logonProcess, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, Boolean isMfa, User user, Session session, List<AuthFactor> authFactors, String logonType, NetworkEndpoint dstEndpoint, Certificate certificate, Fingerprint rawDataHash, Integer logonTypeId, Boolean isRemote, Boolean i [...]
+ super(accountSwitchTypeId, actor, service, authProtocolId, rawDataSize, httpResponse, enrichments, logonProcess, httpRequest, srcEndpoint, isMfa, user, session, authFactors, logonType, dstEndpoint, certificate, rawDataHash, logonTypeId, isRemote, isNewLogon, authenticationToken, authProtocol, accountSwitchType, isCleartext);
+ }
+
+ }
+
+ public static abstract class AuthenticationBuilderBase<T extends Authentication >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AuthenticationBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Authentication.AuthenticationBuilder.class)) {
+ this.instance = ((T) new Authentication());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AuthenticationBuilderBase(Integer accountSwitchTypeId, Actor actor, Service service, Integer authProtocolId, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, Process logonProcess, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, Boolean isMfa, User user, Session session, List<AuthFactor> authFactors, String logonType, NetworkEndpoint dstEndpoint, Certificate certificate, Fingerprint rawDataHash, Integer logonTypeId, Boolean isRemote, Boole [...]
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Authentication.AuthenticationBuilder.class)) {
+ this.instance = ((T) new Authentication(accountSwitchTypeId, actor, service, authProtocolId, rawDataSize, httpResponse, enrichments, logonProcess, httpRequest, srcEndpoint, isMfa, user, session, authFactors, logonType, dstEndpoint, certificate, rawDataHash, logonTypeId, isRemote, isNewLogon, authenticationToken, authProtocol, accountSwitchType, isCleartext));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAccountSwitchTypeId(Integer accountSwitchTypeId) {
+ ((Authentication) this.instance).accountSwitchTypeId = accountSwitchTypeId;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withActor(Actor actor) {
+ ((Authentication) this.instance).actor = actor;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withService(Service service) {
+ ((Authentication) this.instance).service = service;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAuthProtocolId(Integer authProtocolId) {
+ ((Authentication) this.instance).authProtocolId = authProtocolId;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withRawDataSize(Integer rawDataSize) {
+ ((Authentication) this.instance).rawDataSize = rawDataSize;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withHttpResponse(HttpResponse httpResponse) {
+ ((Authentication) this.instance).httpResponse = httpResponse;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withEnrichments(List<Enrichment> enrichments) {
+ ((Authentication) this.instance).enrichments = enrichments;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withLogonProcess(Process logonProcess) {
+ ((Authentication) this.instance).logonProcess = logonProcess;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withHttpRequest(HttpRequest httpRequest) {
+ ((Authentication) this.instance).httpRequest = httpRequest;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ ((Authentication) this.instance).srcEndpoint = srcEndpoint;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withIsMfa(Boolean isMfa) {
+ ((Authentication) this.instance).isMfa = isMfa;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withUser(User user) {
+ ((Authentication) this.instance).user = user;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withSession(Session session) {
+ ((Authentication) this.instance).session = session;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAuthFactors(List<AuthFactor> authFactors) {
+ ((Authentication) this.instance).authFactors = authFactors;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withLogonType(String logonType) {
+ ((Authentication) this.instance).logonType = logonType;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withDstEndpoint(NetworkEndpoint dstEndpoint) {
+ ((Authentication) this.instance).dstEndpoint = dstEndpoint;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withCertificate(Certificate certificate) {
+ ((Authentication) this.instance).certificate = certificate;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withRawDataHash(Fingerprint rawDataHash) {
+ ((Authentication) this.instance).rawDataHash = rawDataHash;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withLogonTypeId(Integer logonTypeId) {
+ ((Authentication) this.instance).logonTypeId = logonTypeId;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withIsRemote(Boolean isRemote) {
+ ((Authentication) this.instance).isRemote = isRemote;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withIsNewLogon(Boolean isNewLogon) {
+ ((Authentication) this.instance).isNewLogon = isNewLogon;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAuthenticationToken(AuthenticationToken authenticationToken) {
+ ((Authentication) this.instance).authenticationToken = authenticationToken;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAuthProtocol(String authProtocol) {
+ ((Authentication) this.instance).authProtocol = authProtocol;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAccountSwitchType(String accountSwitchType) {
+ ((Authentication) this.instance).accountSwitchType = accountSwitchType;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withIsCleartext(Boolean isCleartext) {
+ ((Authentication) this.instance).isCleartext = isCleartext;
+ return this;
+ }
+
+ public Authentication.AuthenticationBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Authentication) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthenticationToken.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthenticationToken.java
new file mode 100644
index 000000000000..0e4ec75a716c
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthenticationToken.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AuthenticationToken {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AuthenticationToken.AuthenticationTokenBuilderBase builder() {
+ return new AuthenticationToken.AuthenticationTokenBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AuthenticationToken.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AuthenticationToken) == false) {
+ return false;
+ }
+ AuthenticationToken rhs = ((AuthenticationToken) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AuthenticationTokenBuilder
+ extends AuthenticationToken.AuthenticationTokenBuilderBase<AuthenticationToken>
+ {
+
+
+ public AuthenticationTokenBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AuthenticationTokenBuilderBase<T extends AuthenticationToken >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AuthenticationTokenBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AuthenticationToken.AuthenticationTokenBuilder.class)) {
+ this.instance = ((T) new AuthenticationToken());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AuthenticationToken.AuthenticationTokenBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AuthenticationToken) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Authorization.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Authorization.java
new file mode 100644
index 000000000000..d4659b7fe736
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Authorization.java
@@ -0,0 +1,230 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Authorization
+ * <p>
+ * The Authorization Result object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "decision",
+ "policy"
+})
+@Generated("jsonschema2pojo")
+public class Authorization {
+
+ /**
+ * Authorization Decision/Outcome
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("decision")
+ private String decision;
+ /**
+ * Policy
+ * <p>
+ * The Policy object.
+ *
+ */
+ @JsonProperty("policy")
+ @JsonPropertyDescription("The Policy object.")
+ private Policy policy;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Authorization() {
+ }
+
+ /**
+ *
+ * @param decision
+ * Authorization Decision/Outcome.
+ */
+ public Authorization(String decision, Policy policy) {
+ super();
+ this.decision = decision;
+ this.policy = policy;
+ }
+
+ public static Authorization.AuthorizationBuilderBase builder() {
+ return new Authorization.AuthorizationBuilder();
+ }
+
+ /**
+ * Authorization Decision/Outcome
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("decision")
+ public String getDecision() {
+ return decision;
+ }
+
+ /**
+ * Authorization Decision/Outcome
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("decision")
+ public void setDecision(String decision) {
+ this.decision = decision;
+ }
+
+ /**
+ * Policy
+ * <p>
+ * The Policy object.
+ *
+ */
+ @JsonProperty("policy")
+ public Policy getPolicy() {
+ return policy;
+ }
+
+ /**
+ * Policy
+ * <p>
+ * The Policy object.
+ *
+ */
+ @JsonProperty("policy")
+ public void setPolicy(Policy policy) {
+ this.policy = policy;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Authorization.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("decision");
+ sb.append('=');
+ sb.append(((this.decision == null)?"<null>":this.decision));
+ sb.append(',');
+ sb.append("policy");
+ sb.append('=');
+ sb.append(((this.policy == null)?"<null>":this.policy));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.decision == null)? 0 :this.decision.hashCode()));
+ result = ((result* 31)+((this.policy == null)? 0 :this.policy.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Authorization) == false) {
+ return false;
+ }
+ Authorization rhs = ((Authorization) other);
+ return ((((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)))&&((this.decision == rhs.decision)||((this.decision!= null)&&this.decision.equals(rhs.decision))))&&((this.policy == rhs.policy)||((this.policy!= null)&&this.policy.equals(rhs.policy))));
+ }
+
+ public static class AuthorizationBuilder
+ extends Authorization.AuthorizationBuilderBase<Authorization>
+ {
+
+
+ public AuthorizationBuilder() {
+ super();
+ }
+
+ public AuthorizationBuilder(String decision, Policy policy) {
+ super(decision, policy);
+ }
+
+ }
+
+ public static abstract class AuthorizationBuilderBase<T extends Authorization >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AuthorizationBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Authorization.AuthorizationBuilder.class)) {
+ this.instance = ((T) new Authorization());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AuthorizationBuilderBase(String decision, Policy policy) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Authorization.AuthorizationBuilder.class)) {
+ this.instance = ((T) new Authorization(decision, policy));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Authorization.AuthorizationBuilderBase withDecision(String decision) {
+ ((Authorization) this.instance).decision = decision;
+ return this;
+ }
+
+ public Authorization.AuthorizationBuilderBase withPolicy(Policy policy) {
+ ((Authorization) this.instance).policy = policy;
+ return this;
+ }
+
+ public Authorization.AuthorizationBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Authorization) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthorizeSession.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthorizeSession.java
new file mode 100644
index 000000000000..418b10005424
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AuthorizeSession.java
@@ -0,0 +1,654 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * AuthorizeSession
+ * <p>
+ * AuthorizeSession event class.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "privileges",
+ "actor",
+ "raw_data_size",
+ "http_response",
+ "enrichments",
+ "http_request",
+ "src_endpoint",
+ "group",
+ "user",
+ "session",
+ "dst_endpoint",
+ "raw_data_hash"
+})
+@Generated("jsonschema2pojo")
+public class AuthorizeSession {
+
+ /**
+ * Privileges
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("privileges")
+ private List<String> privileges = new ArrayList<String>();
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ @JsonPropertyDescription("The Actor object.")
+ private Actor actor;
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ private Integer rawDataSize;
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ @JsonPropertyDescription("The HTTP Response object.")
+ private HttpResponse httpResponse;
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ @JsonPropertyDescription("")
+ private List<Enrichment> enrichments = new ArrayList<Enrichment>();
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ @JsonPropertyDescription("The HTTP Request object.")
+ private HttpRequest httpRequest;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint srcEndpoint;
+ /**
+ * Group
+ * <p>
+ * The Group object.
+ *
+ */
+ @JsonProperty("group")
+ @JsonPropertyDescription("The Group object.")
+ private Group group;
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ @JsonPropertyDescription("The User object.")
+ private User user;
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ @JsonPropertyDescription("The Session object.")
+ private Session session;
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ @JsonPropertyDescription("The Network Endpoint object.")
+ private NetworkEndpoint dstEndpoint;
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ @JsonPropertyDescription("The Fingerprint object.")
+ private Fingerprint rawDataHash;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public AuthorizeSession() {
+ }
+
+ /**
+ *
+ * @param privileges
+ * Privileges.
+ * @param rawDataSize
+ * Raw Data Size.
+ */
+ public AuthorizeSession(List<String> privileges, Actor actor, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, Group group, User user, Session session, NetworkEndpoint dstEndpoint, Fingerprint rawDataHash) {
+ super();
+ this.privileges = privileges;
+ this.actor = actor;
+ this.rawDataSize = rawDataSize;
+ this.httpResponse = httpResponse;
+ this.enrichments = enrichments;
+ this.httpRequest = httpRequest;
+ this.srcEndpoint = srcEndpoint;
+ this.group = group;
+ this.user = user;
+ this.session = session;
+ this.dstEndpoint = dstEndpoint;
+ this.rawDataHash = rawDataHash;
+ }
+
+ public static AuthorizeSession.AuthorizeSessionBuilderBase builder() {
+ return new AuthorizeSession.AuthorizeSessionBuilder();
+ }
+
+ /**
+ * Privileges
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("privileges")
+ public List<String> getPrivileges() {
+ return privileges;
+ }
+
+ /**
+ * Privileges
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("privileges")
+ public void setPrivileges(List<String> privileges) {
+ this.privileges = privileges;
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public Actor getActor() {
+ return actor;
+ }
+
+ /**
+ * Actor
+ * <p>
+ * The Actor object.
+ *
+ */
+ @JsonProperty("actor")
+ public void setActor(Actor actor) {
+ this.actor = actor;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public Integer getRawDataSize() {
+ return rawDataSize;
+ }
+
+ /**
+ * Raw Data Size
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("raw_data_size")
+ public void setRawDataSize(Integer rawDataSize) {
+ this.rawDataSize = rawDataSize;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public HttpResponse getHttpResponse() {
+ return httpResponse;
+ }
+
+ /**
+ * HttpResponse
+ * <p>
+ * The HTTP Response object.
+ *
+ */
+ @JsonProperty("http_response")
+ public void setHttpResponse(HttpResponse httpResponse) {
+ this.httpResponse = httpResponse;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public List<Enrichment> getEnrichments() {
+ return enrichments;
+ }
+
+ /**
+ *
+ */
+ @JsonProperty("enrichments")
+ public void setEnrichments(List<Enrichment> enrichments) {
+ this.enrichments = enrichments;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public HttpRequest getHttpRequest() {
+ return httpRequest;
+ }
+
+ /**
+ * HttpRequest
+ * <p>
+ * The HTTP Request object.
+ *
+ */
+ @JsonProperty("http_request")
+ public void setHttpRequest(HttpRequest httpRequest) {
+ this.httpRequest = httpRequest;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public NetworkEndpoint getSrcEndpoint() {
+ return srcEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("src_endpoint")
+ public void setSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ this.srcEndpoint = srcEndpoint;
+ }
+
+ /**
+ * Group
+ * <p>
+ * The Group object.
+ *
+ */
+ @JsonProperty("group")
+ public Group getGroup() {
+ return group;
+ }
+
+ /**
+ * Group
+ * <p>
+ * The Group object.
+ *
+ */
+ @JsonProperty("group")
+ public void setGroup(Group group) {
+ this.group = group;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public User getUser() {
+ return user;
+ }
+
+ /**
+ * User
+ * <p>
+ * The User object.
+ *
+ */
+ @JsonProperty("user")
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ public Session getSession() {
+ return session;
+ }
+
+ /**
+ * Session
+ * <p>
+ * The Session object.
+ *
+ */
+ @JsonProperty("session")
+ public void setSession(Session session) {
+ this.session = session;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ public NetworkEndpoint getDstEndpoint() {
+ return dstEndpoint;
+ }
+
+ /**
+ * NetworkEndpoint
+ * <p>
+ * The Network Endpoint object.
+ *
+ */
+ @JsonProperty("dst_endpoint")
+ public void setDstEndpoint(NetworkEndpoint dstEndpoint) {
+ this.dstEndpoint = dstEndpoint;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public Fingerprint getRawDataHash() {
+ return rawDataHash;
+ }
+
+ /**
+ * Fingerprint
+ * <p>
+ * The Fingerprint object.
+ *
+ */
+ @JsonProperty("raw_data_hash")
+ public void setRawDataHash(Fingerprint rawDataHash) {
+ this.rawDataHash = rawDataHash;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AuthorizeSession.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("privileges");
+ sb.append('=');
+ sb.append(((this.privileges == null)?"<null>":this.privileges));
+ sb.append(',');
+ sb.append("actor");
+ sb.append('=');
+ sb.append(((this.actor == null)?"<null>":this.actor));
+ sb.append(',');
+ sb.append("rawDataSize");
+ sb.append('=');
+ sb.append(((this.rawDataSize == null)?"<null>":this.rawDataSize));
+ sb.append(',');
+ sb.append("httpResponse");
+ sb.append('=');
+ sb.append(((this.httpResponse == null)?"<null>":this.httpResponse));
+ sb.append(',');
+ sb.append("enrichments");
+ sb.append('=');
+ sb.append(((this.enrichments == null)?"<null>":this.enrichments));
+ sb.append(',');
+ sb.append("httpRequest");
+ sb.append('=');
+ sb.append(((this.httpRequest == null)?"<null>":this.httpRequest));
+ sb.append(',');
+ sb.append("srcEndpoint");
+ sb.append('=');
+ sb.append(((this.srcEndpoint == null)?"<null>":this.srcEndpoint));
+ sb.append(',');
+ sb.append("group");
+ sb.append('=');
+ sb.append(((this.group == null)?"<null>":this.group));
+ sb.append(',');
+ sb.append("user");
+ sb.append('=');
+ sb.append(((this.user == null)?"<null>":this.user));
+ sb.append(',');
+ sb.append("session");
+ sb.append('=');
+ sb.append(((this.session == null)?"<null>":this.session));
+ sb.append(',');
+ sb.append("dstEndpoint");
+ sb.append('=');
+ sb.append(((this.dstEndpoint == null)?"<null>":this.dstEndpoint));
+ sb.append(',');
+ sb.append("rawDataHash");
+ sb.append('=');
+ sb.append(((this.rawDataHash == null)?"<null>":this.rawDataHash));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.privileges == null)? 0 :this.privileges.hashCode()));
+ result = ((result* 31)+((this.rawDataSize == null)? 0 :this.rawDataSize.hashCode()));
+ result = ((result* 31)+((this.session == null)? 0 :this.session.hashCode()));
+ result = ((result* 31)+((this.dstEndpoint == null)? 0 :this.dstEndpoint.hashCode()));
+ result = ((result* 31)+((this.actor == null)? 0 :this.actor.hashCode()));
+ result = ((result* 31)+((this.srcEndpoint == null)? 0 :this.srcEndpoint.hashCode()));
+ result = ((result* 31)+((this.rawDataHash == null)? 0 :this.rawDataHash.hashCode()));
+ result = ((result* 31)+((this.httpRequest == null)? 0 :this.httpRequest.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.httpResponse == null)? 0 :this.httpResponse.hashCode()));
+ result = ((result* 31)+((this.user == null)? 0 :this.user.hashCode()));
+ result = ((result* 31)+((this.enrichments == null)? 0 :this.enrichments.hashCode()));
+ result = ((result* 31)+((this.group == null)? 0 :this.group.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AuthorizeSession) == false) {
+ return false;
+ }
+ AuthorizeSession rhs = ((AuthorizeSession) other);
+ return ((((((((((((((this.privileges == rhs.privileges)||((this.privileges!= null)&&this.privileges.equals(rhs.privileges)))&&((this.rawDataSize == rhs.rawDataSize)||((this.rawDataSize!= null)&&this.rawDataSize.equals(rhs.rawDataSize))))&&((this.session == rhs.session)||((this.session!= null)&&this.session.equals(rhs.session))))&&((this.dstEndpoint == rhs.dstEndpoint)||((this.dstEndpoint!= null)&&this.dstEndpoint.equals(rhs.dstEndpoint))))&&((this.actor == rhs.actor)||((this.acto [...]
+ }
+
+ public static class AuthorizeSessionBuilder
+ extends AuthorizeSession.AuthorizeSessionBuilderBase<AuthorizeSession>
+ {
+
+
+ public AuthorizeSessionBuilder() {
+ super();
+ }
+
+ public AuthorizeSessionBuilder(List<String> privileges, Actor actor, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, Group group, User user, Session session, NetworkEndpoint dstEndpoint, Fingerprint rawDataHash) {
+ super(privileges, actor, rawDataSize, httpResponse, enrichments, httpRequest, srcEndpoint, group, user, session, dstEndpoint, rawDataHash);
+ }
+
+ }
+
+ public static abstract class AuthorizeSessionBuilderBase<T extends AuthorizeSession >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AuthorizeSessionBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AuthorizeSession.AuthorizeSessionBuilder.class)) {
+ this.instance = ((T) new AuthorizeSession());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public AuthorizeSessionBuilderBase(List<String> privileges, Actor actor, Integer rawDataSize, HttpResponse httpResponse, List<Enrichment> enrichments, HttpRequest httpRequest, NetworkEndpoint srcEndpoint, Group group, User user, Session session, NetworkEndpoint dstEndpoint, Fingerprint rawDataHash) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AuthorizeSession.AuthorizeSessionBuilder.class)) {
+ this.instance = ((T) new AuthorizeSession(privileges, actor, rawDataSize, httpResponse, enrichments, httpRequest, srcEndpoint, group, user, session, dstEndpoint, rawDataHash));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withPrivileges(List<String> privileges) {
+ ((AuthorizeSession) this.instance).privileges = privileges;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withActor(Actor actor) {
+ ((AuthorizeSession) this.instance).actor = actor;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withRawDataSize(Integer rawDataSize) {
+ ((AuthorizeSession) this.instance).rawDataSize = rawDataSize;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withHttpResponse(HttpResponse httpResponse) {
+ ((AuthorizeSession) this.instance).httpResponse = httpResponse;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withEnrichments(List<Enrichment> enrichments) {
+ ((AuthorizeSession) this.instance).enrichments = enrichments;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withHttpRequest(HttpRequest httpRequest) {
+ ((AuthorizeSession) this.instance).httpRequest = httpRequest;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withSrcEndpoint(NetworkEndpoint srcEndpoint) {
+ ((AuthorizeSession) this.instance).srcEndpoint = srcEndpoint;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withGroup(Group group) {
+ ((AuthorizeSession) this.instance).group = group;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withUser(User user) {
+ ((AuthorizeSession) this.instance).user = user;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withSession(Session session) {
+ ((AuthorizeSession) this.instance).session = session;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withDstEndpoint(NetworkEndpoint dstEndpoint) {
+ ((AuthorizeSession) this.instance).dstEndpoint = dstEndpoint;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withRawDataHash(Fingerprint rawDataHash) {
+ ((AuthorizeSession) this.instance).rawDataHash = rawDataHash;
+ return this;
+ }
+
+ public AuthorizeSession.AuthorizeSessionBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AuthorizeSession) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AutonomousSystem.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AutonomousSystem.java
new file mode 100644
index 000000000000..3e5d8452d6d5
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AutonomousSystem.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AutonomousSystem {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AutonomousSystem.AutonomousSystemBuilderBase builder() {
+ return new AutonomousSystem.AutonomousSystemBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AutonomousSystem.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AutonomousSystem) == false) {
+ return false;
+ }
+ AutonomousSystem rhs = ((AutonomousSystem) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AutonomousSystemBuilder
+ extends AutonomousSystem.AutonomousSystemBuilderBase<AutonomousSystem>
+ {
+
+
+ public AutonomousSystemBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AutonomousSystemBuilderBase<T extends AutonomousSystem >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AutonomousSystemBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AutonomousSystem.AutonomousSystemBuilder.class)) {
+ this.instance = ((T) new AutonomousSystem());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AutonomousSystem.AutonomousSystemBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AutonomousSystem) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AvgTimespan.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AvgTimespan.java
new file mode 100644
index 000000000000..5f337c7d4d67
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/AvgTimespan.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class AvgTimespan {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static AvgTimespan.AvgTimespanBuilderBase builder() {
+ return new AvgTimespan.AvgTimespanBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(AvgTimespan.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof AvgTimespan) == false) {
+ return false;
+ }
+ AvgTimespan rhs = ((AvgTimespan) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class AvgTimespanBuilder
+ extends AvgTimespan.AvgTimespanBuilderBase<AvgTimespan>
+ {
+
+
+ public AvgTimespanBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class AvgTimespanBuilderBase<T extends AvgTimespan >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public AvgTimespanBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(AvgTimespan.AvgTimespanBuilder.class)) {
+ this.instance = ((T) new AvgTimespan());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public AvgTimespan.AvgTimespanBuilderBase withAdditionalProperty(String name, Object value) {
+ ((AvgTimespan) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CategoryId.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CategoryId.java
new file mode 100644
index 000000000000..62dcddb4ed3f
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CategoryId.java
@@ -0,0 +1,128 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.HashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+
+@Generated("jsonschema2pojo")
+public enum CategoryId {
+
+ _5(5),
+ _83(83),
+ _35(35),
+ _6(6),
+ _93(93),
+ _65(65),
+ _64(64),
+ _11(11),
+ _49(49),
+ _32(32),
+ _51(51),
+ _27(27),
+ _97(97),
+ _66(66),
+ _50(50),
+ _96(96),
+ _86(86),
+ _98(98),
+ _52(52),
+ _25(25),
+ _38(38),
+ _85(85),
+ _110(110),
+ _23(23),
+ _29(29),
+ _118(118),
+ _53(53),
+ _56(56),
+ _3(3),
+ _36(36),
+ _17(17),
+ _9(9),
+ _63(63),
+ _89(89),
+ _112(112),
+ _121(121),
+ _44(44),
+ _107(107),
+ _68(68),
+ _33(33),
+ _92(92),
+ _114(114),
+ _106(106),
+ _45(45),
+ _108(108),
+ _55(55),
+ _84(84),
+ _101(101),
+ _111(111),
+ _87(87),
+ _4(4),
+ _0(0),
+ _15(15),
+ _88(88),
+ _20(20),
+ _40(40),
+ _18(18),
+ _71(71),
+ _61(61),
+ _30(30),
+ _22(22),
+ _47(47),
+ _14(14),
+ _59(59),
+ _58(58),
+ _60(60),
+ _95(95),
+ _113(113),
+ _16(16),
+ _54(54),
+ _46(46),
+ _67(67),
+ _103(103),
+ _24(24),
+ _57(57),
+ _109(109),
+ _102(102),
+ _7(7),
+ _99(99),
+ _34(34),
+ _26(26),
+ _43(43),
+ _90(90),
+ _37(37),
+ _31(31),
+ _21(21),
+ _1(1);
+ private final Integer value;
+ private final static Map<Integer, CategoryId> CONSTANTS = new HashMap<Integer, CategoryId>();
+
+ static {
+ for (CategoryId c: values()) {
+ CONSTANTS.put(c.value, c);
+ }
+ }
+
+ CategoryId(Integer value) {
+ this.value = value;
+ }
+
+ @JsonValue
+ public Integer value() {
+ return this.value;
+ }
+
+ @JsonCreator
+ public static CategoryId fromValue(Integer value) {
+ CategoryId constant = CONSTANTS.get(value);
+ if (constant == null) {
+ throw new IllegalArgumentException((value +""));
+ } else {
+ return constant;
+ }
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Certificate.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Certificate.java
new file mode 100644
index 000000000000..290c207ad39e
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Certificate.java
@@ -0,0 +1,584 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+
+/**
+ * Certificate
+ * <p>
+ * The Digital Certificate object.
+ *
+ */
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+ "version",
+ "uid",
+ "is_self_signed",
+ "subject",
+ "issuer",
+ "fingerprints",
+ "created_time",
+ "expiration_time",
+ "sans",
+ "serial_number"
+})
+@Generated("jsonschema2pojo")
+public class Certificate {
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ private String version;
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ private String uid;
+ /**
+ * Certificate Self-Signed
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_self_signed")
+ private Boolean isSelfSigned;
+ /**
+ * Subject Distinguished Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("subject")
+ private String subject;
+ /**
+ * Issuer Distinguished Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("issuer")
+ private String issuer;
+ /**
+ * Fingerprints
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("fingerprints")
+ private List<Fingerprint> fingerprints = new ArrayList<Fingerprint>();
+ /**
+ * Created Time
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("created_time")
+ private Integer createdTime;
+ /**
+ * Expiration Time
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("expiration_time")
+ private Integer expirationTime;
+ /**
+ * Subject Alternative Names
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("sans")
+ private List<San> sans = new ArrayList<San>();
+ /**
+ * Certificate Serial Number
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("serial_number")
+ private String serialNumber;
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ /**
+ * No args constructor for use in serialization
+ *
+ */
+ public Certificate() {
+ }
+
+ /**
+ *
+ * @param uid
+ * Unique ID.
+ * @param serialNumber
+ * Certificate Serial Number.
+ * @param subject
+ * Subject Distinguished Name.
+ * @param expirationTime
+ * Expiration Time.
+ * @param sans
+ * Subject Alternative Names.
+ * @param createdTime
+ * Created Time.
+ * @param version
+ * Version.
+ * @param issuer
+ * Issuer Distinguished Name.
+ * @param isSelfSigned
+ * Certificate Self-Signed.
+ * @param fingerprints
+ * Fingerprints.
+ */
+ public Certificate(String version, String uid, Boolean isSelfSigned, String subject, String issuer, List<Fingerprint> fingerprints, Integer createdTime, Integer expirationTime, List<San> sans, String serialNumber) {
+ super();
+ this.version = version;
+ this.uid = uid;
+ this.isSelfSigned = isSelfSigned;
+ this.subject = subject;
+ this.issuer = issuer;
+ this.fingerprints = fingerprints;
+ this.createdTime = createdTime;
+ this.expirationTime = expirationTime;
+ this.sans = sans;
+ this.serialNumber = serialNumber;
+ }
+
+ public static Certificate.CertificateBuilderBase builder() {
+ return new Certificate.CertificateBuilder();
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public String getVersion() {
+ return version;
+ }
+
+ /**
+ * Version
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("version")
+ public void setVersion(String version) {
+ this.version = version;
+ }
+
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public String getUid() {
+ return uid;
+ }
+
+ /**
+ * Unique ID
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("uid")
+ public void setUid(String uid) {
+ this.uid = uid;
+ }
+
+ /**
+ * Certificate Self-Signed
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_self_signed")
+ public Boolean getIsSelfSigned() {
+ return isSelfSigned;
+ }
+
+ /**
+ * Certificate Self-Signed
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("is_self_signed")
+ public void setIsSelfSigned(Boolean isSelfSigned) {
+ this.isSelfSigned = isSelfSigned;
+ }
+
+ /**
+ * Subject Distinguished Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("subject")
+ public String getSubject() {
+ return subject;
+ }
+
+ /**
+ * Subject Distinguished Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("subject")
+ public void setSubject(String subject) {
+ this.subject = subject;
+ }
+
+ /**
+ * Issuer Distinguished Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("issuer")
+ public String getIssuer() {
+ return issuer;
+ }
+
+ /**
+ * Issuer Distinguished Name
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("issuer")
+ public void setIssuer(String issuer) {
+ this.issuer = issuer;
+ }
+
+ /**
+ * Fingerprints
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("fingerprints")
+ public List<Fingerprint> getFingerprints() {
+ return fingerprints;
+ }
+
+ /**
+ * Fingerprints
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("fingerprints")
+ public void setFingerprints(List<Fingerprint> fingerprints) {
+ this.fingerprints = fingerprints;
+ }
+
+ /**
+ * Created Time
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("created_time")
+ public Integer getCreatedTime() {
+ return createdTime;
+ }
+
+ /**
+ * Created Time
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("created_time")
+ public void setCreatedTime(Integer createdTime) {
+ this.createdTime = createdTime;
+ }
+
+ /**
+ * Expiration Time
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("expiration_time")
+ public Integer getExpirationTime() {
+ return expirationTime;
+ }
+
+ /**
+ * Expiration Time
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("expiration_time")
+ public void setExpirationTime(Integer expirationTime) {
+ this.expirationTime = expirationTime;
+ }
+
+ /**
+ * Subject Alternative Names
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("sans")
+ public List<San> getSans() {
+ return sans;
+ }
+
+ /**
+ * Subject Alternative Names
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("sans")
+ public void setSans(List<San> sans) {
+ this.sans = sans;
+ }
+
+ /**
+ * Certificate Serial Number
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("serial_number")
+ public String getSerialNumber() {
+ return serialNumber;
+ }
+
+ /**
+ * Certificate Serial Number
+ * <p>
+ *
+ *
+ */
+ @JsonProperty("serial_number")
+ public void setSerialNumber(String serialNumber) {
+ this.serialNumber = serialNumber;
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Certificate.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("version");
+ sb.append('=');
+ sb.append(((this.version == null)?"<null>":this.version));
+ sb.append(',');
+ sb.append("uid");
+ sb.append('=');
+ sb.append(((this.uid == null)?"<null>":this.uid));
+ sb.append(',');
+ sb.append("isSelfSigned");
+ sb.append('=');
+ sb.append(((this.isSelfSigned == null)?"<null>":this.isSelfSigned));
+ sb.append(',');
+ sb.append("subject");
+ sb.append('=');
+ sb.append(((this.subject == null)?"<null>":this.subject));
+ sb.append(',');
+ sb.append("issuer");
+ sb.append('=');
+ sb.append(((this.issuer == null)?"<null>":this.issuer));
+ sb.append(',');
+ sb.append("fingerprints");
+ sb.append('=');
+ sb.append(((this.fingerprints == null)?"<null>":this.fingerprints));
+ sb.append(',');
+ sb.append("createdTime");
+ sb.append('=');
+ sb.append(((this.createdTime == null)?"<null>":this.createdTime));
+ sb.append(',');
+ sb.append("expirationTime");
+ sb.append('=');
+ sb.append(((this.expirationTime == null)?"<null>":this.expirationTime));
+ sb.append(',');
+ sb.append("sans");
+ sb.append('=');
+ sb.append(((this.sans == null)?"<null>":this.sans));
+ sb.append(',');
+ sb.append("serialNumber");
+ sb.append('=');
+ sb.append(((this.serialNumber == null)?"<null>":this.serialNumber));
+ sb.append(',');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.uid == null)? 0 :this.uid.hashCode()));
+ result = ((result* 31)+((this.serialNumber == null)? 0 :this.serialNumber.hashCode()));
+ result = ((result* 31)+((this.subject == null)? 0 :this.subject.hashCode()));
+ result = ((result* 31)+((this.expirationTime == null)? 0 :this.expirationTime.hashCode()));
+ result = ((result* 31)+((this.sans == null)? 0 :this.sans.hashCode()));
+ result = ((result* 31)+((this.createdTime == null)? 0 :this.createdTime.hashCode()));
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ result = ((result* 31)+((this.version == null)? 0 :this.version.hashCode()));
+ result = ((result* 31)+((this.issuer == null)? 0 :this.issuer.hashCode()));
+ result = ((result* 31)+((this.isSelfSigned == null)? 0 :this.isSelfSigned.hashCode()));
+ result = ((result* 31)+((this.fingerprints == null)? 0 :this.fingerprints.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Certificate) == false) {
+ return false;
+ }
+ Certificate rhs = ((Certificate) other);
+ return ((((((((((((this.uid == rhs.uid)||((this.uid!= null)&&this.uid.equals(rhs.uid)))&&((this.serialNumber == rhs.serialNumber)||((this.serialNumber!= null)&&this.serialNumber.equals(rhs.serialNumber))))&&((this.subject == rhs.subject)||((this.subject!= null)&&this.subject.equals(rhs.subject))))&&((this.expirationTime == rhs.expirationTime)||((this.expirationTime!= null)&&this.expirationTime.equals(rhs.expirationTime))))&&((this.sans == rhs.sans)||((this.sans!= null)&&this.sans [...]
+ }
+
+ public static class CertificateBuilder
+ extends Certificate.CertificateBuilderBase<Certificate>
+ {
+
+
+ public CertificateBuilder() {
+ super();
+ }
+
+ public CertificateBuilder(String version, String uid, Boolean isSelfSigned, String subject, String issuer, List<Fingerprint> fingerprints, Integer createdTime, Integer expirationTime, List<San> sans, String serialNumber) {
+ super(version, uid, isSelfSigned, subject, issuer, fingerprints, createdTime, expirationTime, sans, serialNumber);
+ }
+
+ }
+
+ public static abstract class CertificateBuilderBase<T extends Certificate >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public CertificateBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Certificate.CertificateBuilder.class)) {
+ this.instance = ((T) new Certificate());
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ public CertificateBuilderBase(String version, String uid, Boolean isSelfSigned, String subject, String issuer, List<Fingerprint> fingerprints, Integer createdTime, Integer expirationTime, List<San> sans, String serialNumber) {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Certificate.CertificateBuilder.class)) {
+ this.instance = ((T) new Certificate(version, uid, isSelfSigned, subject, issuer, fingerprints, createdTime, expirationTime, sans, serialNumber));
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Certificate.CertificateBuilderBase withVersion(String version) {
+ ((Certificate) this.instance).version = version;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withUid(String uid) {
+ ((Certificate) this.instance).uid = uid;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withIsSelfSigned(Boolean isSelfSigned) {
+ ((Certificate) this.instance).isSelfSigned = isSelfSigned;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withSubject(String subject) {
+ ((Certificate) this.instance).subject = subject;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withIssuer(String issuer) {
+ ((Certificate) this.instance).issuer = issuer;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withFingerprints(List<Fingerprint> fingerprints) {
+ ((Certificate) this.instance).fingerprints = fingerprints;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withCreatedTime(Integer createdTime) {
+ ((Certificate) this.instance).createdTime = createdTime;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withExpirationTime(Integer expirationTime) {
+ ((Certificate) this.instance).expirationTime = expirationTime;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withSans(List<San> sans) {
+ ((Certificate) this.instance).sans = sans;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withSerialNumber(String serialNumber) {
+ ((Certificate) this.instance).serialNumber = serialNumber;
+ return this;
+ }
+
+ public Certificate.CertificateBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Certificate) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Check.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Check.java
new file mode 100644
index 000000000000..e469a9edceeb
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/Check.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class Check {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static Check.CheckBuilderBase builder() {
+ return new Check.CheckBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(Check.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof Check) == false) {
+ return false;
+ }
+ Check rhs = ((Check) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class CheckBuilder
+ extends Check.CheckBuilderBase<Check>
+ {
+
+
+ public CheckBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class CheckBuilderBase<T extends Check >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public CheckBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(Check.CheckBuilder.class)) {
+ this.instance = ((T) new Check());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public Check.CheckBuilderBase withAdditionalProperty(String name, Object value) {
+ ((Check) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CisControl.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CisControl.java
new file mode 100644
index 000000000000..aa12b04faacd
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CisControl.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class CisControl {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static CisControl.CisControlBuilderBase builder() {
+ return new CisControl.CisControlBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(CisControl.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof CisControl) == false) {
+ return false;
+ }
+ CisControl rhs = ((CisControl) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class CisControlBuilder
+ extends CisControl.CisControlBuilderBase<CisControl>
+ {
+
+
+ public CisControlBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class CisControlBuilderBase<T extends CisControl >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public CisControlBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(CisControl.CisControlBuilder.class)) {
+ this.instance = ((T) new CisControl());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public CisControl.CisControlBuilderBase withAdditionalProperty(String name, Object value) {
+ ((CisControl) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
diff --git a/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CisCsc.java b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CisCsc.java
new file mode 100644
index 000000000000..d9d39f74b9d0
--- /dev/null
+++ b/components/camel-ocsf/src/generated/java/org/apache/camel/dataformat/ocsf/model/CisCsc.java
@@ -0,0 +1,109 @@
+
+package org.apache.camel.dataformat.ocsf.model;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import javax.annotation.processing.Generated;
+import com.fasterxml.jackson.annotation.JsonAnyGetter;
+import com.fasterxml.jackson.annotation.JsonAnySetter;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;
+
+@JsonInclude(JsonInclude.Include.NON_NULL)
+@JsonPropertyOrder({
+
+})
+@Generated("jsonschema2pojo")
+public class CisCsc {
+
+ @JsonIgnore
+ private Map<String, Object> additionalProperties = new LinkedHashMap<String, Object>();
+
+ public static CisCsc.CisCscBuilderBase builder() {
+ return new CisCsc.CisCscBuilder();
+ }
+
+ @JsonAnyGetter
+ public Map<String, Object> getAdditionalProperties() {
+ return this.additionalProperties;
+ }
+
+ @JsonAnySetter
+ public void setAdditionalProperty(String name, Object value) {
+ this.additionalProperties.put(name, value);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append(CisCsc.class.getName()).append('@').append(Integer.toHexString(System.identityHashCode(this))).append('[');
+ sb.append("additionalProperties");
+ sb.append('=');
+ sb.append(((this.additionalProperties == null)?"<null>":this.additionalProperties));
+ sb.append(',');
+ if (sb.charAt((sb.length()- 1)) == ',') {
+ sb.setCharAt((sb.length()- 1), ']');
+ } else {
+ sb.append(']');
+ }
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = 1;
+ result = ((result* 31)+((this.additionalProperties == null)? 0 :this.additionalProperties.hashCode()));
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object other) {
+ if (other == this) {
+ return true;
+ }
+ if ((other instanceof CisCsc) == false) {
+ return false;
+ }
+ CisCsc rhs = ((CisCsc) other);
+ return ((this.additionalProperties == rhs.additionalProperties)||((this.additionalProperties!= null)&&this.additionalProperties.equals(rhs.additionalProperties)));
+ }
+
+ public static class CisCscBuilder
+ extends CisCsc.CisCscBuilderBase<CisCsc>
+ {
+
+
+ public CisCscBuilder() {
+ super();
+ }
+
+ }
+
+ public static abstract class CisCscBuilderBase<T extends CisCsc >{
+
+ protected T instance;
+
+ @SuppressWarnings("unchecked")
+ public CisCscBuilderBase() {
+ // Skip initialization when called from subclass
+ if (this.getClass().equals(CisCsc.CisCscBuilder.class)) {
+ this.instance = ((T) new CisCsc());
+ }
+ }
+
+ public T build() {
+ T result;
+ result = this.instance;
+ this.instance = null;
+ return result;
+ }
+
+ public CisCsc.CisCscBuilderBase withAdditionalProperty(String name, Object value) {
+ ((CisCsc) this.instance).additionalProperties.put(name, value);
+ return this;
+ }
+
+ }
+
+}
... 84452 lines suppressed ...