Abstract class implementing most of the managed resource features in terms of an open and close method.
ConstantManagedResource encapsulates a constant value with no associated resource management.
This is the default implementation of a ManagedResource that makes use of the Resource type trait.
The type used to hold errors and results in the same return value.
This trait represents a resource that has been modified (or will be modified) inside an ARM block in such a way that the resulting value can be extracted outside of the "ManagedResource" monad.
This is a helper class to work around Either
pattern matching issues.
Trait holding type class implementations for Resource.
This class encapsulates a method of ensuring a resource is opened/closed during critical stages of its lifecycle.
This class implements all ManagedResource methods except acquireFor.
This trait provides a means to ensure traversable access to items inside a resource, while ensuring that the resource is opened/closed appropriately before/after the traversal.
This is a type trait for types that are considered 'resources'.
Companion object to the Resource type trait.
Convenience methods for common java IO operations.
Combined two resources such that they are both opened/closed together.
Combined two resources such that they are both opened/closed together. The first resource is opened before the second resource and closed after the second resource, however the resulting ManagedResource acts like both are opened/closed together.
A ManagedResource of a tuple containing the initial two resources.
Use this to encapsulate a constant value inside a ManagedResource with no resource management.
Takes a sequence of ManagedResource objects and traits them as a ManagedResource of a Sequence of Objects.
Takes a sequence of ManagedResource objects and traits them as a ManagedResource of a Sequence of Objects.
This is useful for dealing with many resources within the same scope.
A collection of ManageResources of the same type
A ManagedResoruce of a collection of types
Constructs a managed resource using function objects for each abstract method.
Constructs a managed resource using function objects for each abstract method.
The by-name parameter that will open the resource.
A closure that will close the resource.
A list of exception classes that cannot be ignored to close a resource.
Creates a ManagedResource for any type with a Resource type class implementation.
Creates a ManagedResource for any type with a Resource type class implementation. This includes all java.io.Closeable subclasses, and any types that have a close or dispose method. You can also provide your own resource type class implementations in your own scope.
Creates a ManagedResource shared by all users for any type with a Resource type class implementation.
Creates a ManagedResource shared by all users for any type with a Resource type class implementation.
There is only one instance of the resource at the same time for all the users. The instance will be closed once no user is still using it.
Package related methods for managed resources.