Clover Coverage Report - ali Coverage Report
Coverage timestamp: su marras 1 2009 19:10:37 EET
../../../../img/srcFileCovDistChart3.png 54% of files have more coverage
24   85   14   4,8
10   43   0,58   5
5     2,8  
1    
This report was generated with an evaluation server license. Purchase Clover or configure your license.
 
  Readkey       Line # 16 24 14 23,1% 0.23076923
 
  (4)
 
1    package fi.jyu.mit.ohj2;
2   
3    import java.io.*;
4   
5    /**
6    * Readkey.java
7    *
8    * Luokka yhden merkin lukemiseen,
9    * tarvitsee polkuun joko tiedoston
10    * libreadkey.so tai readkey.dll,
11    * muutoin vaatii enterin painalluksen
12    *
13    * @author Markku Vire, Jukka Mäntylä
14    * @version 0.96 12.2.2003
15    */
 
16    class Readkey
17    {
18    private static native char getCharNative();
19    private static boolean islib = false;
20    private static BufferedReader linereader;
21   
 
22  1 toggle static {
23  1 try {
24  1 System.loadLibrary("readkey"); // NOPMD
25  0 islib = true;
26    }
27    // Jos ei pystytä lataamaan kirjastoa, niin
28    // käytetään default-versiota merkin lukemisessa
29  1 catch (UnsatisfiedLinkError e) { e.getMessage(); }
30  0 catch (SecurityException e) { e.getMessage(); }
31   
32  1 init();
33   
34    }
35   
36   
37    /**
38    * Alustetaan lukijaluokka
39    */
 
40  11 toggle public static void init() {
41  11 if (!islib) linereader = new BufferedReader(new InputStreamReader(System.in));
42    }
43   
44    /**
45    *
46    * Lukee yhden merkin näppäimistöltä
47    * @return Palauttaa luetun merkin
48    */
 
49  0 toggle public static char getChar() {
50  0 if (islib) return getCharNative();
51    // default-versio:
52  0 String s = "";
53  0 try {
54  0 s = linereader.readLine();
55    } catch (IOException ex) { // NOPMD
56    }
57  0 if ( ( s == null ) || ( s.equals("") ) ) return '\n';
58  0 return s.charAt(0);
59    }
60   
61    /**
62    * Palauttaa tiedon siitä onko käyttöjärjestelmäkohtainen
63    * readkey-kirjasto käytössä
64    * @return Palauttaa tiedon onko readkey-kirjasto käytössä
65    */
 
66  0 toggle public static boolean isLibLoaded() {
67  0 return islib;
68    }
69   
70    /**
71    * Testataan Readkey-kirjastoa
72    * @param args ei käytössä
73    */
 
74  0 toggle public static void main(String[] args)
75    {
76  0 if (isLibLoaded())
77  0 System.out.print("readkey-kirjasto ladattu.\nAnna merkki:");
78    else
79  0 System.out.print("readkey-kirjastoa ei löytynyt.\nAnna kirjain ja paina enter:");
80  0 char c = Readkey.getChar();
81  0 if (isLibLoaded()) System.out.println(c);
82  0 System.out.println("Annoit merkin: " + c);
83    }
84   
85    }