Util.java
Go to the documentation of this file.
1 package p2putility;
2 
3 import java.io.DataInputStream;
4 import java.io.File;
5 import java.io.FileInputStream;
6 import java.io.FileWriter;
7 import java.io.IOException;
8 import java.security.MessageDigest;
9 
14 public class Util {
15 
19  public Util(){
20  super();
21  }
22 
31  public static boolean login(String u, String p) {
32 
33  File f = new File( p2putility.Config.r_currentpath() +
36  );
37 
38  if(f.exists()){
39  try{
40  DataInputStream d = new DataInputStream(new FileInputStream(f));
41 
43  String v = "\""+u+"\",\""+p+"\"";
44 
45  if(d.available()>0) d.readLine(); // Salto la prima riga (Struttura CSV)
46 
47  while(d.available()>0){
48  String c = d.readLine();
49  if(c.startsWith(v)){
50  d.close();
51  return true;
52  }
53  }
54 
55  }
56  catch(IOException e){return false;}
57  }
58  return false;
59  }
60 
67  private static String convertToHex(byte[] data)
68  {
69  StringBuffer buf = new StringBuffer();
70  for (int i = 0; i < data.length; i++) {
71  int halfbyte = (data[i] >>> 4) & 0x0F;
72  int two_halfs = 0;
73  do {
74  if ((0 <= halfbyte) && (halfbyte <= 9))
75  buf.append((char) ('0' + halfbyte));
76  else
77  buf.append((char) ('a' + (halfbyte - 10)));
78  halfbyte = data[i] & 0x0F;
79  } while(two_halfs++ < 1);
80  }
81  return buf.toString();
82  }
83 
89  public static String hash_sha(String text)
90  {
91  try
92  {
93  MessageDigest md;
94  md = MessageDigest.getInstance("SHA-1");
95  byte[] sha1hash = new byte[40];
96  md.update(text.getBytes("iso-8859-1"), 0, text.length());
97  sha1hash = md.digest();
98  return convertToHex(sha1hash);
99  }
100  catch(Exception he){
101  p2putility.Util.logGeneric("UTIL: hash_sha error: "+he);
102  return "";
103  }
104  }
105 
110  public static void logServer(String data){
111  if(p2putility.Config.r_serverlog().length()<2) // no debug file active
112  return;
113 
115  }
116 
121  public static void logClient(String data){
122  if(p2putility.Config.r_clientlog().length()<2) // no debug file active
123  return;
124 
126  }
127 
132  public static void logGeneric(String data){
133  if(p2putility.Config.r_genericlog().length()<2) // no debug file active
134  return;
135 
137  }
138 
144  private static void writeLogOn(String f, String data){
145  File ff = new File(f);
146  try{
147  if(ff.exists()){
148  ff.setReadable(true);
149  ff.setWritable(true);
150  }
151  }catch(Exception e){}
152  try{
153  FileWriter fr = new FileWriter(f,ff.exists());
154  fr.write("\n***** "+new java.util.Date()+" *****\n"+data+"\n");
155  fr.close();
156  }catch(Exception e){
157  javax.swing.JOptionPane.showMessageDialog(null,"Error in LOGGING... \n"+e,"Error",0);
158  }
159  }
160 }
static String r_configpath()
Permette la lettura della varibile relativa in modo sicuro.
Definition: Config.java:295
static void writeLogOn(String f, String data)
Scrive i dati in input sul file passato come parametro.
Definition: Util.java:144
Classe che permette la configurazione di tutto il programma in base alle specifiche esigenze dell&#39;ute...
Definition: Config.java:14
Classe che implementa metodi vari di utilita&#39; generale.
Definition: Util.java:14
static String convertToHex(byte[] data)
Converte un array di byte in una stringa esadecimale.
Definition: Util.java:67
static String r_userlistfile()
Permette la lettura della varibile relativa in modo sicuro.
Definition: Config.java:300
static String r_genericlog()
Permette la lettura della varibile relativa in modo sicuro.
Definition: Config.java:350
static void logGeneric(String data)
Scrive i dati in input sul file di log Generico (se questo esiste valido)
Definition: Util.java:132
Util()
Costruttore.
Definition: Util.java:19
static String r_currentpath()
Permette la lettura della varibile relativa in modo sicuro.
Definition: Config.java:280
static String r_clientlog()
Permette la lettura della varibile relativa in modo sicuro.
Definition: Config.java:340
static String hash_sha(String text)
Converte una stringa nel corrispondente HASH SHA-1 in forma esadecimale.
Definition: Util.java:89
static String r_serverlog()
Permette la lettura della varibile relativa in modo sicuro.
Definition: Config.java:345
static boolean login(String u, String p)
Verifica se un utente fa parte della lista di utenti registrati (Il programma P2PFileSystem non si oc...
Definition: Util.java:31
static void logServer(String data)
Scrive i dati in input sul file di log del Server (se questo esiste valido)
Definition: Util.java:110
static void logClient(String data)
Scrive i dati in input sul file di log del Client (se questo esiste valido)
Definition: Util.java:121