String tmpImportLocation = "/tmp/tmpFiles";
String lockExtention = ".lock";
boolean overwriteDumpFiles = true;
boolean keepDumpFiles = false;
try {
FileWriterCallback callback = new FileWriterCallback(importLocation, tmpImportLocation, lockExtention, overwriteDumpFiles, keepDumpFiles);
byte[] content = new byte[100000];
File checkFile = new File("/tmp/dummy");
checkFile.delete();
callback.update("dummy", new ByteArrayInputStream(content), null);
assertTrue("The file 'dummy' must exist", checkFile.exists());
}
catch (Exception ex) {
ex.printStackTrace();
assertTrue("An exception should not occur. " + ex.getMessage(), false);
}
try {
FileWriterCallback callback = new FileWriterCallback(importLocation, tmpImportLocation, lockExtention, overwriteDumpFiles, keepDumpFiles);
String filename = "second.dat";
File checkFile = new File("/tmp/" + filename);
checkFile.delete();
HashMap map = new HashMap();
map.put("_filename", new ClientProperty("_filename", null, null, filename));
String key = XBMessage.addToKeyAndCheck(XBConnectionMetaData.JMSX_GROUP_SEQ);
map.put(key, new ClientProperty(key, null, null, "" + 0L));
callback.update("dummy", new ByteArrayInputStream("first".getBytes()), map);
map.clear();
map.put("_filename", new ClientProperty("_filename", null, null, filename));
key = XBMessage.addToKeyAndCheck(XBConnectionMetaData.JMSX_GROUP_SEQ);
map.put(key, new ClientProperty(key, null, null, "" + 1L));
callback.update("dummy", new ByteArrayInputStream("second".getBytes()), map);
map.clear();
map.put("_filename", new ClientProperty("_filename", null, null, filename));
key = XBMessage.addToKeyAndCheck(XBConnectionMetaData.JMSX_GROUP_SEQ);
map.put(key, new ClientProperty(key, null, null, "" + 2L));
key = XBMessage.addToKeyAndCheck(XBConnectionMetaData.JMSX_GROUP_EOF);
map.put(key, new ClientProperty(key, null, null, "true"));
callback.update("dummy", new ByteArrayInputStream("third".getBytes()), map);
assertTrue("The file 'dummy' must exist", checkFile.exists());
FileInputStream fis = new FileInputStream(checkFile);
byte[] buf = new byte[100];
fis.read(buf);