001/* 002 * Copyright (c) 2013 Nu Echo Inc. All rights reserved. 003 */ 004 005package com.nuecho.rivr.core.dialogue; 006 007import org.slf4j.*; 008 009import com.nuecho.rivr.core.channel.*; 010 011/** 012 * Interface for dialogue context: an access to {@link DialogueChannel}, 013 * {@link Logger} and dialogue ID. The {@link DialogueContext} is passed to the 014 * {@link Dialogue} in the {@link Dialogue#run(FirstTurn, DialogueContext)} 015 * method. 016 * 017 * @param <O> type of {@link OutputTurn} 018 * @param <I> type of {@link InputTurn} 019 * @author Nu Echo Inc. 020 */ 021public interface DialogueContext<I extends InputTurn, O extends OutputTurn> { 022 023 DialogueChannel<I, O> getDialogueChannel(); 024 025 Logger getLogger(); 026 027 String getDialogueId(); 028}