public PostSubmitCallbackResponse handle(
        Callback<AsylumCase> callback
    ) {
        if (!canHandle(callback)) {
            throw new IllegalStateException("Cannot handle callback");
        }
        PostSubmitCallbackResponse postSubmitResponse =
            new PostSubmitCallbackResponse();
        AsylumCase asylumCase = callback.getCaseDetails().getCaseData();
        TimeExtensionDecision decision = getTimeExtensionDecision(asylumCase);
        String confirmationHeader = decision == GRANTED
            ? "# You have granted a time extension"
            : "# You have refused a time extension";
        postSubmitResponse.setConfirmationHeader(confirmationHeader);
        //TODO: Next step Direction name should be dynamic too.
        postSubmitResponse.setConfirmationBody(
            "#### What happens next\n\n"
            + "The appellant has been notified that their request has been "
            + decision.toString()
            + " and that they must submit their Appeal Reasons by the new due date.<br>"
            + "You will be notified when it is ready to review.\n"
        );
        return postSubmitResponse;
    }
public PostSubmitCallbackResponse handle(
        Callback<AsylumCase> callback
    ) {
        if (!canHandle(callback)) {
            throw new IllegalStateException("Cannot handle callback");
        }
        PostSubmitCallbackResponse postSubmitResponse =
            new PostSubmitCallbackResponse();
        AsylumCase asylumCase = callback.getCaseDetails().getCaseData();
        TimeExtensionDecision decision = getTimeExtensionDecision(asylumCase);
        String confirmationHeader = decision == GRANTED
            ? "# You have granted a time extension"
            : "# You have refused a time extension";
        postSubmitResponse.setConfirmationHeader(confirmationHeader);
       
        postSubmitResponse.setConfirmationBody(
            "#### What happens next\n\n"
            + "The appellant has been notified that their request has been "
            + decision.toString()
            + " and that they must submit their Appeal Reasons by the new due date.<br>"
            + "You will be notified when it is ready to review.\n"
        );
        return postSubmitResponse;
    }
public postsubmitcallbackresponse handle( callback<asylumcase> callback ) { if (!canhandle(callback)) { throw new illegalstateexception("cannot handle callback"); } postsubmitcallbackresponse postsubmitresponse = new postsubmitcallbackresponse(); asylumcase asylumcase = callback.getcasedetails().getcasedata(); timeextensiondecision decision = gettimeextensiondecision(asylumcase); string confirmationheader = decision == granted ? "# you have granted a time extension" : "# you have refused a time extension"; postsubmitresponse.setconfirmationheader(confirmationheader); postsubmitresponse.setconfirmationbody( "#### what happens next\n\n" + "the appellant has been notified that their request has been " + decision.tostring() + " and that they must submit their appeal reasons by the new due date.<br>" + "you will be notified when it is ready to review.\n" ); return postsubmitresponse; }