diff options
Diffstat (limited to 'rpc/api.go')
-rw-r--r-- | rpc/api.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/rpc/api.go b/rpc/api.go index 792498547..d00b86ac0 100644 --- a/rpc/api.go +++ b/rpc/api.go @@ -862,3 +862,36 @@ func toFilterOptions(options *FilterOptions) core.FilterOptions { return opts } + +type whisperFilter struct { + messages []xeth.WhisperMessage + timeout time.Time + id int +} + +func (w *whisperFilter) add(msgs ...xeth.WhisperMessage) { + w.messages = append(w.messages, msgs...) +} +func (w *whisperFilter) get() []xeth.WhisperMessage { + w.timeout = time.Now() + tmp := w.messages + w.messages = nil + return tmp +} + +type logFilter struct { + logs state.Logs + timeout time.Time + id int +} + +func (l *logFilter) add(logs ...state.Log) { + l.logs = append(l.logs, logs...) +} + +func (l *logFilter) get() state.Logs { + l.timeout = time.Now() + tmp := l.logs + l.logs = nil + return tmp +} |