Class: Gitlab::EventStore::Event
- Inherits:
-
Object
- Object
- Gitlab::EventStore::Event
- Defined in:
- lib/gitlab/event_store/event.rb
Direct Known Subclasses
Ci::JobArtifactsDeletedEvent, Ci::PipelineCreatedEvent, Ci::PipelineFinishedEvent, Ci::Workloads::WorkloadFinishedEvent, GitlabSubscriptions::RenewedEvent, Groups::GroupDeletedEvent, Groups::GroupTransferedEvent, Members::AcceptedInviteEvent, Members::DestroyedEvent, Members::MembersAddedEvent, Members::UpdatedEvent, MergeRequests::ApprovedEvent, MergeRequests::AutoMerge::TitleDescriptionUpdateEvent, MergeRequests::DiscussionsResolvedEvent, MergeRequests::DraftNotePublishedEvent, MergeRequests::DraftStateChangeEvent, MergeRequests::MergeRequestPreparedEvent, MergeRequests::MergeableEvent, MergeRequests::OverrideRequestedChangesStateEvent, MergeRequests::UnblockedStateEvent, Milestones::MilestoneUpdatedEvent, Namespaces::Groups::GroupArchivedEvent, PackageMetadata::IngestedAdvisoryEvent, Packages::PackageCreatedEvent, Pages::Domains::PagesDomainCreatedEvent, Pages::Domains::PagesDomainDeletedEvent, Pages::Domains::PagesDomainUpdatedEvent, ProjectAuthorizations::AuthorizationsAddedEvent, ProjectAuthorizations::AuthorizationsChangedEvent, ProjectAuthorizations::AuthorizationsRemovedEvent, Projects::ProjectArchivedEvent, Projects::ProjectCreatedEvent, Projects::ProjectDeletedEvent, Projects::ProjectFeaturesChangedEvent, Projects::ProjectPathChangedEvent, Projects::ProjectTransferedEvent, Projects::ProjectVisibilityChangedEvent, Projects::ReleasePublishedEvent, Repositories::DefaultBranchChangedEvent, Repositories::KeepAroundRefsCreatedEvent, Repositories::ProtectedBranchCreatedEvent, Repositories::ProtectedBranchDestroyedEvent, Users::ActivityEvent, WorkItems::BulkUpdatedEvent, WorkItems::WorkItemCreatedEvent, WorkItems::WorkItemDeletedEvent, WorkItems::WorkItemUpdatedEvent
Class Attribute Summary collapse
-
.json_schema_valid ⇒ Object
Returns the value of attribute json_schema_valid.
Instance Attribute Summary collapse
-
#data ⇒ Object
readonly
Returns the value of attribute data.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(data:) ⇒ Event
constructor
A new instance of Event.
- #schema ⇒ Object
Constructor Details
#initialize(data:) ⇒ Event
Returns a new instance of Event.
36 37 38 39 40 |
# File 'lib/gitlab/event_store/event.rb', line 36 def initialize(data:) validate_schema! validate_data!(data) @data = data.with_indifferent_access end |
Class Attribute Details
.json_schema_valid ⇒ Object
Returns the value of attribute json_schema_valid.
33 34 35 |
# File 'lib/gitlab/event_store/event.rb', line 33 def json_schema_valid @json_schema_valid end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
30 31 32 |
# File 'lib/gitlab/event_store/event.rb', line 30 def data @data end |
Class Method Details
.json_schema ⇒ Object
72 73 74 |
# File 'lib/gitlab/event_store/event.rb', line 72 def self.json_schema @json_schema ||= Gitlab::Json.parse(File.read(File.join(__dir__, 'json_schema_draft07.json'))) end |
Instance Method Details
#schema ⇒ Object
42 43 44 |
# File 'lib/gitlab/event_store/event.rb', line 42 def schema raise NotImplementedError, 'must specify schema to validate the event' end |