resource

AbstractManagedResource

abstract class AbstractManagedResource[R] extends ManagedResource[R] with ManagedResourceOperations[R]

Abstract class implementing most of the managed resource features in terms of an open and close method. This is a refinement over ManagedResourceOperations as it defines the acquireForMethod generically using the scala.util.control.Exception API.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. AbstractManagedResource
  2. ManagedResourceOperations
  3. ManagedResource
  4. AnyRef
  5. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AbstractManagedResource()

Abstract Value Members

  1. abstract def open: R

    Opens a given resource, returning a handle to execute against during the "session" of the resource being open.

    Opens a given resource, returning a handle to execute against during the "session" of the resource being open.

    Attributes
    protected
  2. abstract def unsafeClose(handle: R, errors: Option[Throwable]): Unit

    Closes a resource using the handle.

    Closes a resource using the handle. This method will throw any exceptions normally occuring during the close of a resource.

    Attributes
    protected

Concrete Value Members

  1. def !: R @scala.util.continuations.cpsParam[Unit,Unit]

    Accesses this resource inside a suspendable CPS block

    Accesses this resource inside a suspendable CPS block

    Definition Classes
    ManagedResourceOperationsManagedResource
  2. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  3. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  4. final def ##(): Int

    Definition Classes
    AnyRef → Any
  5. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  6. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  7. def acquireAndGet[B](f: (R) ⇒ B): B

    Acquires the resource for the Duration of a given function, The resource will automatically be opened and closed.

    Acquires the resource for the Duration of a given function, The resource will automatically be opened and closed. The result will be returned immediately, except in the case of an error. Upon error, the resource will be closed, and then the originating exception will be thrown.

    Note: This method will throw the last exception encountered by the managed resource, whatever this happens to be.

    f

    A function to execute against the handle returned by the resource

    returns

    The result of the passed in function

    Definition Classes
    ManagedResourceOperationsManagedResource
  8. def acquireFor[B](f: (R) ⇒ B): Either[List[Throwable], B]

    Aquires the resource for the Duration of a given function, The resource will automatically be opened and closed.

    Aquires the resource for the Duration of a given function, The resource will automatically be opened and closed. The result will be returned immediately in an Either container. This container will hold all errors, if any occurred during execution, or the resulting value.

    f

    A function to execute against the raw resource.

    returns

    The result of the function (right) or the list of exceptions seen during the processing of the resource (left).

    Definition Classes
    AbstractManagedResourceManagedResource
  9. def and[B](that: ManagedResource[B]): ManagedResource[(R, B)]

    Creates a new resource that is the aggregation of this resource and another.

    Creates a new resource that is the aggregation of this resource and another.

    that

    The other resource

    @return A resource that is a tupled combination of this and that.

    Definition Classes
    ManagedResourceOperationsManagedResource
  10. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  11. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  12. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  15. abstract def flatMap[B](f: (R) ⇒ B): ManagedResource[B]

    [use case] This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    [use case]

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    f

    The transformation function to apply against the raw resource.

    returns

    A new ManagedResource with the translated type or some other type if an appropriate translator was found.

    Definition Classes
    ManagedResource
  16. abstract def flatMap[B](f: (R) ⇒ Traversable[B]): Traversable[B]

    [use case] This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    [use case]

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    f

    The transformation function to apply against the raw resource.

    returns

    A new ManagedResource with the translated type or some other type if an appropriate translator was found.

    Definition Classes
    ManagedResource
  17. abstract def flatMap[B](f: (R) ⇒ ManagedResource[B]): ManagedResource[B]

    [use case] This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    [use case]

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    f

    The transformation function to apply against the raw resource.

    returns

    A new ManagedResource with the translated type or some other type if an appropriate translator was found.

    Definition Classes
    ManagedResource
  18. def flatMap[B](f: (R) ⇒ ManagedResource[B]): ManagedResource[B]

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    f

    The transformation function to apply against the raw resource.

    returns

    A new ManagedResource with the translated type or some other type if an appropriate translator was found.

    Definition Classes
    ManagedResourceOperationsManagedResource
  19. def foreach(f: (R) ⇒ Unit): Unit

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning.

    This method is used to immediately perform operations on a resource while it is open, ensuring the resource is closed before returning. Note: This method *will* open and close the resource, performing the body of the method immediately.

    f

    The function to apply against the raw resource.

    Definition Classes
    ManagedResourceOperationsManagedResource
  20. final def getClass(): java.lang.Class[_]

    Definition Classes
    AnyRef → Any
  21. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  22. def isFatal(t: Throwable): Boolean

    This checks to see if an exception should not be caught, under any circumstances.

    This checks to see if an exception should not be caught, under any circumstances. These usually denote fatal program flaws.

    Attributes
    protected
  23. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  24. def isRethrown(t: Throwable): Boolean

    These are a list of exceptions we *have* to rethrow, regardless of a users desires to ensure that thread/return behavior in scala is accurate.

    These are a list of exceptions we *have* to rethrow, regardless of a users desires to ensure that thread/return behavior in scala is accurate.

    Attributes
    protected
  25. def map[B](f: (R) ⇒ B): ExtractableManagedResource[B]

    This method is used to perform operations on a resource while the resource is open.

    This method is used to perform operations on a resource while the resource is open.

    f

    The transformation function to apply against the raw resource.

    returns

    A new ManagedResource with the translated type or some other type if an appropriate translator was found.

    Definition Classes
    ManagedResourceOperationsManagedResource
  26. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  29. def now: R @scala.util.continuations.cpsParam[Unit,Unit]

    Accesses this resource inside a suspendable CPS block

    Accesses this resource inside a suspendable CPS block

    Definition Classes
    ManagedResourceOperationsManagedResource
  30. def reflect[B]: R @util.continuations.package.cps[Either[List[Throwable],B]]

    Reflects the resource for use in a continuation.

    Reflects the resource for use in a continuation. This method is designed to be used inside a scala.resource.withResources call.

    For example:

    import scala.resource._
    withResources {
      val output = managed(new FileInputStream("output.txt")).reflect[Unit]
      for(i <- 1 to 10) {
        val input = managed(new FileInputStream("sample"+i+".txt")).reflect[Unit]
        input lines foreach (output writeLine _)
      }
    }
    

    returns

    The raw resource, with appropriate continuation-context annotations.

    Definition Classes
    ManagedResourceOperationsManagedResource
  31. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  32. def toString(): String

    Definition Classes
    AnyRef → Any
  33. def toTraversable[B](implicit ev: <:<[R, TraversableOnce[B]]): Traversable[B]

    This method creates a Traversable in which all performed methods are done within the context of an "open" resource.

    This method creates a Traversable in which all performed methods are done within the context of an "open" resource. Note: Every iteration will attempt to open and close the resource!

    returns

    A Traversable of elements of type B.

    Definition Classes
    ManagedResourceOperationsManagedResource
  34. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  35. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  36. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from ManagedResourceOperations[R]

Inherited from ManagedResource[R]

Inherited from AnyRef

Inherited from Any