prog.io
Class ConsoleInputManager

java.lang.Object
  |
  +--prog.io.ConsoleManager
        |
        +--prog.io.ConsoleInputManager
All Implemented Interfaces:
CanaleInput, StileConsole

public final class ConsoleInputManager
extends prog.io.ConsoleManager
implements CanaleInput, StileConsole

Le sue istanze realizzano canali di comunicazione con il dispositivo di input standard, cioè la tastiera, che utilizzano il dispositivo di output standard per l'interazione con l'utente.

Version:
1.0
Author:
Mauro Ferrari, Giovanni Pighizzini

Constructor Summary
ConsoleInputManager()
          Apre un canale di comunicazione in lettura dallo standard input.
ConsoleInputManager(java.lang.String nomeCanale)
          Apre un canale di comunicazione in lettura dallo standard input e associa al canale il nome specificato come argomento.
 
Method Summary
 void close()
          Chiude il canale di comunicazione.
 java.lang.String getNomeCanale()
          Restituisce il nome del canale che esegue il metodo.
protected  int getNumeroCanali()
          Restituisce il numero totale di canali aperti.
 boolean isClosed()
          Per sapere se il canale è chiuso o aperto.
protected  boolean isNuovaRiga()
          Restituisce true se il prossimo messaggio di stampa sul canale che esegue il metodo inizierà su una nuova riga.
 java.lang.String prompt()
          Restituisce la stringa del prompt.
 char readChar()
          Legge un carattere.
 char readChar(java.lang.String prompt)
          Legge un carattere dopo aver fornito come prompt la stringa specificata come argomento.
 double readDouble()
          Legge un reale in doppia precisione.
 double readDouble(java.lang.String prompt)
          Legge un reale in doppia precisione dopo aver fornito come prompt la stringa specificata come argomento.
 int readInt()
          Legge un intero.
 int readInt(java.lang.String prompt)
          Legge un intero dopo aver fornito come prompt la stringa specificata come argomento.
 java.lang.String readLine()
          Legge una linea di testo.
 java.lang.String readLine(java.lang.String prompt)
          Legge una linea di testo dopo aver fornito come prompt la stringa specificata come argomento.
 long readLong()
          Legge un intero di tipo long.
 long readLong(java.lang.String prompt)
          Legge un intero di tipo long dopo aver fornito come prompt la stringa specificata come argomento.
 boolean readSiNo()
          Legge un valore del tipo SI/NO.
 boolean readSiNo(java.lang.String prompt)
          Legge un valore del tipo SI/NO dopo aver fornito come prompt la stringa specificata come argomento.
 boolean readYesNo()
          Legge un valore del tipo YES/NO.
 boolean readYesNo(java.lang.String prompt)
          Legge un valore del tipo YES/NO dopo aver fornito come prompt la stringa specificata come argomento.
 void setPrompt(java.lang.String prompt)
          Per assegnare il prompt specificato dalla stringa prompt al canale corrente.
 void setVisibleLineNumber(boolean b)
          Stabilisce se il prompt visualizzato conterrà o meno il numero di linea.
 void setVisibleNomeCanale(boolean b)
          Stabilisce se il prompt visualizzato conterrà o meno il nome del canale.
 void setVisiblePrompt(boolean b)
          Stabilisce se il prompt verrà o meno visualizzato.
protected  boolean sonoUltimoUtente()
          Per sapere se l'ultimo a usare la console è stato this.
protected  void usoCanale()
          Definisce this come l'ultimo utente ad avere usato la console.
protected  void vaiACapo(boolean b)
          Dopo l'esecuzione di questo metodo il metodo isNuovaRiga restituisce true se e solo se b vale true.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConsoleInputManager

public ConsoleInputManager(java.lang.String nomeCanale)
Apre un canale di comunicazione in lettura dallo standard input e associa al canale il nome specificato come argomento.

Parameters:
nomeCanale - il nome del canale da aprire in lettura dallo standar input.

ConsoleInputManager

public ConsoleInputManager()
Apre un canale di comunicazione in lettura dallo standard input.

Method Detail

setPrompt

public void setPrompt(java.lang.String prompt)
Description copied from interface: StileConsole
Per assegnare il prompt specificato dalla stringa prompt al canale corrente. Di default il prompt non viene visualizzato, per farlo visualizzare bisogna utilizzare il metodo StileConsole.setVisiblePrompt(boolean).

Specified by:
setPrompt in interface StileConsole
Parameters:
prompt - il valore del prompt.

setVisibleLineNumber

public void setVisibleLineNumber(boolean b)
Description copied from interface: StileConsole
Stabilisce se il prompt visualizzato conterrà o meno il numero di linea. Di default il numero di linea non viene visualizzato.

Specified by:
setVisibleLineNumber in interface StileConsole
Parameters:
b - se vale true il numero di linea verrà visualizzato.

setVisibleNomeCanale

public void setVisibleNomeCanale(boolean b)
Stabilisce se il prompt visualizzato conterrà o meno il nome del canale. Il default è false.

Specified by:
setVisibleNomeCanale in interface StileConsole
Parameters:
b - se vale true il nome del canale verrà visualizzato.

setVisiblePrompt

public void setVisiblePrompt(boolean b)
Description copied from interface: StileConsole
Stabilisce se il prompt verrà o meno visualizzato. Di default il prompt non viene visualizzato.

Specified by:
setVisiblePrompt in interface StileConsole
Parameters:
b - se vale true il prompt verrà visualizzato.

prompt

public java.lang.String prompt()
Description copied from interface: StileConsole
Restituisce la stringa del prompt.

Specified by:
prompt in interface StileConsole
Returns:
il valore del prompt.

close

public void close()
Description copied from interface: CanaleInput
Chiude il canale di comunicazione.

Specified by:
close in interface CanaleInput
Overrides:
close in class prog.io.ConsoleManager

isClosed

public boolean isClosed()
Description copied from interface: CanaleInput
Per sapere se il canale è chiuso o aperto.

Specified by:
isClosed in interface CanaleInput
Returns:
restituisce true se e solo se il canale è chiuso.

readLine

public java.lang.String readLine()
Description copied from interface: CanaleInput
Legge una linea di testo.

Specified by:
readLine in interface CanaleInput
Returns:
la stringa letta.

readLine

public java.lang.String readLine(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge una linea di testo dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readLine in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
la stringa letta.

readInt

public int readInt()
Description copied from interface: CanaleInput
Legge un intero.

Specified by:
readInt in interface CanaleInput
Returns:
il valore di tipo int letto.

readInt

public int readInt(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge un intero dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readInt in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
il valore di tipo int letto.

readLong

public long readLong()
Description copied from interface: CanaleInput
Legge un intero di tipo long.

Specified by:
readLong in interface CanaleInput
Returns:
il valore di tipo long letto.

readLong

public long readLong(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge un intero di tipo long dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readLong in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
il valore di tipo long letto.

readChar

public char readChar()
Description copied from interface: CanaleInput
Legge un carattere.

Specified by:
readChar in interface CanaleInput
Returns:
il carattere letto.

readChar

public char readChar(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge un carattere dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readChar in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
il carattere letto.

readDouble

public double readDouble()
Description copied from interface: CanaleInput
Legge un reale in doppia precisione.

Specified by:
readDouble in interface CanaleInput
Returns:
il valore di tipo double letto.

readDouble

public double readDouble(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge un reale in doppia precisione dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readDouble in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
il valore di tipo double letto.

readYesNo

public boolean readYesNo()
Description copied from interface: CanaleInput
Legge un valore del tipo YES/NO.

Specified by:
readYesNo in interface CanaleInput
Returns:
true se il valore letto è "yes" oppure "y" e false se il valore letto è "no" oppure "n".

readYesNo

public boolean readYesNo(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge un valore del tipo YES/NO dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readYesNo in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
true se il valore letto è "yes" oppure "y" e false se il valore letto è "no" oppure "n".

readSiNo

public boolean readSiNo()
Description copied from interface: CanaleInput
Legge un valore del tipo SI/NO.

Specified by:
readSiNo in interface CanaleInput
Returns:
true se il valore letto è "si" oppure "s" e false se il valore letto è "no" oppure "n".

readSiNo

public boolean readSiNo(java.lang.String prompt)
Description copied from interface: CanaleInput
Legge un valore del tipo SI/NO dopo aver fornito come prompt la stringa specificata come argomento.

Specified by:
readSiNo in interface CanaleInput
Parameters:
prompt - il prompt.
Returns:
true se il valore letto è "si" oppure "s" e false se il valore letto è "no" oppure "n".

getNomeCanale

public java.lang.String getNomeCanale()
Restituisce il nome del canale che esegue il metodo.

Returns:
il nome del canale.

isNuovaRiga

protected boolean isNuovaRiga()
Restituisce true se il prossimo messaggio di stampa sul canale che esegue il metodo inizierà su una nuova riga.

Returns:
true se e solo se il prossimo messaggio di stampa inizierà su una nuova riga.

vaiACapo

protected void vaiACapo(boolean b)
Dopo l'esecuzione di questo metodo il metodo isNuovaRiga restituisce true se e solo se b vale true.


getNumeroCanali

protected int getNumeroCanali()
Restituisce il numero totale di canali aperti.

Returns:
il numero dei canali attualmente aperti.

usoCanale

protected void usoCanale()
Definisce this come l'ultimo utente ad avere usato la console.


sonoUltimoUtente

protected boolean sonoUltimoUtente()
Per sapere se l'ultimo a usare la console è stato this.

Returns:
true se e solo se this è stato l'ultimo utente ad utilizzare la console.