Add store path member for retrieve hook

This commit is contained in:
Matthias Beyer 2016-07-16 15:59:53 +02:00
parent f4a71831c9
commit 0e765cd5b6
1 changed files with 11 additions and 6 deletions

View File

@ -1,3 +1,5 @@
use std::path::PathBuf;
use toml::Value; use toml::Value;
use libimagstore::storeid::StoreId; use libimagstore::storeid::StoreId;
@ -8,15 +10,18 @@ use libimagstore::hook::accessor::{HookDataAccessor, HookDataAccessorProvider};
use libimagstore::hook::accessor::StoreIdAccessor; use libimagstore::hook::accessor::StoreIdAccessor;
#[derive(Debug)] #[derive(Debug)]
pub struct RetrieveHook { pub struct RetrieveHook<'a> {
storepath: &'a PathBuf,
position: HookPosition, position: HookPosition,
config: Option<Value>, config: Option<Value>,
} }
impl RetrieveHook { impl<'a> RetrieveHook<'a> {
pub fn new(p: HookPosition) -> RetrieveHook { pub fn new(storepath: &'a PathBuf, p: HookPosition) -> RetrieveHook<'a> {
RetrieveHook { RetrieveHook {
storepath: storepath,
position: p, position: p,
config: None, config: None,
} }
@ -24,7 +29,7 @@ impl RetrieveHook {
} }
impl Hook for RetrieveHook { impl<'a> Hook for RetrieveHook<'a> {
fn name(&self) -> &'static str { fn name(&self) -> &'static str {
"stdhook_git_retrieve" "stdhook_git_retrieve"
@ -36,14 +41,14 @@ impl Hook for RetrieveHook {
} }
impl HookDataAccessorProvider for RetrieveHook { impl<'a> HookDataAccessorProvider for RetrieveHook<'a> {
fn accessor(&self) -> HookDataAccessor { fn accessor(&self) -> HookDataAccessor {
HookDataAccessor::StoreIdAccess(self) HookDataAccessor::StoreIdAccess(self)
} }
} }
impl StoreIdAccessor for RetrieveHook { impl<'a> StoreIdAccessor for RetrieveHook<'a> {
fn access(&self, id: &StoreId) -> HookResult<()> { fn access(&self, id: &StoreId) -> HookResult<()> {
debug!("[GIT RETRIEVE HOOK]: {:?}", id); debug!("[GIT RETRIEVE HOOK]: {:?}", id);