Class

net.scalytica.clammyscan

ClammyScanParser

Related Doc: package clammyscan

Permalink

class ClammyScanParser extends BaseScanParser

Default implementation of the ClammyScan parsers

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ClammyScanParser
  2. BaseScanParser
  3. ClammyScan
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ClammyScanParser(sys: ActorSystem, mat: Materializer, tempFileCreator: TemporaryFileCreator, bodyParsers: PlayBodyParsers, config: Configuration)

    Permalink
    Annotations
    @Inject()

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. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def broadcastGraph[A](c: ClamSink, s: SaveSink[A])(implicit exec: ExecutionContext): Sink[ByteString, Future[ScannedBody[A]]]

    Permalink

    Graph that broadcasts each chunk from the incoming stream to both sinks, before materializing the result from both into a ScannedBody.

    Graph that broadcasts each chunk from the incoming stream to both sinks, before materializing the result from both into a ScannedBody.

    Attributes
    protected
    Definition Classes
    BaseScanParser
  6. val cbpLogger: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    ClammyScan
  7. val clamConfig: ClamConfig

    Permalink
    Definition Classes
    BaseScanParserClammyScan
  8. def clammySink(filename: String): ClamSink

    Permalink

    Specifically sets up a ClamSink that is ready to receive the incoming stream.

    Specifically sets up a ClamSink that is ready to receive the incoming stream. Or one that is cancelled with success status.

    Controlled by the config property clammyscan.scanDisabled.

    Attributes
    protected
    Definition Classes
    BaseScanParser
  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def directScan[A](save: ToSaveSink[A], remove: (A) ⇒ Unit)(implicit exec: ExecutionContext): ChunkedClamParser[A]

    Permalink
    Definition Classes
    ClammyScanParserClammyScan
  11. def directScanOnly(implicit exec: ExecutionContext): ChunkedClamParser[Unit]

    Permalink
    Definition Classes
    ClammyScanParserClammyScan
  12. def directScanWithTmpFile(implicit exec: ExecutionContext): ChunkedClamParser[TemporaryFile]

    Permalink
    Definition Classes
    ClammyScanParserClammyScan
  13. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  15. def fileNameValid(filename: String): Boolean

    Permalink

    Will validate the filename based on the configured regular expression defined in application.conf.

    Will validate the filename based on the configured regular expression defined in application.conf.

    Attributes
    protected
    Definition Classes
    BaseScanParser
  16. def finalize(): Unit

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

    Permalink
    Definition Classes
    AnyRef → Any
  18. def handleError[A](res: A, scanRes: ScanResponse)(remove: ⇒ Unit): Either[Result, A]

    Permalink

    Function specifically for handling the ClamError cases in the validation step.

    Function specifically for handling the ClamError cases in the validation step. The logic here is highly dependent on how the parser is configured.

    Attributes
    protected
    Definition Classes
    BaseScanParser
  19. def hashCode(): Int

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

    Permalink
    Definition Classes
    Any
  21. implicit val materializer: Materializer

    Permalink
    Definition Classes
    BaseScanParserClammyScan
  22. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  25. def ping(implicit exec: ExecutionContext): Future[String]

    Permalink

    Execute a ping against clamd

    Execute a ping against clamd

    Definition Classes
    BaseScanParserClammyScan
  26. def scan[A](save: ToSaveSink[A], remove: (A) ⇒ Unit)(implicit ec: ExecutionContext): ClamParser[A]

    Permalink

    Scans a file for virus and persists it with the save function.

    Scans a file for virus and persists it with the save function. By default, any infected files will be immediately removed using the remove function.

    Definition Classes
    ClammyScanParserClammyScan
  27. def scanOnly(implicit ec: ExecutionContext): ClamParser[Unit]

    Permalink

    Scans the file for virus without persisting.

    Scans the file for virus without persisting.

    Definition Classes
    ClammyScanParserClammyScan
  28. def scanWithTmpFile(implicit exec: ExecutionContext): ClamParser[TemporaryFile]

    Permalink

    Scans file for virus and writes to a temporary file.

    Scans file for virus and writes to a temporary file.

    Definition Classes
    ClammyScanParserClammyScan
  29. def sinks[A](filename: String, contentType: Option[String])(save: ToSaveSink[A]): (ClamSink, SaveSink[A])

    Permalink

    Determines the two sinks that are to be used for processing the stream.

    Determines the two sinks that are to be used for processing the stream. The function will try to validate the filename against the clammyscan.validFilenameRegex property if configured. In the case of an invalid filename, two cancelled sinks are returned.

    Attributes
    protected
    Definition Classes
    BaseScanParser
  30. def stats(implicit exec: ExecutionContext): Future[String]

    Permalink

    Get the clamd stats

    Get the clamd stats

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

    Permalink
    Definition Classes
    AnyRef
  32. implicit val system: ActorSystem

    Permalink
    Definition Classes
    BaseScanParserClammyScan
  33. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  34. def version(implicit exec: ExecutionContext): Future[String]

    Permalink

    Get the clamd version string

    Get the clamd version string

    Definition Classes
    BaseScanParserClammyScan
  35. final def wait(): Unit

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

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

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

Inherited from BaseScanParser

Inherited from ClammyScan

Inherited from AnyRef

Inherited from Any

Ungrouped