Class: EventStore::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/event_store/client.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(aggregate_id, aggregate_type = EventStore.table_name) ⇒ Client

Returns a new instance of Client.



12
13
14
# File 'lib/event_store/client.rb', line 12

def initialize( aggregate_id, aggregate_type = EventStore.table_name)
  @aggregate = Aggregate.new(aggregate_id, aggregate_type)
end

Class Method Details

.countObject



4
5
6
# File 'lib/event_store/client.rb', line 4

def self.count
  Aggregate.count
end

.ids(offset, limit) ⇒ Object



8
9
10
# File 'lib/event_store/client.rb', line 8

def self.ids(offset, limit)
  Aggregate.ids(offset, limit)
end

Instance Method Details

#append(event_data) {|event_data| ... } ⇒ Object

Yields:

  • (event_data)


28
29
30
31
32
# File 'lib/event_store/client.rb', line 28

def append event_data
  event_appender.append(event_data)
  yield(event_data) if block_given?
  nil
end

#countObject



70
71
72
# File 'lib/event_store/client.rb', line 70

def count
  event_stream.length
end

#destroy!Object



74
75
76
77
# File 'lib/event_store/client.rb', line 74

def destroy!
  @aggregate.delete_events!
  @aggregate.delete_snapshot!
end

#event_streamObject



38
39
40
# File 'lib/event_store/client.rb', line 38

def event_stream
  translate_events raw_event_stream
end

#event_stream_between(start_time, end_time, fully_qualified_names = []) ⇒ Object



46
47
48
# File 'lib/event_store/client.rb', line 46

def event_stream_between(start_time, end_time, fully_qualified_names = [])
  translate_events @aggregate.event_stream_between(start_time, end_time, fully_qualified_names)
end

#event_stream_from(version_number, max = nil) ⇒ Object



42
43
44
# File 'lib/event_store/client.rb', line 42

def event_stream_from version_number, max=nil
  translate_events @aggregate.events_from(version_number, max)
end

#event_tableObject



24
25
26
# File 'lib/event_store/client.rb', line 24

def event_table
  @aggregate.event_table
end

#idObject



16
17
18
# File 'lib/event_store/client.rb', line 16

def id
  @aggregate.id
end

#peekObject



50
51
52
# File 'lib/event_store/client.rb', line 50

def peek
  translate_event @aggregate.last_event
end

#raw_event_streamObject



58
59
60
# File 'lib/event_store/client.rb', line 58

def raw_event_stream
  @aggregate.event_stream
end

#raw_event_stream_from(version_number, max = nil) ⇒ Object



62
63
64
# File 'lib/event_store/client.rb', line 62

def raw_event_stream_from version_number, max=nil
  @aggregate.events_from(version_number, max)
end

#raw_snapshotObject



54
55
56
# File 'lib/event_store/client.rb', line 54

def raw_snapshot
  @aggregate.snapshot
end

#rebuild_snapshot!Object



79
80
81
82
# File 'lib/event_store/client.rb', line 79

def rebuild_snapshot!
  @aggregate.delete_snapshot!
  @aggregate.rebuild_snapshot!
end

#snapshotObject



34
35
36
# File 'lib/event_store/client.rb', line 34

def snapshot
  raw_snapshot
end

#typeObject



20
21
22
# File 'lib/event_store/client.rb', line 20

def type
  @aggregate.type
end

#versionObject



66
67
68
# File 'lib/event_store/client.rb', line 66

def version
  @aggregate.version
end