Object/Class

com.snowplowanalytics.manifest.core

ProcessingManifest

Related Docs: class ProcessingManifest | package core

Permalink

object ProcessingManifest

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ProcessingManifest
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type ItemId = String

    Permalink

    Id representation, such as S3 URI

  2. case class LockHandler[F[_]](getId: () ⇒ F[UUID], acquire: (Application, Item, Option[Payload]) ⇒ F[(UUID, Instant)], release: PutFunction[F, Option[Payload]], fail: PutFunction[F, Throwable]) extends Product with Serializable

    Permalink

    Class holding all methods necessary to interact with manifest during processing Function can be overwritten to mock IO-interactions All application using LockHandler are supposed to be "processing applications", not "operational"

  3. type ManifestAction[F[_]] = MonadError[F, ManifestError]

    Permalink

    Core manifest-interaction type.

    Core manifest-interaction type. It needs to have an ability to express error in terms of ManifestError ADT without throwing exceptions

  4. type ManifestMap = Map[ItemId, Item]

    Permalink

    All items, grouped by their id

  5. type Process = (Item) ⇒ Try[Option[Payload]]

    Permalink

    Application's main side-effecting function, processing manifest's item

  6. type ProcessNew = () ⇒ Try[Option[Payload]]

    Permalink

    Lazy function that does not expect existing Item (probably it'll be created due course)

  7. type PutFunction[F[_], A] = (Application, Item, UUID, A) ⇒ F[(UUID, Instant)]

    Permalink

    Wrapper for function that performs put and can add some payload of A

Value Members

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. val Version: String

    Permalink

    Global manifests' version

  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def checkState[F[_]](item: Item, predicate: (Item) ⇒ Boolean)(implicit arg0: ManifestAction[F]): F[Item]

    Permalink

    Version of unprocessed for single retrieved Item

  7. def clone(): AnyRef

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

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

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

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

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

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

    Permalink
    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. def processItemWithHandler[F[_]](lockHandler: LockHandler[F])(app: Application, acquirePayload: Option[Payload], process: Process)(item: Item)(implicit arg0: ManifestAction[F]): F[(UUID, Instant)]

    Permalink

    Workflow surrounding processing an Item.

    Workflow surrounding processing an Item. Lock acquisition and release

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

    Permalink
    Definition Classes
    AnyRef
  19. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  20. def unprocessed[F[_]](itemsAction: F[ManifestMap], application: Application, predicate: (Item) ⇒ Boolean)(implicit arg0: ManifestAction[F]): F[List[Item]]

    Permalink

    Get items that were NOT yet processed by specified application and not in "blocked" or "failed" state

    Get items that were NOT yet processed by specified application and not in "blocked" or "failed" state

    itemsAction

    all items to check

    predicate

    filter function to get only valid Items, e.g. processed by transformer, but not processed by loader

    returns

    list of Item that were not yet processed by application

  21. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped