Interface Digester<J>

  • Type Parameters:
    J - the generic type
    All Known Subinterfaces:
    DigesterComponent<J>


    public interface Digester<J>
    A Digester provides the functionality to consume a job (which is pushed from the outside) for further processing. Job instances may reflect (parts of) a protocol or signals from another system. The Digester is similar to an observer (listener) with the semantic difference of usually being bound to exactly one job providing system (whereas an observer may be one of many observers observing the same observable).
    • Method Detail

      • digest

        void digest​(J aJob)
             throws DigestException
        The digest(Object) method is invoked in order to trigger processing of the provided job, e.g. start execution depending on the job instance being provided from the outside.
        Parameters:
        aJob - The job to be digested.
        Throws:
        DigestException - thrown in case digesting (processing) a job by a digest(Object) caused problems;he cause is usually wrapped by this Exception.
      • digestUnchecked

        default void digestUnchecked​(J aJob)
        Digests the job by calling digest(Object) without you to require catching a DigestException.
        Parameters:
        aJob - The job to be digested.
        Throws:
        org.refcodes.exception.HiddenException - encapsulates the cause and is thrown upon encountering a DigestException exception