All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.tsl2.nano.incubation.terminal.IItemHandler Maven / Gradle / Ivy

Go to download

TSL2 Framework Terminal (Console Application Framework named SIShell, providing Actions, Options, Commands, Inputs, lots of Selectors, PlatformManagement)

There is a newer version: 2.5.2
Show newest version
/*
 * File: $HeadURL$
 * Id  : $Id$
 * 
 * created by: Tom
 * created on: 13.12.2014
 * 
 * Copyright: (c) Thomas Schneider 2014, all rights reserved
 */
package de.tsl2.nano.incubation.terminal;

import java.io.InputStream;
import java.io.PrintStream;
import java.util.Properties;

/**
 * is able to do an interaction between user input and an print stream.
 * 
 * @author Tom
 * @version $Revision$
 */
public interface IItemHandler extends Runnable {
    Object getUserInterface();

    /** prints user info screen. should be able to do paging. */
    String printScreen(IItem item, PrintStream out);

    /**
     * waits for user input and calls {@link #printScreen(IItem, PrintStream)} to show informations. all inputs and
     * result will be stored inside the environment 'env'.
     */
    void serve(IItem item, InputStream in, PrintStream out, Properties env);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy