From 8503a0a58fa28835afc1cf597daacfe9e76ac94f Mon Sep 17 00:00:00 2001 From: Greg Fitzgerald Date: Sun, 4 Mar 2018 09:21:45 -0700 Subject: [PATCH] Refactor --- src/log.rs | 15 ++++++--------- src/logger.rs | 6 ++++-- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/log.rs b/src/log.rs index 1050b22786..cc5881b2b1 100644 --- a/src/log.rs +++ b/src/log.rs @@ -16,7 +16,7 @@ use generic_array::GenericArray; use generic_array::typenum::U32; use serde::Serialize; -use event::*; +use event::{get_signature, verify_event, Event}; use sha2::{Digest, Sha256}; use rayon::prelude::*; use std::iter; @@ -56,13 +56,6 @@ pub fn extend_and_hash(id: &Sha256Hash, val: &[u8]) -> Sha256Hash { hash(&hash_data) } -pub fn hash_event(id: &Sha256Hash, event: &Event) -> Sha256Hash { - match get_signature(event) { - None => *id, - Some(sig) => extend_and_hash(id, &sig), - } -} - /// Creates the hash 'num_hashes' after start_hash, plus an additional hash for any event data. pub fn next_hash( start_hash: &Sha256Hash, @@ -73,7 +66,10 @@ pub fn next_hash( for _ in 0..num_hashes { id = hash(&id); } - hash_event(&id, event) + match get_signature(event) { + None => id, + Some(sig) => extend_and_hash(&id, &sig), + } } /// Creates the next Tick Entry 'num_hashes' after 'start_hash'. @@ -163,6 +159,7 @@ pub fn create_ticks( #[cfg(test)] mod tests { use super::*; + use event::{generate_keypair, get_pubkey, sign_claim_data, sign_transaction_data}; #[test] fn test_event_verify() { diff --git a/src/logger.rs b/src/logger.rs index 37abf76f98..627ce75e6d 100644 --- a/src/logger.rs +++ b/src/logger.rs @@ -8,7 +8,7 @@ use std::collections::HashSet; use std::sync::mpsc::{Receiver, SyncSender, TryRecvError}; use std::time::{Duration, Instant}; -use log::{hash_event, Entry, Sha256Hash}; +use log::{extend_and_hash, Entry, Sha256Hash}; use event::{get_signature, verify_event, Event, Signature}; use serde::Serialize; use std::fmt::Debug; @@ -59,7 +59,9 @@ impl Logger { } pub fn log_event(&mut self, event: Event) -> Result<(), (Entry, ExitReason)> { - self.last_id = hash_event(&self.last_id, &event); + if let Some(sig) = get_signature(&event) { + self.last_id = extend_and_hash(&self.last_id, &sig); + } let entry = Entry { id: self.last_id, num_hashes: self.num_hashes,