43 lines
1.2 KiB
Java
43 lines
1.2 KiB
Java
package fr.doap.jdb.utils;
|
|
|
|
import fr.doap.slog.*;
|
|
|
|
import java.io.*;
|
|
import java.util.*;
|
|
|
|
public class Utils {
|
|
|
|
static public <K,V> Map<K,V> HashMapOf(K aK, V aV, Object ... aObjects) {
|
|
Map<K,V> lMap = new HashMap<>();
|
|
lMap.put(aK, aV);
|
|
for (int i=0; i<aObjects.length/2; i++) lMap.put((K)aObjects[2*i], (V)aObjects[2*i+1]);
|
|
return lMap;
|
|
}
|
|
|
|
static public String getShortClassname(Class<?> aClass) {
|
|
return aClass.getCanonicalName();
|
|
/*
|
|
String[] lPackages = aClass.getPackageName().split("[.]");
|
|
return String.join("", Arrays.asList(lPackages).stream().map(aP -> aP.substring(0,1)).toList())+"."+aClass.getSimpleName();
|
|
*/
|
|
}
|
|
|
|
static public byte[] toByteArray(final Object obj) {
|
|
ByteArrayOutputStream lBAOS = new ByteArrayOutputStream();
|
|
try (ObjectOutputStream lOOS = new ObjectOutputStream(lBAOS)) {
|
|
lOOS.writeObject(obj);
|
|
lOOS.flush();
|
|
return lBAOS.toByteArray();
|
|
} catch (Exception ex) { L.w(ex); }
|
|
return null;
|
|
}
|
|
|
|
static public Object fromByteArray(byte[] bytes) {
|
|
ByteArrayInputStream lBAIS = new ByteArrayInputStream(bytes);
|
|
try (ObjectInput lOI = new ObjectInputStream(lBAIS)) {
|
|
return lOI.readObject();
|
|
} catch (Exception ex) { L.w(ex); }
|
|
return null;
|
|
}
|
|
}
|