resource

ExtractableManagedResource

trait ExtractableManagedResource[+A] extends ManagedResource[A]

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. There are two mechanisms for extracting resources. One which returns an optional value, where None is returned if any error occurs during extraction. The other returns an Either where the left side contains any error that occured during extraction and the right side contains the extracted value.

Linear Supertypes
ManagedResource[A], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ExtractableManagedResource
  2. ManagedResource
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def acquireAndGet[B](f: (A) ⇒ 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
    ManagedResource
  2. abstract def acquireFor[B](f: (A) ⇒ 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
    ManagedResource
  3. abstract def and[B](that: ManagedResource[B]): ManagedResource[(A, 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

    returns

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

    Definition Classes
    ManagedResource
  4. abstract def either: Either[Seq[Throwable], A]

    This method is used to extract the resource being managed.

    This method is used to extract the resource being managed.

    This allows you to pull information out of the Managed resource, as such, the Resource will not be "available" after this method call.

  5. abstract def foreach(f: (A) ⇒ 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
    ManagedResource
  6. abstract def map[B](f: (A) ⇒ 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
    ManagedResource
  7. abstract def now: A @scala.util.continuations.cpsParam[Unit,Unit]

    Accesses this resource inside a suspendable CPS block

    Accesses this resource inside a suspendable CPS block

    Definition Classes
    ManagedResource
  8. abstract def opt: Option[A]

    This method is used to extract the resource being managed.

    This method is used to extract the resource being managed.

    This allows you to pull information out of the Managed resource, as such, the Resource will not be "available" after this method call.

  9. abstract def reflect[B]: A @scala.util.continuations.cpsParam[Either[List[Throwable],B],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
    ManagedResource
  10. abstract def toTraversable[B](implicit ev: <:<[A, 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
    ManagedResource
  11. abstract def !: A @scala.util.continuations.cpsParam[Unit,Unit]

    Accesses this resource inside a suspendable CPS block

    Accesses this resource inside a suspendable CPS block

    Definition Classes
    ManagedResource
    Annotations
    @deprecated
    Deprecated

    (Since version 1.3) Use now instead of !

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

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

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

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. abstract def flatMap[B](f: (A) ⇒ B): ManagedResource[B]

    [use case]

    [use case]
    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
    Full Signature

    abstract def flatMap[B](f: (A) ⇒ ManagedResource[B]): ManagedResource[B]

  10. abstract def flatMap[B](f: (A) ⇒ Traversable[B]): Traversable[B]

    [use case]

    [use case]
    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
    Full Signature

    abstract def flatMap[B](f: (A) ⇒ ManagedResource[B]): ManagedResource[B]

  11. abstract def flatMap[B](f: (A) ⇒ ManagedResource[B]): ManagedResource[B]

    [use case]

    [use case]
    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
    Full Signature

    abstract def flatMap[B](f: (A) ⇒ ManagedResource[B]): ManagedResource[B]

  12. final def getClass(): Class[_]

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

    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean

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

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

    Definition Classes
    AnyRef
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  19. def toString(): String

    Definition Classes
    AnyRef → Any
  20. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ManagedResource[A]

Inherited from AnyRef

Inherited from Any

Ungrouped