All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.java.truevfs.ext.pacemaker.PaceModel.scala Maven / Gradle / Ivy

Go to download

Constrains the number of concurrently mounted archive file systems in order to save some heap space. This module provides a JMX interface for monitoring and management. Add the JAR artifact of this module to the run time class path to make its services available for service location in the client API modules.

There is a newer version: 0.14.0
Show newest version
/*
 * Copyright (C) 2005-2015 Schlichtherle IT Services.
 * All rights reserved. Use is subject to license terms.
 */
package net.java.truevfs.ext.pacemaker

import net.java.truevfs.comp.inst.InstrumentingModel
import net.java.truevfs.kernel.spec.FsModel

/** A pace model.
  *
  * @author Christian Schlichtherle
  */
private final class PaceModel(mediator: PaceMediator, model: FsModel)
  extends InstrumentingModel(mediator, model) {

  private val cachedMountPoints = mediator.cachedMountPoints

  override def setMounted(isMounted: Boolean) {
    val wasMounted = model.isMounted
    model setMounted isMounted
    if (wasMounted) {
      if (!isMounted)
        cachedMountPoints remove getMountPoint
    } else {
      if (isMounted)
        cachedMountPoints add getMountPoint
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy