Fuse Configuration

The class accepts one or more of the following configuration settings. Configuration settings are similar in functionality to properties, but they are rarely used. In order to avoid "polluting" the property namespace of the class, access to these internal properties is provided through the Config method.

CBFUSE Configuration Settings

AsyncMountingPointNotifications:   Whether system broadcasts for virtual drive mounting and unmounting are sent asynchronously.

This Windows-only setting specifies whether the WM_DEVICECHANGE broadcast is sent asynchronously (true) or synchronously (false) when the virtual drive is mounted or unmounted using the Mount and Unmount methods respectively.

By default, this setting is enabled, and the broadcast is sent asynchronously. This is typically sufficient, but applications may disable this setting during unmounting if they find that Windows Explorer is still presenting virtual drives as available after they've been deleted (which may occur if the application exits immediately after unmounting a virtual drive).

On Linux, this setting is not used.

Timeout:   Specifies how many milliseconds the driver will wait for events to execute before cancelling the underlying OS requests. (Windows-only).

Since the FUSE class's events are typically tied directly to requests from the OS itself, it's critical that event handlers complete quickly in order to prevent the system from being blocked. To help prevent such blocking, the CBFS FUSE system driver can enforce request timeouts on a per-virtual-drive basis.

When timeout enforcement is in effect, and an event executes long enough for its timeout to expire, the driver cancels the underlying request by reporting an error to the OS. The tardy event still runs to completion, but any results it returns once finished are ignored since the underlying request has already been handled.

Applications should always strive to ensure that all event handlers complete quickly, even if request timeouts are disabled. Don't perform time-consuming work, especially network operations, within event handlers; offload such work to background threads.

Valid values are 0, which disables event timeouts, and values greater than or equal to 3000. (Passing a non-zero value less than 3000 will cause the Config method to fail with an ERROR_IMPLEMENTATION_LIMIT (1292, 0x50C) error code.)

Base Configuration Settings

BuildInfo:   Information about the product's build.

When queried, this setting will return a string containing information about the product's build.

LicenseInfo:   Information about the current license.

When queried, this setting will return a string containing information about the license this instance of a class is using. It will return the following information:

  • Product: The product the license is for.
  • Product Key: The key the license was generated from.
  • License Source: Where the license was found (e.g. RuntimeLicense, License File).
  • License Type: The type of license installed (e.g. Royalty Free, Single Server).

Copyright (c) 2022 Callback Technologies, Inc. - All rights reserved.
CBFS FUSE 2020 Java Edition - Version 20.0 [Build 8348]