java-api/src/main/java/blockchain/utility/Util.java
GME 2e5d8d316a EnrollAdmin Test
succeed to enroll existing default admin from blockchain.
2018-10-21 19:09:29 +02:00

88 lines
2.9 KiB
Java

package blockchain.utility;
import blockchain.user.UserContext;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Logger;
import java.io.*;
public class Util {
private static Logger logger = Logger.getLogger(Util.class);
public static void writeUserContext(UserContext userContext) {
BasicConfigurator.configure();
ObjectOutputStream out = null;
FileOutputStream fileOutputStream = null;
try {
logger.info("Write user "+userContext.getName()+" of "+userContext.getAffiliation());
String directoryPath = "msp/" + userContext.getAffiliation();
String filePath = directoryPath + "/" + userContext.getName() + ".context";
File directory = new File(directoryPath);
if (!directory.exists()){
logger.info("Create directory at path "+directoryPath);
directory.mkdirs();
}
File file = new File(filePath);
fileOutputStream = new FileOutputStream(file);
out = new ObjectOutputStream(fileOutputStream);
logger.info("Try write object for user "+userContext.getName());
out.writeObject(userContext);
} catch (IOException e) {
logger.error("1st IOException");
e.printStackTrace();
} finally {
try {
if (out != null){
logger.info("Close ObjectOutputStream");
out.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if (fileOutputStream != null) {
logger.info("Close fileOutputStream");
fileOutputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static UserContext readUserContext(String affiliation, String username) {
UserContext userContext = null;
FileInputStream fileStream = null;
ObjectInputStream in = null;
try {
String filePath = "msp/" + affiliation + "/" + username + ".context";
File file = new File(filePath);
if (file.exists()) {
fileStream = new FileInputStream(filePath);
in = new ObjectInputStream(fileStream);
userContext = (UserContext) in.readObject();
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (in != null)
in.close();
} catch (IOException e) {
e.printStackTrace();
}
try {
if (fileStream != null)
fileStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return userContext;
}
}
}