BlogSharp.Core.Impl.Services.FileSystem.Castle.CastleFileInterceptor.Intercept C# (CSharp) Method

Intercept() public method

public Intercept ( IInvocation invocation ) : void
invocation IInvocation
return void
        public virtual void Intercept(IInvocation invocation)
        {
            if (invocation.Method.Name.Equals("get_Parent"))
            {
                IDirectory dir = invocation.InvocationTarget as IDirectory;
                string current = dir.Path;
                string parent = new DirectoryInfo(current).Parent.FullName;
                if (parentDirectory == null)
                {
                    parentDirectory = fileService.GetDirectory(parent);
                }

                invocation.ReturnValue = parentDirectory;
            }
            else
                invocation.Proceed();
        }