net.java.truevfs.comp.inst.InstrumentingManager Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of truevfs-comp-inst Show documentation
Show all versions of truevfs-comp-inst Show documentation
Provides basic functionality for instrumenting the TrueVFS Kernel.
/*
* Copyright (C) 2005-2015 Schlichtherle IT Services.
* All rights reserved. Use is subject to license terms.
*/
package net.java.truevfs.comp.inst;
import java.util.Objects;
import javax.annotation.concurrent.ThreadSafe;
import net.java.truevfs.kernel.spec.*;
/**
* @param the type of the mediator.
* @author Christian Schlichtherle
*/
@ThreadSafe
public class InstrumentingManager>
extends FsDecoratingManager {
protected final M mediator;
public InstrumentingManager(
final M mediator,
final FsManager manager) {
super(manager);
this.mediator = Objects.requireNonNull(mediator);
}
@Override
public FsController controller(
FsCompositeDriver driver,
FsMountPoint mountPoint) {
return mediator.instrument(this,
manager.controller(
mediator.instrument(this, driver),
mountPoint));
}
}